Why is this not working?
#1

pawn Код:
CMD:kick(playerid, params[])
{
    new id, reason;
    new string[128];
    if(!(BaseInfo[playerid][AdminLevel] > 1)) return SendClientMessage(playerid, COLOR_RED, "You are not an administrator with the required level");
    if(sscanf(params, "uz", id, reason)) return SendClientMessage(playerid, COLOR_RED, "Usage: /kick [PlayerID/PartOfName] [Reason]");
    if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "Player not Found");
    if(BaseInfo[id][AdminLevel] > 4) return SendClientMessage(playerid, COLOR_RED, "Cannot kick the Highest Level Admin");
    if(id == playerid) return SendClientMessage(playerid, COLOR_RED, "Cannot kick Yourself");
   
    format(string, sizeof string, "Administrator %s has kicked %s with reason: %s", GetPlayersName(playerid), GetPlayersName(id), reason);
    SendClientMessageToAll(COLOR_BLUE, string);
   
    Kick(id);
    return 1;
}
It lets the player kick me without a reason? Why?
Reply
#2

Edit : Nvm
Reply
#3

the "z" parameter in sscanf is an optional string, try "us" instead of "uz". further i suggest to create the reason as string[].
Reply


Forum Jump:


Users browsing this thread: