feat: #80 + #81 alliances & space program — 13th & 14th abilities (v0.45.0)
CI / build + unit + e2e (pull_request) Successful in 2m20s
CI / build + unit + e2e (pull_request) Successful in 2m20s
#80: TurnResult.alliances — form/break durable mutual-defense pacts (GameState.alliances; pair relation → ally/neutral, an active war overrides). #81: TurnResult.space — launch/deorbit satellites (GameState.satellites; +1 stability per active satellite per turn). Both appended last to the ABILITIES registry (entries 13 & 14, after contested); durable in SQLite via the stateFields loop, mirrored to regionStats, stats re-derived. System + user prompt goldens updated; 738 unit tests passing.
This commit is contained in:
@@ -26,6 +26,8 @@ import { disasters } from './disasters';
|
||||
import { migration } from './migration';
|
||||
import { sea } from './sea';
|
||||
import { contested } from './contested';
|
||||
import { alliances } from './alliances';
|
||||
import { space } from './space';
|
||||
import type { Ability, AbilityField } from './types';
|
||||
|
||||
/**
|
||||
@@ -49,6 +51,8 @@ export const ABILITIES: readonly Ability<AbilityField>[] = [
|
||||
migration,
|
||||
sea,
|
||||
contested,
|
||||
alliances,
|
||||
space,
|
||||
];
|
||||
|
||||
// ── type re-exports ────────────────────────────────────────────────────────────
|
||||
@@ -185,3 +189,23 @@ export {
|
||||
CONTESTED_STROKE,
|
||||
contestedTooltipLabel,
|
||||
} from './contested';
|
||||
|
||||
// ── alliances (mutual-defense treaties) ──────────────────────────────────────
|
||||
|
||||
export {
|
||||
validateAlliancesOps,
|
||||
applyAlliances,
|
||||
freshAllianceId,
|
||||
} from './alliances';
|
||||
|
||||
// ── space (satellites) ───────────────────────────────────────────────────────
|
||||
|
||||
export {
|
||||
validateSpaceOps,
|
||||
applySpaceControl,
|
||||
applySatelliteBonuses,
|
||||
SATELLITE_STABILITY_BONUS,
|
||||
SATELLITE_TYPES,
|
||||
isSatelliteType,
|
||||
freshSatelliteId,
|
||||
} from './space';
|
||||
|
||||
Reference in New Issue
Block a user