feedback1 integrate: no status on a 无敌 + 无法选中 unit; 余 S2 skips 自缚 units; 信仰搅拌机 S2 blocks with too few bullets
- Battle.applyStatus: a unit both invulnerable and untargetable takes no status from the other side (PRTS 无敌 "无法被不同阵营选中"), so the status carried by the hit that knocks an enemy out (妮芙 S2's fear, a 叙拉古 proc) no longer lands after its 重生 cleanse. - Flag selfBound (自缚: 守墓石像's 转换模式, the 自缚 leaders, the 胄 parts' anchor): 余 S2 never teleports such a unit (PRTS 余 S2 备注 "持有自缚的单位不视为可达目标"). - 信仰搅拌机 S2: with fewer than ammo_cost bullets the lethal hit is still blocked, every bullet goes and the skill ends; it steps aside while 坚固维式重锤's 不死 window holds her (PRTS 备注), replacing the [ASSUMED] no-guard rule.
This commit is contained in:
1 parent
f142012033
commit
94a99a3b1a
11 files changed
+153
-13
No files matched your search
@@ -199,10 +199,12 @@ function cleanseAbnormal(battle, u) {
|
||||
}
|
||||
/**
|
||||
* "传送至自身位置": a ground enemy that can reach `unit`'s tile on the ground grid is moved onto it (unblocked, its
|
||||
* route re-planned from there — the engine then blocks it on that tile when capacity allows). Flyers / bosses stay.
|
||||
* route re-planned from there — the engine then blocks it on that tile when capacity allows). Flyers / bosses stay, and
|
||||
* so does a 自缚 unit (flag `selfBound`, e.g. 守墓石像's 转换模式): PRTS 余 S2 备注 "处于消失状态的/持有自缚的单位不视为可达
|
||||
* 目标" (束缚 alone does not exempt it, so not `noMove`).
|
||||
*/
|
||||
function teleportEnemy(battle, unit, e) {
|
||||
if (!e || !e.alive || e.isFlying || e.isBoss) return false;
|
||||
if (!e || !e.alive || e.isFlying || e.isBoss || e.s.flags.selfBound) return false;
|
||||
const r = unit.tileR, c = unit.tileC;
|
||||
if (!battle.grid.groundPassable(r, c)) return false;
|
||||
const er = Math.round(e.y), ec = Math.round(e.x);
|
||||
|
||||
Reference in new issue
Block a user