GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: lepompier le 18 Mai 2008, 20:31:35

Titre: server unknow commands
Posté par: lepompier le 18 Mai 2008, 20:31:35
bonsoir a tous !
je voudrai savoir comment changer le server unknow commands par un truck de se genre <la commande "nomdesacmd" n'existe pas , pour plus d'info tape /aide> encore une petite chose je voulez savoir si vous connaissez l'id du sons de la prison qui se ferme ou ouvre s'il vous plaiz merci d'avance
Titre: Re : server unknow commands
Posté par: Bayshore le 18 Mai 2008, 21:57:00
au lieu de return 0 tu met return SendClientMessage(playerid, color, "blablabla").

Sinon pour l'ID du son de la prison il est dans PEN1.

++
ZecKo
Titre: Re : server unknow commands
Posté par: lepompier le 18 Mai 2008, 21:58:43
je peux le trouver ou PEN1 car le forum SA MP est HS
Titre: Re : server unknow commands
Posté par: Bayshore le 18 Mai 2008, 22:02:50
http://forum.sa-mp.co.uk/index.php :)
Titre: Re : server unknow commands
Posté par: lepompier le 18 Mai 2008, 23:21:51
merci mince il est pas PEN1
Titre: Re : server unknow commands
Posté par: lepompier le 19 Mai 2008, 16:30:13
oups désoler double poste mais s'est pour que vous voier bon j'ai trouver le son de la prison pour ceux qui le veulent le voici


PlayJailSound(1165 , 1166, 2000,264.395200, 77.564040, 1001.039000);


merci a vous ! et a moi   :lmfao
Titre: Re : server unknow commands
Posté par: lepompier le 23 Juin 2008, 15:19:10
j'ai essayer de mettre plusieurs message comme sa


return SendClientMessage(playerid, COLOR_RED, "Commande non reconnue;");
SendClientMessage(playerid, COLOR_BLUE, "Aide;");

mais sa met des erreurs

Pouvait vous m'aider svp ? merci d'avance
Titre: Re : server unknow commands
Posté par: Bayshore le 23 Juin 2008, 17:35:29
Un return se met à la fin, donc tu ne peut pas mettre de SendClientMessage() après.

Si tu veut mettre plusieurs instructions, il faut que tu fasse comme ceci :

if(strcmp()) // première commande

else if(strcmp()) // deuxième, 3ème, etc. commandes

else
{
    //Tes messages à envoyés
}


++
Alexandre
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 23 Juin 2008, 20:54:49
    format(erreur, sizeof (erreur), "Commande invalide",cmdtext);
    return SendClientMessage(playerid,COLOR_RED, erreur);
}

ce code fonctionne très bien ^^ Oublis pas le

new erreur;

en haut de ton script, après tu le modifie comme tu veut ;)
Titre: Re : Re : server unknow commands
Posté par: Nikko™ le 23 Juin 2008, 21:02:07
ce code fonctionne très bien ^^ Oublis pas le
new erreur;

cest new erreur[256]; !!!!!! MDR a moi de te corrigé ^^

++
nikko
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 23 Juin 2008, 21:28:32
Chacun sont tour ^^
Titre: Re : server unknow commands
Posté par: lepompier le 23 Juin 2008, 23:12:57
oui mes enfaite je veux mettre plusieur message quand le mec se trompe


commande invalide;
Aide:
Tape /commandes pour te renseigné sur toute.....
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 24 Juin 2008, 00:33:45
    format(erreur, sizeof (erreur), "Commande invalide",cmdtext);
    format(erreur, sizeof (erreur), "aide :",cmdtext);
    format(erreur, sizeof (erreur), "Tape /commandes pour te renseigner sur toutes les commandes",cmdtext);
    return SendClientMessage(playerid,COLOR_RED, erreur);
}

Tu aurais pas plus réfléchir ??  :D
Titre: Re : server unknow commands
Posté par: lepompier le 24 Juin 2008, 10:05:46
a d'accord mdr merci a toi mAn   :D


J'ai refléchi xD nan je deconne  ;D

Aller ++

David
Titre: Re : server unknow commands
Posté par: Bayshore le 24 Juin 2008, 18:36:00
mAn, ton code fait en sorte que le string soit rempli même quand la commande est valide !

Pour remédier à ça il faut utiliser des else if.
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 24 Juin 2008, 19:55:45
Mais non !!

Quand tu as fini avec tes commandes de ton public OnPlayerCommandetext

tu met le code que j'ai mis ^^ ça fonctionne nickel chez moi je vois pas pourquoi il ne marcherais pas chez vous !! ^^

C'est ce qui remplace le return 1; a la fin de chaque public ;)

exemple :

public OnPlayerCommandText(playerid,cmdtext[])
{

// World Time =D
if (strcmp(cmdtext, "/matin", true)==0)
{
if (IsPlayerAdmin (playerid))
{
SendRconCommand ("weather 6");
SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 8 heure sur le serveur.");
SetWorldTime(8);
}
return 1;
}

if (strcmp (cmdtext, "/midi") == 0)
{
if (IsPlayerAdmin (playerid))
{
SendRconCommand ("weather 10");
SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 12 heure sur le serveur.");
SetWorldTime(12);
}
return 1;
}

if (strcmp (cmdtext, "/soir") == 0)
{
if (IsPlayerAdmin (playerid))
{
SendRconCommand ("weather 10");
SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 20 heure sur le serveur.");
SetWorldTime(20);
}
        }
    format(erreur, sizeof (erreur), "Commande invalide",cmdtext);
    format(erreur, sizeof (erreur), "aide :",cmdtext);
    format(erreur, sizeof (erreur), "Tape /commandes pour te renseigner sur toutes les commandes",cmdtext);
    return SendClientMessage(playerid,COLOR_RED, erreur);
}

