The reflected-attack window (rules rev 25)
A FULL REFLECTION's returned spell is a fresh attack on its own caster — who, per the owner's ruling, gets a defender's counteraction window against it (absorb the blast, shield it, or FULL REFLECTION again: the ping-pong war ends when the cards run out). The reflection now settles into a new stack with the roles swapped and the damage pre-priced (numbers, amplifies, and surviving counters already applied); the blow returns to its sender unerringly, with no fresh hit rolls. onResolved effects run with the swapped roles, so a reflected IDIOT now afflicts its own caster. Earlier revisions land the blow instantly and stored games replay unchanged. Automatons price the incoming reflected damage off the stack; the attack modal announces 'Your own spell comes screaming back!' with the inbound total. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0138A8CjeQRpvzKxuMfz1Bqc
This commit is contained in:
co-authored by
Claude Fable 5
parent
dcaf358a93
commit
06faea0c79
@@ -1095,6 +1095,8 @@
|
||||
<div class="attack-headline">
|
||||
{#if view.stack.defenderId === view.you && attackingCreature}
|
||||
<strong>{view.stack.attackerId}</strong>'s {cardDef(attackingCreature.kind).name} attacks you!
|
||||
{:else if view.stack.defenderId === view.you && view.stack.reflectedBase}
|
||||
Your own spell comes screaming back!
|
||||
{:else if view.stack.defenderId === view.you}
|
||||
<strong>{view.stack.attackerId}</strong> attacks you!
|
||||
{:else}
|
||||
@@ -1115,7 +1117,11 @@
|
||||
{:else}
|
||||
<div class="attack-card"><Card card={view.stack.attackCard} /></div>
|
||||
{/if}
|
||||
{#if view.stack.numberValue != null || view.stack.amplifyFactor > 1}
|
||||
{#if view.stack.reflectedBase}
|
||||
<div class="attack-power">
|
||||
REFLECTED — {view.stack.reflectedBase.damage} damage inbound unless you answer it
|
||||
</div>
|
||||
{:else if view.stack.numberValue != null || view.stack.amplifyFactor > 1}
|
||||
<div class="attack-power">
|
||||
{view.stack.numberValue != null ? `powered by a ${view.stack.numberValue}` : ""}
|
||||
{view.stack.amplifyFactor > 1 ? ` — AMPLIFIED ×${view.stack.amplifyFactor}` : ""}
|
||||
|
||||
Reference in New Issue
Block a user