ADD explains itself instead of dead-ending

Two numbers for movement work by playing them one after another, the
Add spending itself on the second — but clicking the ADD card itself,
the natural first instinct, showed nothing but a cancel button. It
now says how the ride works; a second number without an Add in hand
says what is missing instead of offering a doomed button; and the
button's label says "spends your Add" at the moment it does.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Eric Wagoner
2026-08-17 17:59:39 -04:00
co-authored by Claude Fable 5
parent 7df58d29fa
commit 2ac046611d
+13 -3
View File
@@ -1681,10 +1681,20 @@
clearSelection();
}}>Drop it here</button>
{/if}
{#if selectedCard?.cardId === "add"}
<span> ADD rides a second NUMBER: play one number for movement,
then play another, and the Add spends itself</span>
{/if}
{#if selectedCard && isNumberCard(selectedCard.cardId)}
<button class="stamp tiny" onclick={playNumberForMovement}>
Play for +{cardDef(selectedCard.cardId).value} movement{view.turn.numberPlayedForMovement ? " (uses your Add)" : ""}
</button>
{@const needsAdd = view.turn.numberPlayedForMovement}
{@const haveAdd = view.yourHand.some((c) => c.cardId === "add")}
{#if needsAdd && !haveAdd}
<span> a second movement number needs an ADD card</span>
{:else}
<button class="stamp tiny" onclick={playNumberForMovement}>
Play for +{cardDef(selectedCard.cardId).value} movement{needsAdd ? " (spends your Add)" : ""}
</button>
{/if}
{/if}
<button class="hint-cancel" onclick={clearSelection}>cancel</button>
{/if}