Hi everyone, I was just wondering how I can restrict this command here so that a Lower Admin level wont be able to kick higher level admins:
Код:
CMD:kick(playerid, params[])
{
new playerb, string[128];
if(!IsPlayerLoggedIn(playerid)) return SendClientMessage(playerid, COLOR_GREY, "You need to login first before using any command.");
if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_GREY, "You are not authorized to use this command.");
if(!aDuty[playerid]) return SendClientMessage(playerid, COLOR_GREY, "You are not on admin duty.");
if(sscanf(params, "us[128]", playerb, params)) return SendClientMessage(playerid, COLOR_WHITE, "USAGE: /kick [playerid] [reason]");
if(!IsPlayerConnected(playerb)) return SendClientMessage(playerid, COLOR_GREY, "Invalid player id.");
if(IsPlayerNPC(playerb)) return SendClientMessage(playerid, COLOR_GREY, "You can't kick NPCs out of the server.");
if(PlayerInfo[playerid][pAdmin] < PlayerInfo[playerb][pAdmin]) return SendClientMessage(playerid, COLOR_GREY, "Player has a higher admin level than you."); format(string, sizeof(string), "AdmCmd: %s has been kicked by %s, reason: %s", RPN(playerb), RPN(playerid), params);
format(string, sizeof(string), "AdmCmd: %s has been kicked by %s, reason: %s", RPN(playerb), RPN(playerid), params);
SendClientMessageToAll(COLOR_LIGHTRED, string);
format(string, sizeof(string), "AdmCmd: %s has been kicked by %s (%s), reason: %s", RPN(playerb), RPN(playerid), RPIP(playerid), params);
Log("logs/kick.log", string);
Kick(playerb);
return 1;
}
Код:
CMD:kick(playerid,params[])
{
new id,reason[50];
if(sscanf(params,"us[50]",id,reason)) return SendClientMessage(playerid,-1,"Usage : /kick [playerid/name] [reason]");
else if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-1,"Player is not connected.");
else
{
if(PlayerInfo[playerid][pAdmin]>0 || IsPlayerAdmin(playerid)==1)
{
new str[100];
format(str,sizeof(str),"%s has kicked %s for %s.",PlayerInfo[playerid][pName],PlayerInfo[id][pName],reason);
SendClientMessageToAll(-1,str);
kick(id);
}
}
}