Project1
标题: YEP_BuffStatesCore中由哪两个变量控制攻击者和被攻击者? [打印本页]
作者: [email protected] 时间: 2024-3-26 13:56
标题: YEP_BuffStatesCore中由哪两个变量控制攻击者和被攻击者?
本帖最后由 [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>
作者: qq302849815 时间: 2024-3-26 14:51
攻击方对象:user
防守方对象:target
状态来源对象:origin
更改hp用这个:target.gainHp();
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |