feedback3 WF: a 傀儡师 leaves every switch at full HP (PRTS: the HP is reset during the switch, 不死 throughout) — a second 阿戈尔 devour mark inside the 1-s switch no longer leaves 归溟幽灵鲨's 替身 at 1 HP (community report #2)
This commit is contained in:
1 parent
21eb496e02
commit
e376cff5a8
3 files changed
+42
-3
No files matched your search
@@ -128,15 +128,24 @@ const installDollkeeper = (battle, unit) => {
|
||||
};
|
||||
const at = (extra) => ({ x: unit.x, y: unit.y, id: unit.id, ...extra });
|
||||
// a switch animation: "切换动画开始时会清除自身一切Buff" (header: the running skill and the statuses), then 1 s of 不死
|
||||
// (the fatal hook below) 无敌 阻回 禁疗 孤立 强制缴械 and 眩晕 / 冻结 / 睡眠 immunity (beforeStatus below)
|
||||
// (the fatal hook below) 无敌 阻回 禁疗 孤立 强制缴械 and 眩晕 / 冻结 / 睡眠 immunity (beforeStatus below). "切换途中重设自身
|
||||
// 生命至最大值": the HP is set to the max at the start (enter / leave) and again when the switch ends, so she always
|
||||
// leaves it at full HP — a lethal 流失 inside the switch (无敌 does not stop it, 不死 holds it at 1 HP: a later 阿戈尔
|
||||
// devour mark on her) used to leave her the 替身's 20 s at 1 HP (community report #2)
|
||||
const startSwitch = () => {
|
||||
const sk = unit.skill;
|
||||
if (sk && sk.active && sk.kind !== 'passive') sk.end('substitute');
|
||||
for (const b of unit.buffs.slice()) if (b.status) battle.removeBuff(unit, b);
|
||||
unit.trait.dollSwitching = true;
|
||||
const done = () => { unit.trait.dollSwitching = false; };
|
||||
const ended = () => {
|
||||
done();
|
||||
if (!unit.alive || !unit.deployed) return;
|
||||
unit.markDirty();
|
||||
unit.hp = unit.s.maxHp;
|
||||
};
|
||||
battle.addBuff(unit, {
|
||||
key: 'trait:dollSwitching', duration: DOLL_SWITCH, onExpire: done, onRemove: done,
|
||||
key: 'trait:dollSwitching', duration: DOLL_SWITCH, onExpire: ended, onRemove: done,
|
||||
flags: { invulnerable: true, noSp: true, noHeal: true, isolated: true, disarm: true },
|
||||
});
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user