Restore ordinary Skills in bounded Guild Betrayal composition

This commit is contained in:
Quintine committed 2026-10-13 19:19:05 +11:00
1 parent 9fb680da09
commit ea12a68e56
12 files changed
+637 -11

No files matched your search

+5 -4
View File
@@ -18,6 +18,7 @@ import {
initializeRicheseBetrayalGameForAudit,
initializeNexusKullGameForAudit,
initializeGuildBetrayalGameForAudit,
initializeGuildBetrayalLeaderSkillsGameForAudit,
initializeIxianNexusReplacementGameForAudit,
initializeIxianNexusBetrayalGameForAudit,
initializeHarkonnenNexusBetrayalGameForAudit,
@@ -55,7 +56,7 @@ export type PrototypeOptions = {
nexusCards?: boolean;
/** Explicit classic Discovery/Skills composition, not a public activation. */
discoveries?: boolean;
/** Explicit original skills with Semuta or classic Homeworld occupation. */
/** Explicit original skills with Semuta, classic occupation or Guild Betrayal. */
leaderSkills?: boolean;
/** Original Richese/CHOAM and classic Homeworld occupation with Semuta only. */
homeworlds?: boolean;
@@ -104,8 +105,8 @@ export function startPrototypeRoom(
throw new Error('--nexus-cards requires the leader-skills or semuta profile.');
if (options.discoveries && profile !== 'leader-skills' && profile !== 'nexus')
throw new Error('--discoveries requires the leader-skills or nexus profile.');
if (options.leaderSkills && profile !== 'semuta' && profile !== 'homeworld-occupation')
throw new Error('--leader-skills requires the semuta or homeworld-occupation profile.');
if (options.leaderSkills && profile !== 'semuta' && profile !== 'homeworld-occupation' && profile !== 'guild-betrayal')
throw new Error('--leader-skills requires the semuta, homeworld-occupation or guild-betrayal profile.');
if (options.homeworlds && profile !== 'semuta')
throw new Error('--homeworlds requires the semuta profile.');
if (options.ecazTreachery) initial.ecazTreachery = true;
@@ -144,7 +145,7 @@ export function startPrototypeRoom(
nexusCards: initial.nexusCards ?? { cards: null, phase: null },
})
: profile === 'guild-betrayal'
? initializeGuildBetrayalGameForAudit({
? (options.leaderSkills ? initializeGuildBetrayalLeaderSkillsGameForAudit : initializeGuildBetrayalGameForAudit)({
...initial,
nexusCards: initial.nexusCards ?? { cards: null, phase: null },
})