24.08.2009, 10:04
Hello, I can do a standered /kick [id] command but i cant do like a reason one and i was wondering if you could help me.
Cheers
Cheers
|
Originally Posted by KyleSmith
Anyonee?
|
if(strcmp(cmd,"/kick",true) == 0)
{
new tmp[256];
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,WHITE,"USAGE: /kick [ID]");
return 1;
}
new reciever = strval(tmp);
if(UserData[playerid][AdminLevel] < 1) return SendClientMessage(playerid,RED," You aren't an admin level 1!");
if(reciever == playerid) return SendClientMessage(playerid,RED," Don't try to ban yourself!");
if(UserData[reciever][AdminLevel] > 1) return SendClientMessage(playerid,RED," You can't kick another admin!");
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
new string[256],bname[MAX_PLAYER_NAME],aname[MAX_PLAYER_NAME];
GetPlayerName(reciever,bname,sizeof(bname));
GetPlayerName(playerid,aname,sizeof(aname));
format(string,sizeof(string)," Admin %s kicked %s - Reason: %s",aname,bname,result);
SendClientMessageToAll(RED,string);
Kick(reciever);
return 1;
}