加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 [email protected] 于 2024-3-26 14:02 编辑
RT,因为YEP_BuffStatesCore的说明中没有明确声明攻击者和被攻击者,有Attacker和Defender但尝试过这两个变量,好像并没有生效;
以及游戏伤害公式里的a和b好像也不能表示攻击者和被攻击者,在代码里重新声明a = getCurrentAttacker();b = this;好像也不生效。
想通过YEP_BuffStatesCore制作一个状态,当同时检测到当前目标存在9号状态和12号状态时,获得13号状态并消除9号状态和12号状态。当检测到单位身上有13号状态时,立即造成5次攻击者物理攻击*0.35的物理伤害,随后消除13号状态。
所以这种情况应该要怎么写?下面是我的代码,但是好像并不能生效。
问题主要在13号状态的代码上,9号和12号状态的代码是没有问题的。13号代码不清楚是否造成伤害,因为之前测试的时候好像确实有消除13号状态但是没有显示伤害的数值。
这是9号和12号状态注释下的代码:
<Custom Apply Effect> if (this.isStateAffected(12)) { this.addState(13); this.removeState(12); this.removeState(9); } </Custom Apply Effect>
<Custom Apply Effect>
if (this.isStateAffected(12)) {
this.addState(13);
this.removeState(12);
this.removeState(9);
}
</Custom Apply Effect>
<Custom Apply Effect> if (this.isStateAffected(9)) { this.addState(13); this.removeState(9); this.removeState(12); } </Custom Apply Effect>
<Custom Apply Effect>
if (this.isStateAffected(9)) {
this.addState(13);
this.removeState(9);
this.removeState(12);
}
</Custom Apply Effect>
这是13号状态注释下的代码:
<Custom Apply Effect> for (let i = 0; i < 5; i++) { let damage = Attacker.atk * 0.75 - Defender.def; damage = damage > 0 ? damage : 0; Defender.hp -= damage; Defender.displayDamage(Defender, damage); } Defender.removeState(13); </Custom Apply Effect>
<Custom Apply Effect>
for (let i = 0; i < 5; i++) {
let damage = Attacker.atk * 0.75 - Defender.def;
damage = damage > 0 ? damage : 0;
Defender.hp -= damage;
Defender.displayDamage(Defender, damage);
}
Defender.removeState(13);
</Custom Apply Effect>
|