作者:
ghostmote (ghostmote)
2017-08-31 15:18:37※ 引述《reinforce15 (可魯貝洛斯)》之銘言:
: ※ [本文轉錄自 Gossiping 看板 #1Pfw8CCA ]
: 作者: reinforce15 (可魯貝洛斯) 看板: Gossiping
: 標題: Re: [問卦] 寧寧雞寫程式時是用space還是tab縮排
: 時間: Thu Aug 31 13:43:38 2017
: ※ 引述《justwe5566 (傑士塔紗路的老公)》之銘言:
: //
: void DestructibleActor::ReceiveDamage(float sourceDamage)
: {
: //
: auto resolvedDamage = sourceDamage;
: for (const auto& debuf:m_debufs)
: {
: resolvedDamage = debuf.ApplyToDamage(resolvedDamage);
: m_currentHealth -= resolvedDamage
: if (m_currentHealth <= 0.f)
: {
: m_currentHealth = 0.f;
: DestroyMe();
: }
: }
: }
: //
: void DestructibleActor::ReceiveDamage(float sourceDamage)
: {
: //
: auto resolvedDamage = sourceDamage;
: for (const auto& debuf:m_debufs)
: {
: resolvedDamage = debuf.ApplyToDamage(resolvedDamage);
: }
: m_currentHealth -= resolvedDamage
: if (m_currentHealth <= 0.f)
: {
: m_currentHealth = 0.f;
: DestroyMe();
: }
: }
恕刪
雖然照這樣修改可以避免DestroyMe()後再次呼叫
但是這樣一來和原本的邏輯有些許差異
如果debuf.ApplyToDamage後得出的結果會有負值
就有可能造成原本會死亡的結果變成不會
試想原本HP有100
第一個Debuf 扣 200
第二個Debuf 反而加 150
原本的邏輯在第一次傷害後就會觸發 DestroyMe => 角色死亡
但修改後最後HP還剩50 => 角色存活
一點淺見
作者:
lf2597 (灑滿蔥花)
2017-08-31 15:19:00debug版
作者:
linzero (【林】)
2017-08-31 15:21:00有的遊戲是一定時間內持續低於零才判斷死亡,而非一低於零即刻判死。所以是可以把血補回來,比如用外掛或鍵盤精靈之類的
作者:
SuperSg (萌翻天的時代來啦°▽°)
2017-08-31 15:22:00上c洽長姿勢
作者:
bubuegg (優良的蛋)
2017-08-31 15:22:00錯版
作者:
jeeyi345 (letmein)
2017-08-31 15:24:00看動畫只看得懂美少女看不懂內涵 幫QQ
作者:
genesic (嗯?)
2017-08-31 15:27:00debuf可以補血的話會逼死很多命名強迫症
作者:
emptie ([ ])
2017-08-31 15:28:00debuff有的是雙面刃吧 像是回血但是大幅度減少輸出之類的
作者:
diabolica (打回大師å†æ”¹ID)
2017-08-31 15:28:00快推
作者: aspdaspd (勒勒) 2017-08-31 15:33:00
取名都叫debufs了 負面效果才放這個container吧
作者:
genesic (嗯?)
2017-08-31 15:33:00這裡的debuff看起來比較像是會放大受到的傷害因為是在ReceiveDamage的時候用sourceDamage下去計算
作者: aspdaspd (勒勒) 2017-08-31 15:34:00
如果一個狀態同時有增益跟減益 那同理也要有一個m_bufs
作者:
ghostmote (ghostmote)
2017-08-31 15:35:00如果這個function的原作者不是自己,永遠不要相信變數名
作者:
genesic (嗯?)
2017-08-31 15:36:00也不是說算出來一定不會是負值,只是說有命名強迫症的人會寫到全身發癢XD
作者:
arrenwu (鍵盤的戰鬼)
2017-08-31 15:46:00這動畫的內涵不就是美少女嗎? 怎麼會說看不懂
作者:
tw15 (巴拉巴拉)
2017-08-31 15:53:00血線以下不死可以讓其他夥伴過去救援 增加互動性或者讓玩家可以課金讓npc來救援 增加專案不被砍性