/* AMX Mod script * * (c) 2002-2003, DynAstY * This file is provided as is (no warranties). * * Players with immunity won't be checked */ #include <amxmodx> new HPK_MAX_CVAR new HPK_TIME_CVAR new HPK_TESTS_CVAR new iNumTests[33] public plugin_init() { register_plugin("High Ping Kicker","1.2.0","DynAstY") register_cvar("hpk_maxping","150") register_cvar("hpk_time","6") register_cvar("hpk_tests","3") return PLUGIN_CONTINUE } public client_disconnect(id) { remove_task(id) return PLUGIN_CONTINUE } public client_putinserver(id) { iNumTests[id] = 0 if (!is_user_bot(id)) { new param[1] param[0] = id set_task(30.0, "showWarn", id, param, 1) } return PLUGIN_CONTINUE } kickPlayer(id) { new name[32] get_user_name(id, name, 31) new uID = get_user_userid(id) server_cmd("banid 1 #%d", uID) client_cmd(id, "echo ^"[HPK] Twoj ping jest za duzy!^"; disconnect") client_print(0, print_chat, "[HPK] %s zostal rozlaczony z powodu duzego ping'u! Pamietaj nie tolerujemy duzych pingow!", name) return PLUGIN_CONTINUE } public checkPing(param[]) { new id = param[0] HPK_MAX_CVAR = get_cvar_num( "hpk_maxping" ) HPK_TESTS_CVAR = get_cvar_num( "hpk_tests" ) HPK_TIME_CVAR = get_cvar_num( "hpk_time" ) if ((get_user_flags(id) & ADMIN_IMMUNITY)) { remove_task(id) client_print(id, print_chat, "[HPK] Ping nie obowiazuje graczy z immunitetem...") return PLUGIN_CONTINUE } new p, l get_user_ping(id, p, l) if (p > HPK_MAX_CVAR) ++iNumTests[id] else if (iNumTests[id] > 0) --iNumTests[id] if (iNumTests[id] > HPK_TESTS_CVAR) kickPlayer(id) return PLUGIN_CONTINUE } public showWarn(param[]) { client_print(param[0], print_chat, "[HPK] Gracze z pingiem wiekszym niz %d beda wyrzucani!", HPK_MAX_CVAR) set_task(float(HPK_TIME_CVAR), "checkPing", param[0], param, 1, "b") return PLUGIN_CONTINUE }
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
HPK
Temat rozp. iron_baby, 08.09.2009 13:45
2 odpowiedzi w tym temacie
#1
Napisano 08.09.2009 13:45
Jak w temacie proszę o przerobienie pluginu tak zeby wywalal ludzi z wiekszym pingiem niz 125 (juz niby jest tak przerobiony ale w say pokazje wiadomosc ze wywlal ludzi z pingiem wiekszym niz 0 - i dokladnie to proszę przerobic)
#2
Napisano 08.09.2009 13:52
/* AMX Mod script * * (c) 2002-2003, DynAstY * This file is provided as is (no warranties). * * Players with immunity won't be checked */ #include <amxmodx> new HIGHPING_MAX = 125 // set maximal acceptable ping new HIGHPING_TIME = 6 // set in seconds frequency of ping checking new HIGHPING_TESTS = 3 // minimal number of checks before doing anything new iNumTests[33] public plugin_init() { register_plugin("High Ping Kicker","1.2.0","DynAstY") if (HIGHPING_TIME < 10) HIGHPING_TIME = 6 if (HIGHPING_TESTS < 4) HIGHPING_TESTS = 3 return PLUGIN_CONTINUE } public client_disconnect(id) { remove_task(id) return PLUGIN_CONTINUE } public client_putinserver(id) { iNumTests[id] = 0 if (!is_user_bot(id)) { new param[1] param[0] = id set_task(30.0, "showWarn", id, param, 1) } return PLUGIN_CONTINUE } kickPlayer(id) { new name[32] get_user_name(id, name, 31) new uID = get_user_userid(id) server_cmd("banid 1 #%d", uID) client_cmd(id, "echo ^"[HPK] Twoj ping jest za duzy!^"; disconnect") client_print(0, print_chat, "[HPK] %s zostal rozlaczony z powodu duzego ping'u!", name) return PLUGIN_CONTINUE } public checkPing(param[]) { new id = param[0] if ((get_user_flags(id) & ADMIN_IMMUNITY)) { remove_task(id) client_print(id, print_chat, "[HPK] Ping nie obowiazuje graczy z immunitetem...") return PLUGIN_CONTINUE } new p, l get_user_ping(id, p, l) if (p > HIGHPING_MAX) ++iNumTests[id] else if (iNumTests[id] > 0) --iNumTests[id] if (iNumTests[id] > HIGHPING_TESTS) kickPlayer(id) return PLUGIN_CONTINUE } public showWarn(param[]) { client_print(param[0], print_chat, "[HPK] Gracze z pingiem wiekszym niz %d beda wyrzucani!", HIGHPING_MAX) set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b") return PLUGIN_CONTINUE }
Załączone pliki
#3
Napisano 08.09.2009 15:44
Dziekuje bardzo, dziala w 100% porpawnie
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych