Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Wklejka 132380473518278 dodana przez Tweak456, 13.12.2011 20:32
Typ:


HPK
132380473518278
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
/* AMX Mod script. 
* 
* (c) 2002-2003, OLO 
* modified by shadow
* This file is provided as is (no warranties). 
* 
* Players with immunity won't be checked 
*/ 
 
#include <amxmodx> 
#include <amxmisc>
 
new g_Ping[33]
new g_Samples[33]
 
public plugin_init()
{
    register_plugin("High Ping Kicker (Steam)","0.16.2","OLO/shadow")
    register_concmd("amx_hpk","cmdHpk",ADMIN_KICK,"- configures high_ping_kicker plugin")
    register_cvar("amx_hpk_ping","110")
    register_cvar("amx_hpk_check","15")
    register_cvar("amx_hpk_tests","8")
    register_cvar("amx_hpk_delay","60")
 
    if ( get_cvar_num( "amx_hpk_check" ) < 5 ) set_cvar_num( "amx_hpk_check" , 5 )
    if ( get_cvar_num( "amx_hpk_tests" ) < 3 ) set_cvar_num( "amx_hpk_tests" , 3 )
}
 
public client_disconnect(id) 
    remove_task( id )
 
public client_putinserver(id) 
{    
    g_Ping[id] = 0 
    g_Samples[id] = 0
 
    if ( !is_user_bot(id) ) 
    {
        new param[1]
        param[0] = id 
        set_task( 10.0 , "showWarn" , id , param , 1 )
 
        if (get_cvar_num("amx_hpk_tests") != 0) {
            set_task( float(get_cvar_num("amx_hpk_delay")), "taskSetting", id, param , 1)
        }
        else {        
            set_task( float(get_cvar_num( "amx_hpk_tests" )) , "checkPing" , id , param , 1 , "b" )
        }
 
    }
} 
 
public showWarn(param[])
    client_print( param[0] ,print_chat,"", get_cvar_num( "amx_hpk_ping" ) )
 
public taskSetting(param[]) {
    new name[32]
    get_user_name(param[0],name,31)
    set_task( float(get_cvar_num( "amx_hpk_tests" )) , "checkPing" , param[0] , param , 1 , "b" )
}
 
stock kickPlayer( id ) 
{ 
    new name[32],authid[32]
    get_user_name(id,name,31)
    get_user_authid(id,authid,31)
    client_print(0,print_chat,"",name)
 
    //14:05:50 Uzycie:  amx_ban <time in mins> <steamID or nickname or #authid or IP> <reason>
    server_cmd("amx_ban 10 #%d ^"Wysoki Ping^"",get_user_userid(id))
 
    log_amx("Highpingkick: ^"%s<%d><%s>^" was banned due highping (Average Ping ^"%d^")", name,get_user_userid(id),authid,(g_Ping[id] / g_Samples[id]))
}
 
public checkPing(param[]) 
{ 
    new id = param[ 0 ] 
 
    if ( get_user_flags(id) & ADMIN_IMMUNITY ) return
 
    new p, l 
 
    get_user_ping( id , p , l ) 
 
    g_Ping[ id ] += p
    ++g_Samples[ id ]
 
    if ( (g_Samples[ id ] > get_cvar_num( "amx_hpk_tests" )) && (g_Ping[id] / g_Samples[id] > get_cvar_num( "amx_hpk_ping" ))  )    
        kickPlayer(id) 
}
 
 
public cmdHpk(id,level,cid){
    if (!cmd_access(id,level,cid,1))
        return PLUGIN_HANDLED
 
    new ping[5]
    new check_arr[5]
    new tests_arr[5]
    new delay_arr[5]
    read_argv(1,ping,4)
    read_argv(2,check_arr,4)
    read_argv(3,tests_arr,4)
    read_argv(4,delay_arr,4)
 
    new check = str_to_num(check_arr)
    new tests = str_to_num(tests_arr)
    new delay = str_to_num(delay_arr)
 
 
    if ( check < 5 ) check = 5
    if ( tests < 3 ) tests = 3
 
 
    if (read_argc() > 1){
        set_cvar_string("amx_hpk_ping",ping)
    }
    if (read_argc() > 2) {
        set_cvar_num("amx_hpk_check",check)
    }
    if (read_argc() > 3) {
        set_cvar_num("amx_hpk_tests",tests)
    }
    if (read_argc() > 4) {
        set_cvar_num("amx_hpk_delay",delay)
    }
 
    console_print(id,"Syntax: amx_hpk <ping to get kicked> <checks before kicks> <time between checks> <delay before first check in sec.>")
    console_print(id,"Current High_Ping_Kicker Settings:")
    console_print(id,"Maxping: %d  Time between checks: %d Checkcount: %d Delay: %d",get_cvar_num("amx_hpk_ping"),get_cvar_num("amx_hpk_check"),get_cvar_num("amx_hpk_tests"),get_cvar_num("amx_hpk_delay"))
    return PLUGIN_HANDLED    
}