Integrate CHOAM Nexus Cunning Kull with source-aware costs

This commit is contained in:
Quintine committed 2026-10-01 06:06:03 +10:00
1 parent fc5cbcd720
commit 0d9d0a72d6
32 files changed
+2502 -193

No files matched your search

+11
View File
@@ -152,6 +152,17 @@ export function kullNativeCostCards(
!reservedIds.includes(card.id) && uniquelyHeld(card, held, physicalCards));
}
/** Any canonical held Treachery card can pay Nexus Kull.
* Nexus authority, timing and live promise eligibility belong to the caller. */
export function kullNexusCostCards(
held: readonly Card[],
physicalCards: readonly Card[],
reservedIds: readonly string[] = [],
): Card[] {
return held.filter(card => card && !reservedIds.includes(card.id) &&
uniquelyHeld(card, held, physicalCards));
}
/** The caller supplies effective eligibility (BG, Shrine, phase bans and live reservations).
* This helper never reads a Game or infers activatability from a printed card alone. */
export function kullCounterCards(