當前位置:編程學習大全網 - 源碼下載 - cs1.6如何防踢,ping太高被踢了出去?

cs1.6如何防踢,ping太高被踢了出去?

找個high_ping_kicker.amxx插件 不能通用。妳把下面的源代碼用記事本復制到high_ping_kicker.sma 然後編譯成high_ping_kicker.amxx 編譯方法可以見 /karab/blog/item/e9d3bf193bb4f04543a9ad9c.html 這個是從AMXX1.76C漢化版裏拿出來的 /* AMX Mod X * * (c) Copyright 2004, datang * * This file is part of AMX Mod X. * */ #include <amxmodx> new g_Ping[33] new g_Samples[33] new pamx_hpk_ping new pamx_hpk_check new pamx_hpk_tests new pamx_hpk_delay public plugin_init() { register_plugin("High Ping Kicker","1.0","datang") register_dictionary("high_ping_kicker.txt") pamx_hpk_ping = register_cvar("amx_hpk_ping","200") pamx_hpk_check = register_cvar("amx_hpk_check","5") pamx_hpk_tests = register_cvar("amx_hpk_tests","5") pamx_hpk_delay = register_cvar("amx_hpk_delay","60") if ( get_pcvar_num( pamx_hpk_check ) < 5 ) set_pcvar_num( pamx_hpk_check , 5 ) if ( get_pcvar_num( pamx_hpk_tests ) < 3 ) set_pcvar_num( pamx_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_pcvar_num(pamx_hpk_delay) != 0) { set_task( float(get_pcvar_num(pamx_hpk_delay)), "taskSetting", id, param , 1) } else { set_task( float(get_pcvar_num( pamx_hpk_check )) , "checkPing" , id , param , 1 , "b" ) } } } public showWarn(param[]) { client_print( param[0] ,print_chat,"* %L",LANG_SERVER,"PING", get_pcvar_num( pamx_hpk_ping ) ) console_print( param[0],"* %L",LANG_SERVER,"PING", get_pcvar_num( pamx_hpk_ping ) ) } public taskSetting(param[]) { set_task( float(get_pcvar_num( pamx_hpk_check )) , "checkPing" , param[0] , param , 1 , "b" ) } kickPlayer( id ) { new name[32],authid[32] new userid = get_user_userid(id) get_user_name(id,name,31) get_user_authid(id,authid,31) client_print(0,print_chat,"* %L", id, "KICKED", name) log_amx("^"%s<%d><%s><>^" has been kicked due to high ping.", name, userid, authid) client_cmd(id, "echo ^"* %L^"", id, "HPK") client_cmd(id, "disconnect") //Has no effects in CS1.5 server_cmd("kick #%d", userid) //So kicked remove_task(id) } public checkPing(param[]) { new id = param[ 0 ] if ( get_user_flags(id) & ADMIN_IMMUNITY || get_user_flags(id) & ADMIN_RESERVATION ) return new p, l get_user_ping( id , p , l ) g_Ping[ id ] += p ++g_Samples[ id ] if ( (g_Samples[ id ] >= get_pcvar_num( pamx_hpk_tests )) && (g_Ping[id] / g_Samples[id] > get_pcvar_num( pamx_hpk_ping )) ) kickPlayer(id) } 0 回

  • 上一篇:在這個時代,為什麽我們仍需要閱讀?
  • 下一篇:微店三級分銷系統APP開發多少錢
  • copyright 2024編程學習大全網