25.12.2015, 10:59
Hello, My whitelist system won't kick players that aren't whitelisted.
Код:
#include <a_samp> #include <Dini> #include <sscanf2> #include <zcmd> new Whitelist[20] = "Whitelist.txt"; new pid; new name2[MAX_PLAYER_NAME]; public OnFilterScriptInit() { print("Whitelist loaded."); if(!dini_Exists(Whitelist)) { dini_Create(Whitelist); } return 1; } public OnPlayerConnect(playerid) { new name[MAX_PLAYER_NAME]; GetPlayerName(playerid,name,MAX_PLAYER_NAME); if(dini_Int(Whitelist,name) != 1) { if(dini_Int(Whitelist,name) != 0) { dini_IntSet(Whitelist,name,0); } } if(dini_Int(Whitelist,name) != 1) { SendClientMessage(playerid,-1,"You are not Whitelisted!"); Kick(playerid); return 0; } return 1; } CMD:addtowhitelist(playerid,params[]) { if(IsPlayerAdmin(playerid)) { if(sscanf(params,"%u",pid)) return SendClientMessage(playerid,-1,"Usage: /addtowhitelist [playerid / name]"); GetPlayerName(pid,name2,MAX_PLAYER_NAME); dini_IntSet(Whitelist,name2,1); } return 1; } CMD:removefromwhitelist(playerid,params[]) { if(IsPlayerAdmin(playerid)) { if(sscanf(params,"%u",pid)) return SendClientMessage(playerid,-1,"Usage: /removefromwhitelist [playerid / name]"); GetPlayerName(pid,name2,MAX_PLAYER_NAME); dini_IntSet(Whitelist,name2,0); } return 1; }