Bonjour à tous,
Voila mon début de code :
public OnPlayerCommandText(playerid, cmdtext[])
{
if(IsPlayerNPC(playerid)){return 1;}
dcmd(specplayer, 10, cmdtext);
dcmd(specoff, 7, cmdtext);
new string[256];
new playermoney;
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new playername[MAX_PLAYER_NAME];
new cmd[256];
new tmp[256];
new giveplayerid, moneys, idx;
new idcar = GetPlayerVehicleID(playerid);
new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
cmd = strtok(cmdtext, idx);
if(strcmp( cmd, "/localisation", true ) == 0)
{
if(!(PlayerInfo[playerid][pAdmin] >= 9999))
{
return 0;
}
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0)
{
return SendClientMessage(playerid,COLOR_GREEN,"/localisation <id>");
}
new id = strval(tmp);
if(!IsPlayerConnected(id))
{
return SendClientMessage(playerid,COLOR_GREEN,"Pas connecter");
}
SetPlayerMarkerForPlayer(playerid, id,COLOR_BLUE);
SendClientMessage(playerid,COLOR_GREEN,"Localisé, Monsieur L'Admin");
return 1;
}
if(strcmp( cmd, "/test", true ) == 0)
{
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0)
{
return SendClientMessage(playerid,COLOR_GREEN,"/fight <id> 4,5,6,7,15,26");
}
new style = strval(tmp);
SetPlayerSpecialAction(playerid,style);
format(tmp, 52, "action mis à %d", style);
SendClientMessage(playerid,COLOR_GREEN,tmp);
return 1;
}
if(strcmp( cmd, "/fight", true ) == 0)
{
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0)
{
return SendClientMessage(playerid,COLOR_GREEN,"/fight <id> 4,5,6,7,15,26");
}
new style = strval(tmp);
if(!(style >= 4 && style <= 7 || style == 15 || style == 26))
{
return SendClientMessage(playerid,COLOR_GREEN,"/fight <id> 4,5,6,7,15,26");
}
SetPlayerFightingStyle(playerid, style);
format(tmp, 52, "Style de combat mis a %d", style);
SendClientMessage(playerid,COLOR_GREEN,tmp);
return 1;
}
Mon problème est le suivant, lorsque je tape /fight, ça me sort la localisation, quoi que je tape, même : /kgopzekop
Bref, j'ai déjà été regarder un topic, ça ne marche pas.
j'ai également insérer ce code plus haut :
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index <length> ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}
Merci à vous de votre précieuse aide :).