Back
#Pawn

Pawn moderne » Les différents processeurs de commandes

Post published 2 years ago - Suggest Changes

Après le tutoriel d'Inerska pour utiliser sscanf, il est dans mes principes de vous orienter vers votre processeur de commandes préféré. Mais... déjà : qu'est-ce qu'un processeur de commandes ?

Très bonne question. De base quand vous souhaitez savoir si un joueur effectue une commande via la touche T & commence son texte par un slash "/", vous devez utiliser la callback OnPlayerCommandText(playerid, cmdtext[]) seulement... cette méthode n'est pas la plus fluide qui existe, voici le temps éstimé d'une commande basique pour différents processeurs de commandes :

Comparaison des processeurs de commandes

Tableau de comparaison disponible sur le github de PawnCMD (https://github.com/katursis/Pawn.CMD)

On peut voir que la méthode de base, donc strcmp (via OnPlayerCommandText) est loin d'être la plus rapide, tandis que Pawn.CMD est de loin la meilleure.

Un petit exemple :

Hello world!

#define c_white	0xFFFFFFFF		
CMD:helloworld(playerid, params[])
{
	SendClientMessage(playerid, c_white, "Hello World !");
	return true;
}

"CMD:" est la syntaxe utilisée par bon nombre de Command Processor comme ZCMD, Pawn.CMD, etc etc...