• 05 Juin 2026, 23:48:41


Auteur Sujet: Comment creer une commande ??  (Lu 3634 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne aurelien

  • roi du drift ...
  • *
  • Criminel
  • roi du drift ...
  • Messages: 43
    • Voir le profil
    • rollerstyletricks.c.la
Comment creer une commande ??
« le: 01 Mars 2009, 13:57:50 »
Salut a tous je voudrais creer une commande pour mon server mes je ne ces pas comment il faut faire je voudrai creer une comande du genre /teleportation et sa m'afiche tout les teleportation disponible /drift /drift1 /drift2 /drift3 ... merci de votre aide a+++
Aurélien le roi du drift mouahahaha ...

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #1 le: 01 Mars 2009, 14:37:06 »
salut,

base toi sur des scripts déjà fais....

tu doit avoir un if(strcmp(cmdtext, "commande", true)  == 0)

puis pour donner la liste des téléportations, il te faut un ou des SendClientMessage

++Sim++





Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #2 le: 01 Mars 2009, 16:02:57 »
Salut,

Bon je vais te donner le "truc":

Tout d'abord tu initialise ta commande:

if(strcmp(cmdtext, "//macommande", true) == 0)
on ouvre la prmiere acolade pour faire soit un premier test soit lancer l'action sans test...:

{
Puis (vu qu'on veut ecrire un message JUSTE au joueur qui tape la commande), on utilise un SendClientMessage.
On peu mettre plusieurs SendClientMessage a la suite ...

SendClientMessage(playerid, COLOR_GREEN,"Bienvenue sur le serveur");
SendClientMessage(playerid, COLOR_GREEN,"Voici les commandes:");
SendClientMessage(playerid, COLOR_GREEN,".......");

Vu qu'on veut faire qu'écrire au joueur, alors on a terminer, et on peut terminer la commande. On "ferme" la commande..

return 1;
Et on ferme l'acolade du debut:

}

J'esper que t'a pris le temps de comprendre et de ne pas avoir copier betement...

++
nikko

Hors ligne v331

  • TRS™ let's race !!
  • *
  • Tueur en série
  • fondateur Team Racing Stunt ++stargate++
  • Messages: 103
    • Voir le profil
    • site de la team racing stunt
Re : Comment creer une commande ??
« Réponse #3 le: 02 Mars 2009, 10:42:47 »
sinon tu peut faire un menu avec toutes tes teleportations c'est plus classe  8)
va voir dans les tutos

Hors ligne angelrider

  • Scripteur
  • *
  • Bandit
  • Messages: 299
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #4 le: 02 Mars 2009, 18:59:14 »
Qu'il apprenne à faire une commande simple on verra ensuite pour les menus je pense ^^.
Nouveau Site de Mods San Andreas:
http://lcdacreation.fr

Hors ligne aurelien

  • roi du drift ...
  • *
  • Criminel
  • roi du drift ...
  • Messages: 43
    • Voir le profil
    • rollerstyletricks.c.la
Re : Comment creer une commande ??
« Réponse #5 le: 02 Mars 2009, 20:19:43 »
Merci a vous et merci Nikko d'etre venir voir merci de m'avoir expliquer ...  :cheers
Aurélien le roi du drift mouahahaha ...

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #6 le: 02 Mars 2009, 20:22:10 »
y'a pas de quoi  :cheers

++
nikko

Hors ligne aurelien

  • roi du drift ...
  • *
  • Criminel
  • roi du drift ...
  • Messages: 43
    • Voir le profil
    • rollerstyletricks.c.la
Re : Comment creer une commande ??
« Réponse #7 le: 02 Mars 2009, 21:12:25 »
          PROBLEME

je fais une teleportation une comande et sa me teleporte pas et sa me mais les codes de teleportation et apres sa me mais un truc en anglais je le dit en francais : server : cette commande n'existe pas ... command faire ...
Aurélien le roi du drift mouahahaha ...

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #8 le: 02 Mars 2009, 21:23:23 »
Deja pour ta commande pour annoncer if(strcmp(cmdtext, "/cmds", true) == 0), il faut la presenter comme ca:
if(strcmp(cmdtext, "/cmds", true) == 0)  // on initialise
{ // on ouvre
SendClientMessage(playerid, COLOR_GREEN,"Pour vour teleporter ....");  // on envoi les infos
SendClientMessage(playerid, COLOR_GREEN,"ETC ....");
SendClientMessage(playerid, COLOR_GREEN,".......");
return 1; // on termine
}  // on ferme

Ensuite pour tes telep:

if(strcmp(cmdtext, "/g1", true , 10) == 0)  >>> Enlève le  ",10" de chaque commande.

Puis tu peut perfectionner tes telep en fesant un test si il est dans un vehicule:

if(strcmp(cmdtext, "/g1", true) == 0)  // on initialise
{                                                 // on ouvre
if(!IsPlayerInAnyVehicle(playerid)) // test si le joueur N'EST PAS dans un vehicule (avec le !) si tu sais pas comment t'en servir, GO tuto de sim
{                                              // on ouvre car ya un nouveau test
SetPlayerPos(playerid,1313.2286,1266.9771,12); // on telep
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue ...."); // on annonce
}                                                            // on ferme
else                                     // on met le ELSE qui sert a dire sinon (ici on a "si le joueur n'est pas dans un vehicule, on telep seul SINON on telep le vehicule)
{                                                      // on ouvre car ya un "nouveau" test
SetVehiclePos(GetPlayerVehicleID(playerid),1313.2286,1266.9771,12); //on place le vehicule
SendClientMessage(playerid, 0xFF8000FF,"Bienvenue..."); // on annonce
}                                                        // on ferme le test
return 1;                                                       // on termine
}                                                       // on ferme la premiere acolade.


++
nikko

Hors ligne aurelien

  • roi du drift ...
  • *
  • Criminel
  • roi du drift ...
  • Messages: 43
    • Voir le profil
    • rollerstyletricks.c.la
Re : Comment creer une commande ??
« Réponse #9 le: 02 Mars 2009, 21:42:12 »
re voila sa me mes warning quand je met sa

if(strcmp(cmdtext, "/g1", true) == 0)

C:\DOCUME~1\AURLIE~1\Bureau\SERVER~1\GAMEMO~1\drift.pwn(195) : warning 225: unreachable code

????
Aurélien le roi du drift mouahahaha ...

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #10 le: 02 Mars 2009, 22:19:38 »
montre le code en entier

++
nikko

Hors ligne aurelien

  • roi du drift ...
  • *
  • Criminel
  • roi du drift ...
  • Messages: 43
    • Voir le profil
    • rollerstyletricks.c.la
Re : Comment creer une commande ??
« Réponse #11 le: 03 Mars 2009, 07:22:55 »
re salut ... voila

sa donne sa quand je fe F5 :

C:\DOCUME~1\AURLIE~1\Bureau\SERVER~1\GAMEMO~1\drift.pwn(195) : warning 225: unreachable code

le code :

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/cmds", true) == 0)
   SendClientMessage(playerid, COLOR_ORANGE," /g1 pour aller à parking 1 ");
   {
   SendClientMessage(playerid, COLOR_ORANGE," /g2 pour aller à parking 2 ");
    SendClientMessage(playerid, COLOR_ORANGE," /c1 pour aller à circuit 1 de drift ");
    SendClientMessage(playerid, COLOR_ORANGE," /c2 pour aller à circuit 2 de drift ");
    return 1;
    }
   if(strcmp(cmdtext, "/g1", true) == 0)
   {
   if(!IsPlayerInAnyVehicle(playerid))
   {
   SetPlayerPos(playerid,2272.0701,1390.8223,42.8203);
   GameTextForPlayer(playerid,"Bienvenue a G1",2000,5);
    }
    else
    {
   SetVehiclePos(GetPlayerVehicleID(playerid),2272.0701,1390.8223,42.8203);
   GameTextForPlayer(playerid,"Bienvenue a G1",2000,5);
   }
   return 1;
   }
   if (strcmp("/g2", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),2260.7776,1941.5385,31.7797);
   GameTextForPlayer(playerid,"Bienvenue a G2",2000,5);
   }
   if (strcmp("/c1", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),-2532.1960,-612.2008,132.5625);
   GameTextForPlayer(playerid,"Bienvenue a C1",2000,5);
   }
   if (strcmp("/c2", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),-312.0705,1568.2906,75.3594);
   GameTextForPlayer(playerid,"Bienvenue a C2",2000,5);
   return 1;
    }
    return 0;
}
Aurélien le roi du drift mouahahaha ...

Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #12 le: 03 Mars 2009, 09:44:38 »
Regarde, tu un probleme d'acolade dans ton /cmds

