
   /* AMX Mod script.
   *
   * No reconnect
   * (c) Copyright 2002, SYZo
   * This file is provided as is (no warranties).
   *
   * amx_minreconnecttime 20 (in seconds)
   *
   */
   #include <amxmod>
   #define MAX_PLAYERS 32
   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[16]
           get_user_authid(id,authid,16)
           log_to_file("addons/amx/reconnect.log",
   "^"%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  [AMX]  You  used  command  RECONNECT.
   Please, connect 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("No reconnect","2.10","SYZo")
       register_cvar("amx_minreconnecttime","20")
       return PLUGIN_CONTINUE
   }
