Implement semi-annual monthly processing

This commit is contained in:
2026-07-25 17:35:16 +00:00
parent cec0ccb1b4
commit 5323c5891d
4 changed files with 690 additions and 0 deletions
+8
View File
@@ -48,6 +48,7 @@ import {
import { createRaiseDisasterHandler } from './monthlyDisasterAction.js';
import { createUpdateCitySupplyHandler } from './monthlyCitySupplyAction.js';
import { createUpdateNationLevelHandler } from './monthlyNationLevelAction.js';
import { createProcessSemiAnnualHandler } from './monthlySemiAnnualAction.js';
import { DatabaseTurnDaemonLease, TurnDaemonLeaseUnavailableError } from '../lifecycle/databaseTurnDaemonLease.js';
export interface TurnDaemonRuntimeOptions {
@@ -201,6 +202,13 @@ const createTurnDaemonRuntimeWithLease = async (
map: snapshot.map,
})
);
eventActions.set(
'ProcessSemiAnnual',
createProcessSemiAnnualHandler({
getWorld: () => worldRef,
nationTraits: nationTraitMap,
})
);
if (reservedTurnStoreHandle) {
eventActions.set(
'UpdateNationLevel',