搜索
查看: 2037|回复: 4

哪个能在插件上加在线累计时间

[复制链接]
发表于 2009-4-5 08:56:14 | 显示全部楼层 |阅读模式 来自 广东中山
如题,在下面代码中那为高人能加上在线累计时间显示


/*此插件和 li_geoip 模块和 点通签名插件以及 Statx 插件配套使用.
*如有问题请到点通论坛提问.*/

#include <amxmodx>
#include <csstats>
#include "li_geoip"
#include "signs"

#define PLUGIN_NAME "DT-EnterLeave"
#define PLUGIN_VERSION "1.0"
#define PLUGIN_AUTHOR "ahcat"

#define STATS_KILLS 0
#define STATS_DEATHS 1
#define STATS_HS 2
#define STATS_TKS 3
#define STATS_SHOTS 4
#define STATS_HITS 5
#define STATS_DAMAGE 6

new g_JoinedTeam[33]
new g_SpecMode[33]
new g_msgid

public plugin_init()
        {
       
        register_plugin( PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR);
       
        register_event( "TeamInfo", "EventJoinedTeam", "a", "2!UNASSIGNED");
       
        register_event( "StatusValue", "DisplayInfo", "bd", "1=2");
       
        register_event( "TextMsg", "SetSpecMode", "bd", "2&ec_Mod");
       
        g_msgid = get_user_msgid("SayText");
}

public client_connect(id){
       
        g_JoinedTeam[id] = 0;
}

public EventJoinedTeam(){
       
        new id=read_data(1);
        if( g_JoinedTeam[id] == 0){
               
                g_JoinedTeam[id]=1;
               
                new szName[32];
                get_user_name( id, szName, 31);
               
                new szIP[16], szCountry[40], szArea[64];
                get_user_ip( id, szIP, 15, 1);
                get_ipinfo( szIP, szCountry, szArea, 39, 63);
               
                new izStats[8], izBody[8];
                new iRankPos, iRankMax;
                iRankPos = get_user_stats( id, izStats, izBody);
                iRankMax = get_statsnum();
               
                new szMessage[192];
                format( szMessage, 191, "^x04【欢迎】^x03%s^x01【排名】%d/%d^x04【来自】%s-%s",
                szName, iRankPos, iRankMax, szCountry, szArea);
               
                display_chat( szMessage);
               
                new szSignature[96];
                if( dt_getsign( szName, szSignature, 95)){
                       
                        format( szMessage, 191, "^x03【个性签名】^x04%s", szSignature);
                        display_chat( szMessage);
                }
               
        }
}

public client_disconnect(id){
       
        new szName[32];
        get_user_name( id, szName, 31);
       
        new szMessage[192];
        format( szMessage, 192,"^x03%s^x01兄弟离开了,欢迎他再来!!", szName);
       
        display_chat( szMessage);
}

public SetSpecMode(id){
       
        new arg[12];
        read_data( 2, arg, 11);
        g_SpecMode[id] = ( arg[10] == '4' );
}

public DisplayInfo(id){
       
        if ( g_SpecMode[id]){
               
                new player = read_data(2);
                if ( is_user_connected( player)){
                       
                        new szName[32];
                        get_user_name( player, szName, 31);
                       
                        new szIP[16], szCountry[40], szArea[64];
                        get_user_ip( player, szIP, 15, 1);
                        get_ipinfo( szIP, szCountry, szArea, 39, 63);
                       
                        new izStats[8], izBody[8];
                        new iRankPos, iRankMax;
                        iRankPos = get_user_stats( player, izStats, izBody);
                        iRankMax = get_statsnum();
                       
                        new szSignature[96], HasSignature;
                        HasSignature = dt_getsign( szName, szSignature, 95);
                       
                        new szMessage[256];
                        format( szMessage, 255, "%s 排名:%d/%d^n爆头(率)%d(%0.2f)/杀敌%d 死亡%d^n命中(率)%d(%0.2f)/子弹%d^n来自:%s-%s ^n【个性签名】%s",
                        szName, iRankPos, iRankMax, izStats[STATS_HS], 100.0 * float( izStats[STATS_HS])/float( izStats[STATS_KILLS]),
                        izStats[STATS_KILLS], izStats[STATS_DEATHS], izStats[STATS_HITS], 100.0 * float( izStats[STATS_HITS])/float( izStats[STATS_SHOTS]),
                        izStats[STATS_SHOTS], szCountry, szArea, (HasSignature == 0)?"无个性签名":szSignature);
                       
                        set_hudmessage( 255, 0, 0, -1.0, 0.64, 0, 6.0, 8.0, 0.5, 0.15, 1) ;
                       
                        show_hudmessage( id, szMessage);
                }
        }
}

get_ipinfo( szIP[], szCountry[], szArea[], clen, alen){
       
        //可能 li_geoip 模块将 192.168.*.* 网段固定为"内网用户", 这里提供修改的办法.
        if( strfind( szIP, "192.168.") == 1){
               
                /*修改成你自己的网吧的地区名*/
                copy( szCountry, clen, "点通");
               
                /*修改成你自己的网吧的名称*/
                copy( szArea, alen, "论坛");
        }
        else
                geoip_info( szIP, szCountry, szArea, clen, alen);
}

display_chat( szMessage[]){
       
        message_begin( MSG_ALL, g_msgid);
        write_byte(1);
        write_string( szMessage);
        message_end();
}
 楼主| 发表于 2009-4-5 15:52:22 | 显示全部楼层 来自 广东中山
没有高手可以修改吗?
回复

使用道具 举报

发表于 2009-4-5 16:58:27 | 显示全部楼层 来自 吉林长春
以前111222333发过了
回复

使用道具 举报

 楼主| 发表于 2009-4-8 21:12:09 | 显示全部楼层 来自 广东中山
3# landyhmm


发的那个很多问题,我想那个高手能帮帮忙
回复

使用道具 举报

发表于 2009-4-9 20:18:53 | 显示全部楼层 来自 吉林长春
我可以帮你 看看再说吧 等高手用好方法
回复

使用道具 举报

游客
回复
您需要登录后才可以回帖 登录 | 注个册吧

快速回复 返回顶部 返回列表