查看: 2738|回复: 24

[带源码] 8秒内连杀奖励代码

[复制链接]
发表于 2012-7-18 07:23:24 | 显示全部楼层 |阅读模式
#include <amxmodx>
#include <csx>
new g_KillSum[33]         //连续杀人数量记录
new g_HeatshotSum[33]     //爆头记录
new Float:g_Time[33][5]   //保存杀人开始,结束时间
new gg_HeatshotSum[33][33]
native cs_get_user_money2(index)
native cs_set_user_money2(index, money, flash=1)
public plugin_init(){
        register_plugin("连杀奖励","1.0", "3344")
        register_event("DeathMsg","eDeathMsg","a")
        register_cvar("RewardConsecutive","34000")//连杀基数
}
//连杀插入**********************************************************************
public eDeathMsg(){
        new killer,victim,wpnname[4]
        read_data(4 , wpnname , 3)
        if(equal(wpnname,"c4")) return
               
        killer=read_data(1)
        if(!killer) return
        victim=read_data(2)
        if(get_user_team(killer)==get_user_team(victim)) return
        if(killer == victim) return
        if(get_cvar_num("RewardConsecutive") > 0){
                new Float:TimeNow = get_gametime()
                new param[1]
                param[0] = killer
                g_KillSum[killer]++
                g_HeatshotSum[killer] += read_data(3)
                g_Time[killer][4] = TimeNow
               
                if(g_KillSum[killer]==1){
                        g_Time[killer][1] = TimeNow
                        gg_HeatshotSum[killer][1] = read_data(3)
                }
                if(g_KillSum[killer]==2){
                        g_Time[killer][2] = TimeNow
                        gg_HeatshotSum[killer][2] = read_data(3)
                }
                if (g_KillSum[killer]==3){
                        g_Time[killer][3] = TimeNow
                        gg_HeatshotSum[killer][3] = read_data(3)
                        
                        if(floatround(g_Time[killer][3] - g_Time[killer][1])<=8)
                                set_task(8.0 + g_Time[killer][1] - g_Time[killer][3], "TimeEnd", 3344+killer, param, 1)
                        else{
                                g_KillSum[killer]--
                                g_HeatshotSum[killer]-=gg_HeatshotSum[killer][1]
                                g_Time[killer][1] = g_Time[killer][2]
                                g_Time[killer][2] = g_Time[killer][3]
                                gg_HeatshotSum[killer][1] = gg_HeatshotSum[killer][2]
                                gg_HeatshotSum[killer][2] = gg_HeatshotSum[killer][3]
                        }
                }
        }
}
//******************************************************************************
public TimeEnd(param[]){
        new id = param[0]
        new time_total = floatround(g_Time[id][4] - g_Time[id][1])
        if (time_total<=0)
                time_total = 1
        new Rewardmoney=(g_HeatshotSum[id]+g_KillSum[id])*get_cvar_num("RewardConsecutive")/time_total
        cs_set_user_money2(id,cs_get_user_money2(id)+Rewardmoney)
        
        new name[32], Cmsg[128]
        get_user_name(id, name, 31)
        format(Cmsg,sizeof Cmsg - 1,"!G『!T连杀奖!G』!T%s!W在!T%d!W秒内,连挂!T%d!W敌,!T%d!W爆头.!G奖励金钱!T%d",name,time_total,g_KillSum[id],g_HeatshotSum[id],Rewardmoney)
        client_color(0, id, Cmsg)
        
        set_hudmessage(100, 100, 255, 0.7, 0.25, 0, 6.0, 4.0, 0.5, 0.15, 3)
        show_hudmessage(0,"%s^n在%d秒内,连杀%d敌(%d爆头)^n奖励%d",name,time_total,g_KillSum[id],g_HeatshotSum[id],Rewardmoney)
        
        g_KillSum[id] = 0
        g_HeatshotSum[id] = 0
}
public client_disconnect(id){
        if(task_exists(3344+id))
                remove_task(3344+id)
        
        g_KillSum[id] = 0
        g_HeatshotSum[id] = 0
}
public client_color(playerid, colorid, msg[]){
        while(replace(msg,127,"!W","^x01")){}
        while(replace(msg,127,"0x02","^x02")){}
        while(replace(msg,127,"!T","^x03")){}
        while(replace(msg,127,"!G","^x04")){}
        message_begin(playerid?MSG_ONE:MSG_ALL,get_user_msgid("SayText"),_,playerid)
        write_byte(colorid)
        write_string(msg)
        message_end()
        client_print(playerid, print_console,msg)
}
发表于 2012-7-23 09:59:02 | 显示全部楼层
不错,看看。  
发表于 2012-7-27 15:52:44 | 显示全部楼层
貌似我真的很笨????哎  
发表于 2012-7-29 00:36:20 | 显示全部楼层
初来乍到,请多多关照。。。  
发表于 2012-7-29 06:52:34 | 显示全部楼层
一个有信念者所开发出的力量,大于99个只有兴趣者。  
发表于 2012-7-30 06:42:24 | 显示全部楼层
好啊,,不错、、、、  
发表于 2012-8-29 20:12:49 | 显示全部楼层
回帖是一种美德
发表于 2015-2-13 03:12:06 | 显示全部楼层
谁能送我几分啊  
发表于 2015-3-13 17:02:48 | 显示全部楼层
人之所以能,是相信能。  
发表于 2015-4-13 16:40:16 | 显示全部楼层
厉害!强~~~~没的说了!  
您需要登录后才可以回帖 登录 | 中文注册

本版积分规则