public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp(cmdtext, "/cmds", true) == 0)
   {
   SendClientMessage(playerid, COLOR_ORANGE," /g1 pour aller à parking 1 ");
   SendClientMessage(playerid, COLOR_ORANGE," /g2 pour aller à parking 2 ");
    SendClientMessage(playerid, COLOR_ORANGE," /c1 pour aller à circuit 1 de drift ");
    SendClientMessage(playerid, COLOR_ORANGE," /c2 pour aller à circuit 2 de drift ");
    return 1;
    }
   if(strcmp(cmdtext, "/g1", true) == 0)
   {
   if(!IsPlayerInAnyVehicle(playerid))
   {
   SetPlayerPos(playerid,2272.0701,1390.8223,42.8203);
   GameTextForPlayer(playerid,"Bienvenue a G1",2000,5);
    }
    else
    {
   SetVehiclePos(GetPlayerVehicleID(playerid),2272.0701,1390.8223,42.8203);
   GameTextForPlayer(playerid,"Bienvenue a G1",2000,5);
   }
   return 1;
   }
   if (strcmp("/g2", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),2260.7776,1941.5385,31.7797);
   GameTextForPlayer(playerid,"Bienvenue a G2",2000,5);
   }
   if (strcmp("/c1", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),-2532.1960,-612.2008,132.5625);
   GameTextForPlayer(playerid,"Bienvenue a C1",2000,5);
   }
   if (strcmp("/c2", cmdtext, true, 10) == 0)
   {
   SetVehiclePos(GetPlayerVehicleID(playerid),-312.0705,1568.2906,75.3594);
   GameTextForPlayer(playerid,"Bienvenue a C2",2000,5);
   return 1;
    }
    return 0;
}

++
nikko

Hors ligne Anthony Wolf

  • *
  • Criminel
  • Messages: 48
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #13 le: 03 Mars 2009, 12:02:59 »
Si je ne me trompe, un des problême est que tu as mis

(playerid) comme sa alors que c'est
(playerid, ..... comme sa


Hors ligne Nikko™

  • *
  • Mafioso
  • Messages: 2393
    • Voir le profil
Re : Comment creer une commande ??
« Réponse #14 le: 03 Mars 2009, 12:14:49 »
Ca depend, regarde

le "(playerid)" c'est pour un "if(!IsPlayerInAnyVehicle(playerid))"

le "(playerid," c'est pour un "SendClientMessage(playerid, COLOR_ORANGE," /g1 pour aller à parking 1 ");"

Il ont la meme fonction, mais il ne s'utilisent pas de la meme facon...

++
nikko