strcmp es una funciуn para comparar textos, se usa mucho en OnPlayerCommandText para comparar el comando ingresado. Por ejemplo:
pawn Код:
if(strcmp(cmdtext, "/kill", true) == 0)
{
SetPlayerHealth(playerid, 0);
return 1;
}
Traducido serнa: si el comando ingresado es /kill se le pone la vida en 0, en otras palabras lo matas.
strtok es una funciуn para separar una variables string en partes de acuerdo a la posiciуn del caracter " " (espacio). Se utiliza mayormente en comandos con parбmetros.
pawn Код:
if(strcmp(cmd, "/kick", true) == 0)
{
new tmp[128];
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /kick [playerid]");
Kick(strval(tmp));
return 1;
}
En este caso, strtok fue utilizado para encontrar la ID luego del comando, en este caso /kick.
dcmd es un procesador viejo creado por DracoBlue, no se utiliza demasiado ya que en tйrminos de velocidad de ejecuciуn de cуdigo es bastante lento, pero es bastante prбctico y portable, no necesita include solo esto arriba de todo:
pawn Код:
#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
zcmd es el procesador de comandos que estб mбs estandarizado, a diferencia de dcmd necesita un include para funcionar, pero en tйrminos de velocidad es muy rбpido y fбcil de utilizar.
Post original de zcmd:
https://sampforum.blast.hk/showthread.php?tid=91354