Command Restriction
#2

That's not the correct order, it should be:

PHP код:
CMD:kick(playerid,params[])
{
    new 
idaname[MAX_PLAYER_NAME], name[MAX_PLAYER_NAME], Reason[128], string[128];
    if(
pData[playerid][Admin] < 2) return SendClientMessage(playeridCOLOR_WHITE"[Error]: You are not authorized to use this command.");
//First sscanf
    
if(sscanf(params,"us[128]",idReason)) return SendClientMessage(playerid,-1,"[Admin]: /kick [ID | Name] [Reason]");
    if(
pData[playerid][Admin] < pData[id][Admin]) return SendClientMessage(playeridCOLOR_WHITE"[Error]: You are not authorized to use this command on a higher level administrator.");
    if(
id == playerid) return SendClientMessage(playeridCOLOR_WHITE,"[Error]: You can not perform this command on yourself.");
    else if(
id == INVALID_PLAYER_ID) return SendClientMessage(playerid,-1,"[Error]: This player is not connected.");
    {
            
GetPlayerName(playeridanamesizeof(aname));
            
GetPlayerName(idnamesizeof(name));
            
format(string,sizeof (string),"[Admin]: %s(%d) Has kicked player: %s(%d) Reason : %s"anameplayeridnameidReason);
            
SendClientMessageToAll(COLOR_WHITEstring);
            
Kick(id);
        }
    return 
1;

You are declaring a variable called "id" however you were always doing the check for the ID 0 as the variable "id" was not yet set during that check.
Reply


Messages In This Thread
Command Restriction - by yvoms - 26.07.2016, 00:13
Re: Command Restriction - by ThePhenix - 26.07.2016, 00:16

Forum Jump:


Users browsing this thread: 1 Guest(s)