|
发表于 2011-2-27 14:57:06
|
显示全部楼层
来自 中国–广东–东莞
- #include <amxmod>
- #include <amxmodx>
- #include <csstats>
- #include <ipseeker>
- public plugin_init() {
- register_plugin("Enter-Leave Message","1.0","martins")
- register_cvar("amx_enter_message", "Server join: %name% (Rank: %rankpos%)(total:%rankmax%)")
- register_cvar("amx_leave_message", "Server leave: %name%")
- }
- public client_putinserver(id){
- new param[34], len
- param[0] = id
- len = get_user_name(id,param[1],31)
- set_task(2.0, "enter_msg", 0, param,len + 2)
- return PLUGIN_CONTINUE
- }
- public client_disconnect(id){
- new param[34], len
- param[0] = id
- len = get_user_name(id, param[1], 31)
- set_task(2.0, "leave_msg", 0, param, len + 2)
- return PLUGIN_CONTINUE
- }
- public enter_msg(param[]) {
- new message[192],hostname[64]
- get_cvar_string("amx_enter_message", message, 191)
- get_cvar_string("hostname", hostname, 63)
- replace(message,191, "%hostname%", hostname)
- new ip[32]
- get_user_ip(param[0], ip, 31, 1)
- new addr[64]
- ipseeker(ip, ipseek_all, addr, 128, 1)
- replace_all( message, 191, "%IP%", addr );
- if (cvar_exists("csstats_reset")){
- new data[8], rankpos[8], rankmax[8] , iRankpos , iRankmax
- iRankpos = get_user_stats(param[0],data,data)
- iRankmax = get_statsnum()
- numtostr(iRankpos,rankpos,7)
- numtostr(iRankmax,rankmax,7)
- replace_all( message, 191, "%rankpos%", rankpos );
- replace_all( message, 191, "%rankmax%", rankmax );
- }
- replace_all( message, 191, "%name%", param[ 1 ] );
- replace_all( message, charsmax( message ), "\n", "^n" );
- /*set_hudmessage(0, 255, 0, 0.10, 0.55, 0, 6.0, 6.0, 0.5, 0.15, 3)
- show_hudmessage(0, message)*/
- client_print_color( 0, param[ 0 ], "%s" , message );
- return PLUGIN_CONTINUE
- }
- public leave_msg(param[]) {
- new message[192],hostname[64]
- get_cvar_string("amx_leave_message", message, 191)
- get_cvar_string("hostname", hostname, 63)
- replace_all( message, 191, "%hostname%", hostname );
- replace_all( message, 191, "%name%", param[ 1 ] );
- replace_all( message, charsmax( message ), "\n", "^n" );
- /*set_hudmessage(255, 0, 255, 0.10, 0.55, 0, 6.0, 6.0, 0.5, 0.15, 3)
- show_hudmessage(0, message)*/
- client_print_color( 0, param[ 0 ], "%s" , message );
- return PLUGIN_CONTINUE
- }
- stock client_print_color( id, color, const fmt[], any:... )
- {
- static iSayText;
- static szMsg[ 192 ];
- vformat( szMsg, charsmax( szMsg ), fmt, 4 );
-
- if ( iSayText || ( iSayText == get_user_msgid( "SayText" ) ) )
- {
- message_begin( id ? MSG_ONE_UNRELIABLE : MSG_BROADCAST, iSayText, _, id )
- {
- write_byte( color );
- write_string( szMsg );
- }
- message_end( )
- }
- }
复制代码 用记事本写的,有错误提出来! |
|