27.02.2013, 20:57
pawn Код:
CMD:setlevel(playerid, params[])
{
new string[128];
if (IsPlayerAdmin(playerid) || PlayerInfo[playerid][AdminLevel] == 5)
{
new tmp[20], tmp2[20], idx;
tmp = strtok(params, idx); tmp2 = strtok(params, idx);
if(!strlen(tmp) || strlen(tmp2)) return SendClientMessage(playerid,COLOR_RED,"Usage: /setlevel [playerid] [level]!");
new targetid = strval(tmp);
new level = strval(tmp2);
if (level > 5) return SendClientMessage(playerid,COLOR_RED,"Error:Max level is 5!");
if (level < 0) return SendClientMessage(playerid,COLOR_RED,"Error:Min level is 0!");
if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid,COLOR_RED,"Error:Player not connected!");
new name[MAX_PLAYER_NAME];
new PlayerName[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
GetPlayerName(targetid, PlayerName, sizeof(PlayerName));
format(string, sizeof(string), "%s Has Given You Admin Level %d .", name, level);
SendClientMessage(targetid, 0xD8D8D8FF, string);
format(string, sizeof(string), "You Gave Admin Level %d To %s .", level, PlayerName);
SendClientMessage(playerid, 0xD8D8D8FF, string);
PlayerInfo[targetid][AdminLevel] = level;
return 1;
}
return 1;
}
//from https://sampwiki.blast.hk/wiki/Strtok
strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}
new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}

