20.06.2010, 15:11
pawn Код:
dcmd_setwanted(playerid, params[])
{
new wanted, id, pname[MAX_PLAYER_NAME], rname[MAX_PLAYER_NAME];
GetPlayerName(playerid, pname, sizeof(pname));
if(!IsPlayerAdmin(playerid)) return 0;
if(sscanf(params, "ud", id, wanted)) return SendClientMessage(playerid, white, "Usage: /setwanted <Name/id> <Wanted Level>");
if(wanted == GetPlayerWantedLevel(id)) return SendClientMessage(playerid, red, "Error: Player already has that Wanted Level.");
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, red, "Error: Player not connected.");
if(wanted < 0 || wanted > 6) return SendClientMessage(playerid, red, "Error: Invalid wanted level. (0-6)");
GetPlayerName(id, rname, sizeof(rname));
SetPlayerWantedLevel(id, wanted);
format(string,sizeof(string),"Administrator \"%s\" Has set your wanted level to %d.", pname, wanted);
SendClientMessage(id, white, string);
format(string,sizeof(string),"You have set %s's wanted level to %d.", rname, wanted);
SendClientMessage(playerid, white, string);
return 1;
}
No nooby strtok, uses sscanf, and no oversized arrays.