Support legacy CreateAdminNPC no-op

This commit is contained in:
2026-07-25 17:50:16 +00:00
parent 0b3bf618ea
commit 3cf5a66c77
3 changed files with 78 additions and 0 deletions
@@ -0,0 +1,5 @@
import type { MonthlyEventActionHandler } from './monthlyEventHandler.js';
// 레거시 CreateAdminNPC::run()은 [class, "NYI"]만 반환하고 어떤 상태도
// 변경하지 않는다. 새 관리자 NPC를 임의로 만들지 않고 no-op 계약을 보존한다.
export const createCreateAdminNpcHandler = (): MonthlyEventActionHandler => () => undefined;
+2
View File
@@ -50,6 +50,7 @@ import { createUpdateCitySupplyHandler } from './monthlyCitySupplyAction.js';
import { createUpdateNationLevelHandler } from './monthlyNationLevelAction.js';
import { createProcessSemiAnnualHandler } from './monthlySemiAnnualAction.js';
import { createProcessWarIncomeHandler } from './monthlyWarIncomeAction.js';
import { createCreateAdminNpcHandler } from './monthlyCreateAdminNpcAction.js';
import { DatabaseTurnDaemonLease, TurnDaemonLeaseUnavailableError } from '../lifecycle/databaseTurnDaemonLease.js';
export interface TurnDaemonRuntimeOptions {
@@ -217,6 +218,7 @@ const createTurnDaemonRuntimeWithLease = async (
nationTraits: nationTraitMap,
})
);
eventActions.set('CreateAdminNPC', createCreateAdminNpcHandler());
if (reservedTurnStoreHandle) {
eventActions.set(
'UpdateNationLevel',