apocalyptic 发表于 2007-8-8 18:47:35

关于玩家伤害的问题

假设游戏规则:玩家A用手雷炸伤了玩家B,过3秒钟之后玩家B还要受到另外10点伤害。
如果玩家B在被手雷击中后只剩下5HP,那么后面扣除10HP就会让玩家B送命,但这时候如果使用user_slap或者set_user_health来扣除10HP,显示在屏幕右上角的都只是玩家B死亡的信息(骷髅头+玩家B),不显示玩家A的名字。如何让这个信息不出现,而出现“玩家A+骷髅头+玩家B”这样的杀人信息呢?
顺便问问:fakedamage这个功能怎么用?

附:
“玩家A+骷髅头+玩家B”信息代码:

public ShowDeathMSG(Killer,Victim,Weapon[])
{
message_begin(MSG_BROADCAST, 83, {0,0,0}, 0)
write_byte(Killer)
write_byte(Victim)
write_byte(0)
write_string(Weapon)
message_end()
new vname, vteam, vauthid
new kname, kteam, kauthid
get_user_name(Victim, vname, 31)
get_user_team(Victim, vteam, 9)
get_user_authid(Victim, vauthid, 31)
get_user_name(Killer, kname, 31)
get_user_team(Killer, kteam, 9)
get_user_authid(Killer, kauthid, 31)
log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"%s^"",
kname, get_user_userid(Killer), kauthid, kteam,
vname, get_user_userid(Victim), vauthid, vteam, Weapon)
}
只要在杀人事件发生后使用这个函数就可以在屏幕右上角显示出“玩家A+骷髅头+玩家B”这样的信息。
页: [1]
查看完整版本: 关于玩家伤害的问题