Rev 21: collapsing walls crush anyone — monsters included

DESTROY WALL's "anyone in either square next to the wall takes 4
points" swept only wizards; a troll leaned on the falling masonry
untouched. The expansion sheet is explicit — "if a card specifies
'Opponent' or 'Anyone' as a target, this includes Monsters" — so the
collapse now crushes creatures in both squares, at the rim breach's
far side too. Earlier ledgers keep their charmed monsters.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Eric Wagoner
2026-08-17 17:47:14 -04:00
co-authored by Claude Fable 5
parent 6380fae134
commit 7df58d29fa
4 changed files with 61 additions and 2 deletions
+16
View File
@@ -1108,6 +1108,13 @@ const CARD_EFFECTS: Record<string, AttackEffect | NeutralEffect | CounterEffect>
applyDamage(state, events, p, 4, "collapsing wall", caster.id, "physical");
}
}
if ((state.config.deckRev ?? 1) >= 21) {
for (const cr of [...state.creatures]) {
if (cellKey(cr.position) === cellKey(far.cell)) {
damageCreature(state, events, cr, 4, "collapsing wall");
}
}
}
state.board.warps.push(
{ from: { cell, side }, to: { cell: far.cell, side: far.side } },
{ from: { cell: far.cell, side: far.side }, to: { cell, side } },
@@ -1121,6 +1128,15 @@ const CARD_EFFECTS: Record<string, AttackEffect | NeutralEffect | CounterEffect>
applyDamage(state, events, p, 4, "collapsing wall", caster.id, "physical");
}
}
// "Anyone in either square" includes monsters — the expansion sheet
// says so in as many words (rules rev 21).
if ((state.config.deckRev ?? 1) >= 21) {
for (const cr of [...state.creatures]) {
if (cellKey(cr.position) === cellKey(c)) {
damageCreature(state, events, cr, 4, "collapsing wall");
}
}
}
}
checkVictory(state, events);
return null;