Exercise combined expansion Nexus games and saved continuation
This commit is contained in:
1 parent
c6784468a1
commit
068da48734
5 files changed
+81
-22
No files matched your search
@@ -6716,6 +6716,22 @@ export function initializePairedNexusGameForAudit(state: Game): Game {
|
||||
return initializeSetupGameForAudit(state, false, true, false, false, false, false, true);
|
||||
}
|
||||
|
||||
/** Offline-only all-expansion Nexus composition; not a public start gate. */
|
||||
export function initializeCombinedNexusGameForAudit(state: Game): Game {
|
||||
requireRule(state.expansions.length === 3 &&
|
||||
['ix', 'choam', 'ecaz'].every(expansion => state.expansions.includes(expansion)) &&
|
||||
[5, 6].includes(state.players.length) &&
|
||||
state.players.every(player => ['ixians', 'tleilaxu', 'choam', 'richese', 'ecaz', 'moritani'].includes(player.faction)) &&
|
||||
['ixians', 'tleilaxu', 'choam', 'ecaz', 'moritani']
|
||||
.every(faction => state.players.some(player => player.faction === faction)),
|
||||
'The combined Nexus sample requires five or six expansion factions and their three decks.');
|
||||
requireRule(!!state.nexusCards && state.nexusCards.cards === null && state.nexusCards.phase === null &&
|
||||
!state.homeworlds && !state.leaderSkills && !state.discoveryEnabled &&
|
||||
!state.ecazTreachery && !state.techTokens && !state.strongholdCards,
|
||||
'Enable only Nexus Cards in a fresh combined expansion lobby.');
|
||||
return initializeSetupGameForAudit(state, false, true, false, false, false, false, true);
|
||||
}
|
||||
|
||||
/** Offline prototype entry through real Ix setup, including both expansion factions.
|
||||
* No player action or room API bypasses the normal release gates. */
|
||||
export function initializeIxGameForAudit(state: Game): Game {
|
||||
|
||||
Reference in new issue
Block a user