引用 | 編輯
可乐渴了
2020-02-20 14:08 |
樓主
▼ |
||
x0
*授人以魚不如授人以漁*教程的代碼未經測試 慎用 今天教大家如何寫壹個傷害顯示 壹個比較實用的功能 // 請尊重原創者,不要擅自修改 #define PLUGIN_NAME "Show Damage" #define PLUGIN_VERSION "1.0" #define PLUGIN_AUTHOR "Zapdos" public plugin_init() { register_plugin(PLUGIN_NAME, PLUGIN_VERSION, PLUGIN_AUTHOR) RegisterHam(Ham_TakeDamage, "player", "fw_TakeDamage") // 首先我們需要註冊壹個傷害事件 } public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // 如果是自我造成傷害或者不是連接的玩家攻擊 if (attacker == victim || !is_user_connected(attacker)) return HAM_IGNORED // 阻止往下執行 // 這裏設置輸出信息的顏色和xy坐標 (我采用了隨機顏色) set_hudmessage(random(256), random(256), random(256), 0.50, 0.40 , 2, 0.1, 4.0, 0.02, 0.02, -1) show_hudmessage(attacker, "%d", floatround(damage)) // 只讓攻擊者顯示傷害提示 將浮點化為整數 return HAM_IGNORED // 以防萬壹 } *壹個傷害顯示就完成啦! 有什麽問題或者不懂的請留言 *如果是希望壹起合作寫程序碼請信件我 *最後說壹句 希望妳們每天開開心心 x1
|
引用 | 編輯
dw312382354
2020-03-10 11:22 |
1樓
▲ ▼ |
你这个只有攻击者能看到攻击别人的伤害
那我想当我是受害者的时候怎么显示攻击我的人的名字 还有ta对我的伤害? x0 |
引用 | 編輯
dw312382354
2020-03-18 01:22 |
4樓
▲ ▼ |
下面是引用 弒血 於 2020-03-11 16:17 發表的 : 为啥不行啊? new attacker = get_user_attacker(victim),damage = read_data(2),name[32],name2[32] get_user_name(attacker, name, 31) // get hud msg get_user_name(victim, name2, 31) // get hud msg if (!is_user_connected(attacker) || !is_user_connected(victim) || victim == attacker) return if (attacker) { set_hudmessage(0, 0, 255, -1.0, 0.55, 2, 0.1, 2.0, 0.1, 0.1, -1) show_hudmessage(attacker, "%d^n%s", damage, name2) } else if (victim) { set_hudmessage(255, 0, 0, -1.0, 0.55, 2, 0.1, 2.0, 0.1, 0.1, -1) show_hudmessage(victim, "%d^n%s",damage, name) } x0 |
引用 | 編輯
弒血
2020-03-18 01:37 |
5樓
▲ ▼ |
下面是引用 dw312382354 於 2020-03-18 01:22 發表的 : public fw_TakeDamage(victim, inflictor, attacker, Float:damage, damage_type) { // 如果是自我造成傷害或者不是連接的玩家攻擊 if (attacker == victim || !is_user_connected(attacker)) return HAM_IGNORED // 阻止往下執行 } 不用再取得new attacker = get_user_attacker(victim) x0 |
引用 | 編輯
dw312382354
2020-03-18 20:23 |
6樓
▲ ▼ |
下面是引用 弒血 於 2020-03-18 01:37 發表的 :上面有这个判断啊。 我就想知道打别人显示 当自己受伤是不显示。哪里不行。 x0 |