23.07.2015, 16:47
I hate lazy people, do some effort !
pawn Код:
forward KickPlayer(playerid);
public KickPlayer(playerid) return Kick(playerid);
stock VBanID(playerid,giveid,reason[])
{
format(NICKBAN,20,VBPlayer(giveid));
if(playerid > -1)
{
GetPlayerIp(giveid, VIP, sizeof(VIP));
format(Vnewban,32,BanDir,VIP);
dini_Create(Vnewban);
VBanSaveInfo(playerid,Vnewban,reason);
format(Vnewban,32,BanDir,VBPlayer(giveid));
dini_Create(Vnewban);
VBanSaveInfo(playerid,Vnewban,reason);
}
else
{
format(Vnewban,32,BanDir,VBPlayer(giveid));
dini_Create(Vnewban);
VBanSaveInfo(-1,Vnewban,reason);
}
if(IsPlayerConnected(giveid)) VBanLoadInfo(giveid,Vnewban);
SetTimerEx("KickPlayer",1000,false,"d", playerid);
return 1;
}
CMD:kick(playerid,params[]) {
if(PlayerInfo[playerid][LoggedIn] == 1) {
if(PlayerInfo[playerid][Level] >= 1 || PlayerInfo[playerid][Helper] == 1) {
new tmp[256], tmp2[256], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index);
if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /kick [playerid] [reason]");
new player1, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
player1 = strval(tmp);
if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && player1 != playerid && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
GetPlayerName(player1, playername, sizeof(playername)); GetPlayerName(playerid, adminname, sizeof(adminname));
CMDMessageToAdmins(playerid,"KICK");
if(PlayerInfo[playerid][LoggedIn] == 1)
{
if(PlayerInfo[playerid][Level] >= 1)
{
if(isnull(tmp2)) {
format(string,sizeof(string),"{3BB023}» Admin action « {ABFF85}Administrator%s has Kicked %s (no reason given) ",adminname,playername,params[2]); SendClientMessageToAll(red,string);
//format(string,sizeof(string),"[ No Reason Given ]",params[2]); SendClientMessageToAll(red,string);
SaveToFile("KickLog",string); print(string); return Kick(player1);
} else {
format(string,sizeof(string),"{3BB023}» Admin action « {ABFF85}Administrator%s has Kicked %s ( Reason: %s )",adminname,playername,params[2],params[2]); SendClientMessageToAll(red,string);
//format(string,sizeof(string),"[ Reason: %s ]",params[2]); SendClientMessageToAll(red,string);
SaveToFile("KickLog",string); print(string); return Kick(player1); }
}
}
if(PlayerInfo[playerid][Helper] == 1)
{
if(isnull(tmp2)) {
format(string,sizeof(string),"%s has been kicked by Help operator %s [no reason given] ",playername,adminname); SendClientMessageToAll(red,string);
SaveToFile("KickLog",string);
print(string);
SetTimerEx("KickPlayer",1000,false,"d", playerid);
return 1;
} else {
format(string,sizeof(string),"%s has been kicked by Help operator %s [reason: %s] ",playername,adminname,params[2]); SendClientMessageToAll(red,string);
SaveToFile("KickLog",string);
print(string);
SetTimerEx("KickPlayer",1000,false,"d", playerid);
return 1; }
}
} else return SendClientMessage(playerid, red, "Player is not connected or is yourself or is the highest level admin");
} else return SendClientMessage(playerid,red,"» Error « {BABABA}You are not authorized to use this command.");
} else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
return 1;
}