feat: port monthly invader lifecycle

This commit is contained in:
2026-07-25 19:19:31 +00:00
parent 15713224f6
commit 7818b52d04
7 changed files with 1497 additions and 4 deletions
@@ -214,6 +214,18 @@ export class InMemoryReservedTurnStore {
this.pendingGeneralInitializationIds.add(generalId);
}
replaceGeneralTurns(generalId: number, entry: ReservedTurnEntry): void {
this.generalTurns.set(
generalId,
Array.from({ length: this.maxGeneralTurns }, () => ({
action: normalizeAction(entry.action),
args: normalizeArgs(entry.args),
}))
);
this.pendingGeneralInitializationIds.delete(generalId);
this.dirtyGeneralIds.add(generalId);
}
ensureNationTurns(nationId: number, officerLevel: number): void {
const key = buildNationKey(nationId, officerLevel);
this.getNationTurns(nationId, officerLevel);