Strength gets its grip: tear a treasure from a wizard's arms
The card's second power was never built. New tearTreasure command: with STRENGTH on you, in the same square as a carrier, the tear spends your attack; the victim keeps the treasure only on a D4 roll of 1. Per the FAQ it is not a pickup (your turn's actions continue), and full or weakened arms tear it loose onto the floor instead. A torn treasure's warded owner gets their window, blind grabs flail like blind punches, and the automatons wrestle too. A new command breaks no stored ledger, so live games gain the grip at once. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
4a91d56d24
commit
76207c6264
@@ -1021,6 +1021,13 @@
|
||||
);
|
||||
const carryingTreasure = $derived(me?.carriedTreasureId != null);
|
||||
const treasureHere = $derived(treasuresHere.length > 0);
|
||||
/** Co-located carriers STRENGTH lets you wrestle (the tear is an attack). */
|
||||
const tearTargets = $derived(
|
||||
view && me && view.sustained.some((e) => e.cardId === "strength" && e.targetId === view.you)
|
||||
? view.players.filter((p) => p.alive && p.id !== view.you && p.carriedTreasureId &&
|
||||
cellKey(p.position) === cellKey(me!.position))
|
||||
: [],
|
||||
);
|
||||
/** Squares a selected L.O.S./ADJACENT card can reach; null = no dimming. */
|
||||
// While an LOS attack sits on the stack, draw the line it traveled — the
|
||||
// answer to "how can he even see me?" when sight ran through a warp mouth.
|
||||
@@ -2120,6 +2127,11 @@
|
||||
onclick={() => dispatch({ type: "pickUpObject", instanceId: obj.instanceId })}>
|
||||
Pick up {cardDef(obj.cardId).name}</button>
|
||||
{/each}
|
||||
{#each tearTargets as t (t.id)}
|
||||
<button class="stamp" disabled={view.turn.attackUsed || view.turn.round === 1}
|
||||
onclick={() => dispatch({ type: "tearTreasure", targetId: t.id })}>
|
||||
Tear the treasure from {t.id}'s arms</button>
|
||||
{/each}
|
||||
<button class="stamp" class:primary={punchWallMode} disabled={view.turn.attackUsed && !punchWallMode}
|
||||
onclick={() => (punchWallMode = !punchWallMode)}>
|
||||
{punchWallMode ? "Click the wall to punch — or cancel" : "Punch a wall…"}</button>
|
||||
|
||||
Reference in New Issue
Block a user