File: ping_kick.lua - Tab length: 1 2 4 8 - Lines: on off - No wrap: on off

PLUGIN_NAME = "Ping kick"
PLUGIN_AUTHOR = "Baruch" -- hlepouse@gmail.com
PLUGIN_VERSION = "29 dec 2012"

include("ac_server")

lagtimes = {}
lagduration = 3 -- time before getting kicked (in seconds), change it if you want
pinglimit = 600 -- change it if you want

function LuaLoop()
    for cn = 0, maxclient() - 1 do
        if isconnected(cn) then
            if getping(cn) >= pinglimit then
                clientprint(-1, getping(cn))
                lagtimes[cn] = getsvtick()
            end
        end
    end
    for cn, time in ipairs(lagtimes) do
        if getsvtick() - time >= lagduration * 1000 then
            clientprint(-1,cn)
            lagtimes[cn] = nil
            clientprint(-1, string.format("\f2 [SERVER INFO] \f1 Player \f2%s \f1was kicked for lagging", getname(cn)))
            disconnect(cn, DISC_NONE)
        end
    end
end