16.12.2011, 19:20
Try this
Also, why all the return 1s? You only need to do it once, at the end, so that the script knows that it was a valid command.
pawn Код:
CMD:setadmin(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] >= 1)
{
new targetid, level;
new sendername[32], string[128];
if(sscanf(params, "ui", targetid, level))
{
SendClientMessage(playerid, 0xFFFFFFFF, "Usage: /setadmin <playerid> <level>");
return 1;
}
if(level > 5 || level < 0) { SendClientMessage(playerid, COLOR_GREY, "> Don't go below 0 or higher then 5!"); return 1; }
if(IsPlayerConnected(targetid))
{
new ranktext[32];
PlayerInfo[targetid][pAdmin] = level;
if(level == 1) { ranktext = "Trial Admin"; }
else if(level == 2) { ranktext = "Basic Admin"; }
else if(level == 3) { ranktext = "Lead Admin"; }
else if(level == 4) { ranktext = "Head Admin"; }
else if(level == 5) { ranktext = "Owner"; }
else { return 1; }
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string),"> Admin %s has promoted you to a %s", sendername, ranktext);
SendClientMessage(targetid, 0xFFFFFFFF, string);
}
}
else return SendClientMessage(playerid, 0xFFFFFFFF, "Only Admins can perform this action.");
return 1;
}