GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: .:: Miguel .:: le 29 Juin 2011, 16:17:32

Titre: |TUTO| DCMD
Posté par: .:: Miguel .:: le 29 Juin 2011, 16:17:32
Salut je vous présente mon tuto DCMD.
Déjà les base

d Integer
i Integer
c Character
u ID
s String
h Hex number
x        Hex number
f Float Co-ordinate
z Raison

Nous allons créé la cmds "ban".

Nous allons définir dans  public OnPlayerCommandText(playerid, cmdtext[]) la cmds qui va suivre endesous  

dcmd(ban, 3, cmdtext)
Nous allons passé a la commande.

Toute en haut du scripte mettez sa

#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
dcmd_ban(playerid, params[])
{
new id, // l'id du joueur.
reason[64]; // La raison 64 carractére maximum.
        if (sscanf(params, "uz", id, reason)) SendClientMessage(playerid, 0xFF0000AA, "Usage: /ban[ID]  [Raison]");  // U = L'id du joueur   Z = La raison
else if (id == INVALID_PLAYER_ID) SendClientMessage(playerid, 0xFF0000AA, "Joueur non connecté."); // id == INVALID_PLAYER_ID   La on vérifie si le joueur et bien connecté si non on envoie un message.
else
        BanEx(id,raison); // Bon là on ban l'id,pour raison : ?
format(reason, sizeof (reason), "Vous avez été bannie : %s. %s", raison[0] ? (" Raison ") : ("par"), raison); // Là on définie par qui (ban) raison
SendClientMessage(id, 0xFF0000AA, raison);
SendClientMessage(playerid, 0x00FF00AA, "Joueur ban"); // On envoie un message que le joueur a été bannie
}
return 1;

Dcmd est sére a créé des commande beaucoup plus facils.
Titre: Re : |TUTO| DCMD
Posté par: Gilux le 29 Juin 2011, 16:21:20
"z    Raison"

What ?  ;D

Z c'est un paramètre optionnel (Pas de message de syntaxe s'il n'est pas entré) ;)

Sinon, bonne idée de tuto, mais essaye de décrire plus, tu ne dis même pas ce qu'est dcmd, le define qu'il faut mettre pour pouvoir faire ça, ce qu'est sscanf...
Et enfin, tu as fait deux petites fautes de frappe :

Ligne 3 : new id, ==> new id;
Ligne 5 : U = l'ip du joueur ==> id*

Bonne chance ;)
Titre: Re : |TUTO| DCMD
Posté par: .:: Miguel .:: le 29 Juin 2011, 16:27:27
Eu ouais mais pas expérimenté moi  :(  est pour la cmds je expliqué tous se que sa voulez dire.
Titre: Re : |TUTO| DCMD
Posté par: cristab le 29 Juin 2011, 16:29:15
je suis de meme avis que Gzsume

un tuto est surtout la pour expliquer donc detaille un peu tout sa et tu ne dit pas ou tu met cette ligne dcmd(ban, 3, cmdtext)


PS Gzsume puis je raccourcir ton pseudo par Gzm car j'ai du mal tout de meme
Titre: Re : |TUTO| DCMD
Posté par: Ssk le 29 Juin 2011, 17:40:06
Beaucoup de faute d'orthographe, et ça ce n'est pas sérieux pour un tutoriel.
Tu n'explique pas ce qu'est DCMD, à quoi ça sert, etc ...

Je ne le déplace pas dans la section tutoriel, sauf si toutes ces "erreurs" sont corrigées.
Titre: Re : |TUTO| DCMD
Posté par: .:: Miguel .:: le 29 Juin 2011, 17:51:25
Juste les erreur ? Ou sinan tu peux m'aidez a complété je te metterai dedan
Titre: Re : |TUTO| DCMD
Posté par: Barto le 30 Juin 2011, 00:43:10
Il y a déjà un tuto là dessus créé par notre ami FuSion !
Il est beaucoup plus complet et ne se contente pas de coller des bouts de code.

http://www.gtaonline.fr/forums/index.php/topic,9841.0.html (http://www.gtaonline.fr/forums/index.php/topic,9841.0.html)

Bonne soirée.