廣告廣告
  加入我的最愛 設為首頁 風格修改
首頁 首尾
 手機版   訂閱   地圖  簡體 
您是第 591 個閱讀者
 
發表文章 發表投票 回覆文章
  可列印版   加為IE收藏   收藏主題   上一主題 | 下一主題   
可乐渴了
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x10 鮮花 x47
分享: 轉寄此文章 Facebook Plurk Twitter 版主評分版主評分 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
推文 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 // 以防萬壹
}


*壹個傷害顯示就完成啦! 有什麽問題或者不懂的請留言
*如果是希望壹起合作寫程序碼請信件我
*最後說壹句 希望妳們每天開開心心


此文章被評分,最近評分記錄
財富:300 (by amore12)



正在制作 Wraith Battle 合作/有意联系我
獻花 x1 回到頂端 [樓 主] From:未知地址 | Posted:2020-02-20 14:08 |
dw312382354
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x5
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

你这个只有攻击者能看到攻击别人的伤害
那我想当我是受害者的时候怎么显示攻击我的人的名字 还有ta对我的伤害?


獻花 x0 回到頂端 [1 樓] From:未知地址 | Posted:2020-03-10 11:22 |
弒血
個人頭像
個人文章 個人相簿 個人日記 個人地圖
社區建設獎 特殊貢獻獎 創作大師獎
小有名氣
級別: 小有名氣 該用戶目前上站
推文 x91 鮮花 x201
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 dw312382354 於 2020-03-10 11:22 發表的 : 到引言文
你这个只有攻击者能看到攻击别人的伤害
那我想当我是受害者的时候怎么显示攻击我的人的名字 还有ta对我的伤害?



很簡單
表情

//新增字串空間32
new name[32];
//取得攻擊者名稱&儲存名稱字串
get_user_name(attacker, name, sizeof name-1);
show_hudmessage(victim, "name [%s] | damage[%d]", name, floatround(damage)) // 只讓受害者顯示攻擊者名稱跟傷害提示 將浮點化為整數


 

此文章被評分,最近評分記錄
財富:300 (by amore12)



目前傳授教學&有興趣者可以信件問我
BOT瞄準攻擊NPC&模仿事件觸發計算出場&插件新增地圖重生位置等等
已修復entity的attachment錯誤問題,開始嘗試寫出各種npc_boss成品
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
獻花 x1 回到頂端 [2 樓] From:臺灣中華電信股份有限公司 | Posted:2020-03-11 16:17 |
可乐渴了
個人頭像
個人文章 個人相簿 個人日記 個人地圖
特殊貢獻獎
初露鋒芒
級別: 初露鋒芒 該用戶目前不上站
推文 x10 鮮花 x47
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片
Re:原创,|伤害显示教材
下面是引用 dw312382354 于 2020-03-10 11:22 发表的 : 到引言文
你这个只有攻击者能看到攻击别人的伤害
那我想当我是受害者的时候怎么显示攻击我的人的名字 还有ta对我的伤害?

弑血大大说的没错哦, 你可以参考他的来。


正在制作 Wraith Battle 合作/有意联系我
獻花 x0 回到頂端 [3 樓] From:未知地址 | Posted:2020-03-11 17:28 |
dw312382354
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x5
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 弒血 於 2020-03-11 16:17 發表的 : 到引言文




很簡單
表情

//新增字串空間32
new name[32];
//取得攻擊者名稱&儲存名稱字串
get_user_name(attacker, name, sizeof name-1);
show_hudmessage(victim, "name [%s] | damage[%d]", name, floatround(damage)) // 只讓受害者顯示攻擊者名稱跟傷害提示 將浮點化為整數


 



为啥不行啊?

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 回到頂端 [4 樓] From:未知地址 | Posted:2020-03-18 01:22 |
弒血
個人頭像
個人文章 個人相簿 個人日記 個人地圖
社區建設獎 特殊貢獻獎 創作大師獎
小有名氣
級別: 小有名氣 該用戶目前上站
推文 x91 鮮花 x201
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 dw312382354 於 2020-03-18 01:22 發表的 : 到引言文


为啥不行啊?
new attacker = get_user_attacker(victim),damage = read_data(2),name[32],name2[32]
get_user_name(attacker, name, 31) // get hud msg
.......



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)



目前傳授教學&有興趣者可以信件問我
BOT瞄準攻擊NPC&模仿事件觸發計算出場&插件新增地圖重生位置等等
已修復entity的attachment錯誤問題,開始嘗試寫出各種npc_boss成品
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
獻花 x0 回到頂端 [5 樓] From:臺灣中華電信股份有限公司 | Posted:2020-03-18 01:37 |
dw312382354
個人文章 個人相簿 個人日記 個人地圖
小人物
級別: 小人物 該用戶目前不上站
推文 x0 鮮花 x5
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 弒血 於 2020-03-18 01:37 發表的 : 到引言文




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 回到頂端 [6 樓] From:未知地址 | Posted:2020-03-18 20:23 |
弒血
個人頭像
個人文章 個人相簿 個人日記 個人地圖
社區建設獎 特殊貢獻獎 創作大師獎
小有名氣
級別: 小有名氣 該用戶目前上站
推文 x91 鮮花 x201
分享: 轉寄此文章 Facebook Plurk Twitter 複製連結到剪貼簿 轉換為繁體 轉換為簡體 載入圖片

下面是引用 dw312382354 於 2020-03-18 20:23 發表的 : 到引言文

上面有这个判断啊。
我就想知道打别人显示 当自己受伤是不显示。哪里不行。



if (attacker != victim)



目前傳授教學&有興趣者可以信件問我
BOT瞄準攻擊NPC&模仿事件觸發計算出場&插件新增地圖重生位置等等
已修復entity的attachment錯誤問題,開始嘗試寫出各種npc_boss成品
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
按這裡檢視影片,登入論壇可以直接觀看
獻花 x0 回到頂端 [7 樓] From:臺灣中華電信股份有限公司 | Posted:2020-03-18 20:40 |

首頁  發表文章 發表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.030787 second(s),query:16 Gzip disabled
本站由 瀛睿律師事務所 擔任常年法律顧問 | 免責聲明 | 本網站已依台灣網站內容分級規定處理 | 連絡我們 | 訪客留言