et voila ^^ Si le joueur tape autre choses comme "/soire" au lieu de "/soir", bah les messages s'afficheront ;)
Titre: Re : server unknow commands
Posté par: Nikko™ le 24 Juin 2008, 20:58:55
Tu oublie la variable:

new erreur[256];
format(erreur, sizeof (erreur), "La commande \"%s\" n'existe pas. Tapez /aide ou /help",cmdtext);
return SendClientMessage(playerid,0xFFFF00AA, error);
}

++
nikko
Titre: Re : server unknow commands
Posté par: lepompier le 24 Juin 2008, 21:29:46
Oui mes moi enfaite le truck s'est que je voudrais que si le mec tape /dkffk ou /jdjfhfh ba sa mette le message
Titre: Re : server unknow commands
Posté par: Nikko™ le 24 Juin 2008, 21:34:55
BAh, avec ce que je t'ai donné, cest fait pour, si le mec tape autre qu'une commande répoertorié, ca lui envoi le message.
Test et tu verra.

++
nikko
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 24 Juin 2008, 22:26:11
J'ai pas oublié la variable xD



public OnPlayerCommandText(playerid,cmdtext[])
{

   // World Time =D
if (strcmp(cmdtext, "/matin", true)==0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 6");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 8 heure sur le serveur.");
   SetWorldTime(8);
   }
   return 1;
}

if (strcmp (cmdtext, "/midi") == 0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 10");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 12 heure sur le serveur.");
   SetWorldTime(12);
   }
   return 1;
}

if (strcmp (cmdtext, "/soir") == 0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 10");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 20 heure sur le serveur.");
   SetWorldTime(20);
   }
        }
    format(erreur, sizeof (erreur), "Commande invalide",cmdtext);
    format(erreur, sizeof (erreur), "aide :",cmdtext);
    format(erreur, sizeof (erreur), "Tape /commandes pour te renseigner sur toutes les commandes",cmdtext);
    return SendClientMessage(playerid,COLOR_RED, erreur);
}

Et oui, avec ce code, si le player tape une connerie, enfin, une commande qui n'existe pas sur ton GM, ce message va apparaitre ;)
Titre: Re : server unknow commands
Posté par: Bayshore le 24 Juin 2008, 22:31:37
Ouais, mais le string est rempli à chaque fois même quand la commande est valide... (http://image.jeuxvideo.com/smileys/45.gif)
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 24 Juin 2008, 22:33:58
Soit oubli d'une accolade, soit un return 1; soit mal placé ^^ Mais ça fonctionne :p
Titre: Re : server unknow commands
Posté par: Bayshore le 24 Juin 2008, 22:38:32
Mais oui ça fonctionne ! :D

Mais ça remplit le string même quand la commande est juste.
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 24 Juin 2008, 23:46:08
Et ben c'est un oubli d'accolade :


public OnPlayerCommandText(playerid,cmdtext[])
{

   // World Time =D
if (strcmp(cmdtext, "/matin", true)==0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 6");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 8 heure sur le serveur.");
   SetWorldTime(Cool;
   }
   return 1;
}

if (strcmp (cmdtext, "/midi") == 0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 10");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 12 heure sur le serveur.");
   SetWorldTime(12);
   }
   return 1;
}

if (strcmp (cmdtext, "/soir") == 0)
   {
   if (IsPlayerAdmin (playerid))
   {
   SendRconCommand ("weather 10");
   SendClientMessageToAll(COLOR_ORANGE,"Il est maintenant 20 heure sur le serveur.");
   SetWorldTime(20);
   }
        }
   }
    format(erreur, sizeof (erreur), "Commande invalide",cmdtext);
    format(erreur, sizeof (erreur), "aide :",cmdtext);
    format(erreur, sizeof (erreur), "Tape /commandes pour te renseigner sur toutes les commandes",cmdtext);
    return SendClientMessage(playerid,COLOR_RED, erreur);
}

Voila ^^
Titre: Re : server unknow commands
Posté par: Bayshore le 25 Juin 2008, 18:04:54
Je viens d'indenter proprement ton code, et enfait c'est encore pire, car tes instructions en cas de mauvaise commande se trouvent après ton public !

Donc ça ne résoud rien. :(
Titre: Re : server unknow commands
Posté par: Nikko™ le 25 Juin 2008, 18:44:59
Alex, esseye de mettre ca a la place du retur 0;

new erreur[256];
format(erreur, sizeof (erreur), "La commande \"%s\" n'existe pas. Tapez /aide ou /help",cmdtext);
return SendClientMessage(playerid,0xFFFF00AA, error);
}

++
nikko
Titre: Re : server unknow commands
Posté par: Bayshore le 25 Juin 2008, 18:54:48
Non mais c'est pareil. :D

Le string est rempli même quand la commande marche !
Titre: Re : server unknow commands
Posté par: lepompier le 26 Juin 2008, 13:49:09
Chez moi sa marche impeq merci de m'avoir aider les mecs !  :D
Titre: Re : server unknow commands
Posté par: Nikko™ le 26 Juin 2008, 16:29:26
Dr.

++
nikko
Titre: Re : server unknow commands
Posté par: [StAfF]MaN le 26 Juin 2008, 22:58:44
De rien ^^  :dling