Admit clean Ix Stone and Mirror with existing revealed priorities
This commit is contained in:
1 parent
842fd72761
commit
f50dda6078
16 files changed
+411
-54
No files matched your search
@@ -3,6 +3,7 @@ import type { FactionId } from './catalog';
|
||||
const supported = new Set<FactionId>([
|
||||
'atreides', 'harkonnen', 'emperor', 'guild', 'beneGesserit', 'fremen',
|
||||
'choam', 'richese', 'ecaz', 'moritani',
|
||||
'ixians', 'tleilaxu',
|
||||
]);
|
||||
|
||||
/** Public configuration only: never inspect an opponent's hand or sealed plan. */
|
||||
@@ -15,12 +16,16 @@ export function mirrorWeaponModeBlock(g: {
|
||||
leaderSkills?: unknown;
|
||||
discoveries?: unknown;
|
||||
sandtrout?: boolean;
|
||||
techTokens?: unknown;
|
||||
strongholdCards?: unknown;
|
||||
}): string | null {
|
||||
if (!g.expansions.includes('choam') ||
|
||||
g.expansions.some(id => id !== 'choam' && id !== 'ecaz') ||
|
||||
g.expansions.some(id => id !== 'choam' && id !== 'ecaz' && id !== 'ix') ||
|
||||
(g.expansions.includes('ecaz') && g.advanced !== true) ||
|
||||
g.players.some((p) => !supported.has(p.faction)))
|
||||
return 'Mirror Weapon currently needs CHOAM/Richese with classic or native Ecaz/Moritani factions; Ix timing remains unresolved.';
|
||||
return 'Mirror Weapon needs selected CHOAM/Richese with supported native factions; Ecaz/Moritani combinations require Advanced.';
|
||||
if (g.expansions.includes('ix') && (g.techTokens || g.strongholdCards))
|
||||
return 'Ix-deck Stone/Mirror with Tech Tokens or Stronghold Cards remains outside this clean profile.';
|
||||
if (g.homeworlds || g.nexusCards || g.leaderSkills || g.discoveries || g.sandtrout)
|
||||
return 'Mirror Weapon with combined optional modules is still being integrated.';
|
||||
return null;
|
||||
|
||||
Reference in new issue
Block a user