/* AMX Mod X script. * * No reconnect * (c) Copyright 2002, SYZo * This file is provided as is (no warranties). * * amx_minreconnecttime 20 (in seconds) * * ******************************************************************************* * * Ported By KingPin( kingpinservers@gmail.com ). I take no responsibility * for this file in any way. Use at your own risk. No warranties of any kind. * * ******************************************************************************* * Updated Feb 14 2006 * */ #include <amxmodx> #include <engine> #define MAX_PLAYERS 32 #define PLUGIN "No reconnect" #define VERSION "2.11" #define AUTHOR "SYZo" new pip[MAX_PLAYERS][22] new Float:minreconnecttime public delayed_kick(user[]) { server_cmd("kick #%d",user[0]) } public clean_blackip(ind[]) { pip[ind[0]][0] = 0 } public client_connect(id) { if (!is_user_bot(id)) { minreconnecttime = get_cvar_float("amx_minreconnecttime") new userip[21+1] new uname[33+1] get_user_ip(id, userip, 21, 0) get_user_name(id, uname, 33) for(new i = 1; i <= MAX_PLAYERS; i++) { if (equal(userip, pip[i], 21)) { new userid[1] userid[0] = get_user_userid(id) new authid[32] get_user_authid(id,authid,32) log_amx("^"%s<%s><%d><%s><>^"", uname, userip, get_user_userid(id), authid) if (!(get_user_flags(id)&ADMIN_IMMUNITY)) { new text[128] format(text, 128, "Player %s kicked after usage reconnect command", uname) set_hudmessage(255, 0, 0, 0.05, 0.70, 0, 5.0, 6.0, 6.0, 0.15, 3) show_hudmessage(0,"%s",text) client_cmd(id,"echo [AMXX] You used command RECONNECT within %f, please reconnect after %f sec", minreconnecttime) set_task(1.0,"delayed_kick",0,userid,1) } return PLUGIN_CONTINUE } } } return PLUGIN_CONTINUE } public client_disconnect(id) { if (!is_user_bot(id)) { for(new i = 1; i <= MAX_PLAYERS; i++) { if(pip[i][0] == 0) { new userip[21+1] get_user_ip(id, userip, 21, 0) copy(pip[i], 21, userip) new userid[1] userid[0] = i set_task(minreconnecttime, "clean_blackip", 0, userid[0], 1) return PLUGIN_CONTINUE } } } return PLUGIN_CONTINUE } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_cvar("amx_minreconnecttime","20") return PLUGIN_CONTINUE } |