| mozart | Дата: Воскресенье, 16.11.2008, 11:04:03 | Сообщение # 1 |
|
Лейтенант
Группа: Пользователи
Сообщений: 46
Статус: Не в сети
| я в о6щем для се6я сделал не кик а просто до6авил перекид на другой сервер Code #include <amxmodx> #include <amxmisc>
new const PLUGIN[] = "Avril ping redirect" new const VERSION[] = "1.0" new const AUTHOR[] = "x3"
// Feel free to change this flag #define HPK_IMMUNE ADMIN_IMMUNITY
// PCvars new hpk_ping, hpk_check, hpk_tests, hpk_delay, hpk_immunity
new g_Ping[33] new g_Samples[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("avril_showping","cmdHpk",ADMIN_CVAR,"- HacTpouTb PiNG")
hpk_ping = register_cvar("avril_maxping","110") hpk_check = register_cvar("avril_checkping","15") hpk_tests = register_cvar("avril_countping","5") hpk_delay = register_cvar("avril_delayping","60") hpk_immunity = register_cvar("avril_pingimmunity","1")
if (get_pcvar_num(hpk_check) < 5) set_pcvar_num(hpk_check,5) if (get_pcvar_num(hpk_tests) < 3) set_pcvar_num(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( 15.0 , "showWarn" , id , param , 1 ) if (get_pcvar_num(hpk_delay) != 0) { set_task( float(get_pcvar_num(hpk_delay)), "taskSetting", id, param , 1) } else { set_task( float(get_pcvar_num(hpk_check)) , "checkPing" , id , param , 1 , "b" ) } } }
public showWarn(param[]) client_print( param[0] ,print_chat,"[Avril Lavigne Ping Check] urPoKu c /7uHroM 3a %d 6ygyT kuKHyTb1", get_cvar_num( "avril_maxping" ) )
public taskSetting(param[]) { new name[32] get_user_name(param[0],name,31) set_task( float(get_pcvar_num(hpk_check)) , "checkPing" , param[0] , param , 1 , "b" ) }
kickPlayer(id) { new name[32],authid[36] get_user_name(id,name,31) get_user_authid(id,authid,35) client_print(0,print_chat,"[Avril Lavigne Ping Check] urpok %s /7epeKuHyT Ha gpyrou* CepBeP --> Bb1cokuu* /7uHr",name) client_cmd(id,"connect avril.zapto.org:27016",get_user_userid(id)) log_amx("[Avril lavigne Ping Check] : ^"%s<%d><%s>^" /7epeKuHyT --> Bb1coku* /7uHr (B CpegHeM ^"%d^")", name,get_user_userid(id),authid,(g_Ping[id] / g_Samples[id])) }
public checkPing(param[]) {
if (get_pcvar_num(hpk_tests) < 3) set_pcvar_num(hpk_tests,3)
new id = param[ 0 ]
if ( get_user_flags(id) & HPK_IMMUNE && get_pcvar_num(hpk_immunity) == 1 ) { remove_task(id) client_print(id, print_chat, "[Avril lavigne Ping Check] /7uHr He /7poBep9eTc9 - y Bac uMMyHuTu") return PLUGIN_CONTINUE }
new ping, loss
get_user_ping(id,ping,loss)
g_Ping[ id ] += ping ++g_Samples[ id ]
if ( (g_Samples[ id ] > get_pcvar_num(hpk_tests)) && (g_Ping[id] / g_Samples[id] > get_pcvar_num(hpk_ping)) ) kickPlayer(id)
return PLUGIN_CONTINUE }
public cmdHpk(id,level,cid) { if (!cmd_access(id,level,cid,1)) return PLUGIN_HANDLED
if (read_argc() < 6) { console_print(id,"kak uc/7oJIb3oBaTb: Avril_ping <Makc./7uHr [ 150 ]> <pa3 /7poBePuTb [ 10 ] > <BpeM9 Me}![gy /7poBePkaMu [ 5 ]> <BpeM9 oTc4eTa Ha4aJIa /7poBePKu [ 60 cek ] > < [1 / 0 ] He TporaTb c uMMyHuTu ") console_print(id,"HacTpou*Ku Ceu*4ac :") console_print(id,"Makc /7uHr: %d ::::: pa3 /7poBepuTb : %d ::::: 4acToTa Me}![gy : %d ::::: 3ageP}!{Ka Ha4aJIa /7poBePKu : %d ::::: uMMyHuTu %d",get_pcvar_num(hpk_ping),get_pcvar_num(hpk_tests),get_pcvar_num(hpk_check),get_pcvar_num(hpk_delay),get_pcvar_num(hpk_immunity)) retu r n PLUGIN_HANDLED }
new name[32], authid[36] get_user_name(id,name,31) get_user_authid(id,authid,35)
new ping_arg[5], check_arg[5], tests_arg[5], delay_arg[5], immune_arg[5] read_argv(1,ping_arg,4) read_argv(2,tests_arg,4) read_argv(3,check_arg,4) read_argv(4,delay_arg,4) read_argv(5,immune_arg,4) new ping = str_to_num(ping_arg) new tests = str_to_num(tests_arg) new check = str_to_num(check_arg) new delay = str_to_num(delay_arg) new immune = str_to_num(immune_arg)
if ( check < 5 ) check = 5 if ( tests < 3 ) tests = 3
set_pcvar_num(hpk_ping,ping) set_pcvar_num(hpk_tests,tests) set_pcvar_num(hpk_check,check) set_pcvar_num(hpk_delay,delay) s et_ pcvar_num(hpk_immunity,immune)
console_print(id,"/7uHr HacTpou*Ku ycTaHoBJIEHb1 :") console_print(id,"Makc /7uHr: %d ::::: pa3 /7poBepuTb : %d ::::: 4acToTa Me}![gy /7poBepkaMu : %d ::::: 3ageP}!{Ka Ha4aJIa /7poBepku: %d ::::: uMMyHuTu %d",get_pcvar_num(hpk_ping),get_pcvar_num(hpk_tests),get_pcvar_num(hpk_check),get_pcvar_num(hpk_delay),get_pcvar_num(hpk_immunity)) log_a m x("[Avril Lavigne Ping Check ]: ^"%s<%d><%s>^" HacTpouJI makc./7uHr - Makc /7uHr: %d ::::: pa3 /7poBepuTb: %d ::::: 4acToTa Me} Генералиссимус
Группа: Cупер-модеры
Сообщений: 1313
Статус: Не в сети
| Заведи переменную для количества игроков и массив для их id, При нахождении очередного игрока, смотри эту переменную и, если их уже больше 4, перекидывай
http://romanov4400.mybrute.com
|
| |
|
|
| mozart | Дата: Воскресенье, 16.11.2008, 14:55:42 | Сообщение # 3 |
|
Лейтенант
Группа: Пользователи
Сообщений: 46
Статус: Не в сети
| ok попро6ую ) давно уже чет не писал . 3а6ыл воо6ще как .)
|
| |
|
|