搜索
查看: 8284|回复: 11

[AMXX 带源码] 最佳杀手,是寡妇村每局结束后的那个最佳杀手,还有一些插件带的最佳杀手插件(非一般)

[复制链接]
发表于 2015-1-14 21:24:03 | 显示全部楼层 |阅读模式 来自 中国–广东–佛山
不说了,上传吧
#include <amxmodx>
#include <cstrike>

new g_playerkilled[33];
new g_maxplayers = 32;

public plugin_init()
{
        register_plugin("Best Killer", "1.0", "Rulzy");
        register_event("DeathMsg","eDeathMsg", "a", "1>0");
        register_event("HLTV", "eNewRound", "a", "1=0", "2=0");
        register_logevent("eEndRound", 2, "0=World triggered", "1=Round_End");
        g_maxplayers = get_maxplayers();
}

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

public eNewRound()
{
        for(new i=1; i<=g_maxplayers; i++)
                g_playerkilled[i] = 0;
}

public eDeathMsg()
{
        new killer=read_data(1);
        if(!is_user_connected(killer)) return PLUGIN_CONTINUE;
        new victim=read_data(2);
        if(!is_user_connected(victim)) return PLUGIN_CONTINUE;
        if(get_user_team(killer)==get_user_team(victim)) return PLUGIN_CONTINUE; //TK
        g_playerkilled[killer]++;
        return PLUGIN_CONTINUE;
}

public eEndRound()
{
        new msg[513], maxkillcount = 0, maxkillplayercount = 0;
        new ipos=format(msg, 512,"本局最佳杀手");
        new maxkillplayerlist[32];
        for(new i=1; i<=g_maxplayers; i++)
        {
                if(!is_user_connected(i)) continue;
                if(g_playerkilled[i]>maxkillcount)
                {
                        maxkillcount = g_playerkilled[i];
                        maxkillplayercount = 1;
                        maxkillplayerlist[maxkillplayercount-1] = i;
                        }else if(g_playerkilled[i]==maxkillcount){
                        maxkillplayercount++;
                        maxkillplayerlist[maxkillplayercount-1] = i;
                }
        }
        if(maxkillcount>0)
        {
                new name[33];
                ipos+=format(msg[ipos],512-ipos,"^n(杀%d人)^n————————————————^n", maxkillcount);
                if(maxkillplayercount<=3)
                {
                        for(new i=0; i<maxkillplayercount; i++)
                        {
                                get_user_name(maxkillplayerlist[i], name, 31);
                                ipos+=format(msg[ipos], 512-ipos, "%s^n", name);
                        }
                        }else{
                        for(new i=0; i<2; i++)
                        {
                                get_user_name(maxkillplayerlist[i], name, 31);
                                ipos+=format(msg[ipos], 512-ipos, "%s^n", name);
                        }
                        ipos+=format(msg[ipos],512-ipos,"......^n")
                }
                }else{
                ipos+=format(msg[ipos],512-ipos,"^n————————————————^n无伤亡^n")
        }
        set_hudmessage(80, 180, 101, -1.0, 0.6, 2, 0.02, 4.0, 0.02, 5.0, 2);
        show_hudmessage(0, msg);
}

额,我需要有人帮我编译一下,因为我编译的应用到游戏当中是那个不知道是什么文字.....
发表于 2015-1-22 18:22:22 | 显示全部楼层 来自 中国–海南–海口
丶某人的痛才是 发表于 2015-1-21 20:54
对了你怎么弄得,我弄很久都没搞好,难道是你的inc和我的inc不同?给点方法

源码保存格式为UTF-8就不是乱码了。
回复 1 0

使用道具 举报

发表于 2015-1-21 08:31:10 | 显示全部楼层 来自 中国–安徽–六安–舒城县
我帮你弄好了

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复 0 1

使用道具 举报

 楼主| 发表于 2015-1-17 08:58:12 | 显示全部楼层 来自 中国–广东–佛山
顶一下啊!
回复

使用道具 举报

发表于 2015-1-20 22:00:29 | 显示全部楼层 来自 中国–海南–海口
{:4_133:}{:4_133:}{:4_133:}{:4_133:}

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注个册吧

×
回复

使用道具 举报

 楼主| 发表于 2015-1-21 20:40:14 | 显示全部楼层 来自 中国–广东–佛山
不知道能不能正常显示呢?
回复

使用道具 举报

 楼主| 发表于 2015-1-21 20:54:52 | 显示全部楼层 来自 中国–广东–佛山

对了你怎么弄得,我弄很久都没搞好,难道是你的inc和我的inc不同?给点方法
回复

使用道具 举报

 楼主| 发表于 2015-1-22 21:57:42 | 显示全部楼层 来自 中国–广东–佛山
裸奔者 发表于 2015-1-22 18:22
源码保存格式为UTF-8就不是乱码了。

对喔,我怎么忘了....可能是平时编写看多了函数都晕了....
回复

使用道具 举报

发表于 2015-1-23 02:50:59 | 显示全部楼层 来自 中国–山东–济南
不只带曾能,哈哈
回复

使用道具 举报

发表于 2015-1-25 18:12:07 | 显示全部楼层 来自 中国–西藏–拉萨
[mw_shl_code=pawn,true]#include <amxmodx>
#include <cstrike>

new g_playerkilled[33];
new g_maxplayers = 32;

public plugin_init()
{
         register_plugin("Best Killer", "1.0", "Rulzy");
         register_event("DeathMsg","eDeathMsg", "a", "1>0");
         register_event("HLTV", "eNewRound", "a", "1=0", "2=0");
         register_logevent("eEndRound", 2, "0=World triggered", "1=Round_End");
         g_maxplayers = get_maxplayers();
}

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

public eNewRound()
{
         for(new i=1; i<=g_maxplayers; i++)
                 g_playerkilled = 0;
}

public eDeathMsg()
{
         new killer=read_data(1);
         if(!is_user_connected(killer)) return PLUGIN_CONTINUE;
         new victim=read_data(2);
         if(!is_user_connected(victim)) return PLUGIN_CONTINUE;
         if(get_user_team(killer)==get_user_team(victim)) return PLUGIN_CONTINUE; //TK
         g_playerkilled[killer]++;
         return PLUGIN_CONTINUE;
}

public eEndRound()
{
         new msg[513], maxkillcount = 0, maxkillplayercount = 0;
         new ipos=format(msg, 512,"本局最佳杀手");
         new maxkillplayerlist[32];
         for(new i=1; i<=g_maxplayers; i++)
         {
                 if(!is_user_connected(i)) continue;
                 if(g_playerkilled>maxkillcount)
                 {
                         maxkillcount = g_playerkilled;
                         maxkillplayercount = 1;
                         maxkillplayerlist[maxkillplayercount-1] = i;
                         }else if(g_playerkilled==maxkillcount){
                         maxkillplayercount++;
                         maxkillplayerlist[maxkillplayercount-1] = i;
                 }
         }
         if(maxkillcount>0)
         {
                 new name[33];
                 ipos+=format(msg[ipos],512-ipos,"^n(杀%d人)^n————————————————^n", maxkillcount);
                 if(maxkillplayercount<=3)
                 {
                         for(new i=0; i<maxkillplayercount; i++)
                         {
                                 get_user_name(maxkillplayerlist, name, 31);
                                 ipos+=format(msg[ipos], 512-ipos, "%s^n", name);
                         }
                         }else{
                         for(new i=0; i<2; i++)
                         {
                                 get_user_name(maxkillplayerlist, name, 31);
                                 ipos+=format(msg[ipos], 512-ipos, "%s^n", name);
                         }
                         ipos+=format(msg[ipos],512-ipos,"......^n")
                 }
                 }else{
                 ipos+=format(msg[ipos],512-ipos,"^n————————————————^n无伤亡^n")
         }
         set_hudmessage(80, 180, 101, -1.0, 0.6, 2, 0.02, 4.0, 0.02, 5.0, 2);
         show_hudmessage(0, msg);
}
[/mw_shl_code]
回复

使用道具 举报

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

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