fix: 단일 잔존 국가 임관 금지를 연결한다

마지막 도시 점령으로 국가가 삭제되면 destroy_nation 시나리오 이벤트를 같은 턴 경계에서 실행한다. Ref와 같이 잔존국 scout를 금지로 바꾸고 일회성 이벤트를 삭제하되 정책 변경 잠금은 설정하지 않는다.
This commit is contained in:
2026-08-23 11:08:30 +00:00
parent 51ca5e9d70
commit 4d424d16c6
11 changed files with 209 additions and 6 deletions
@@ -916,6 +916,7 @@ export const createReservedTurnHandler = async (options: {
const createdGenerals: TurnGeneral[] = [];
const createdNations: Nation[] = [];
const commandDeletedTroopIds = new Set<number>();
const destroyedNationIds = new Set<number>();
let currentGeneral = context.general;
let currentCity = context.city;
@@ -1309,6 +1310,9 @@ export const createReservedTurnHandler = async (options: {
}
logs.push(...resolution.logs);
for (const nationId of resolution.destroyedNationIds ?? []) {
destroyedNationIds.add(nationId);
}
if (worldOverlay) {
worldOverlay.syncGeneral(currentGeneral);
if (currentCity) {
@@ -2166,6 +2170,7 @@ export const createReservedTurnHandler = async (options: {
},
}
: undefined),
...(destroyedNationIds.size > 0 ? { destroyedNationIds: [...destroyedNationIds] } : undefined),
lifecycleEvent: {
generalId: currentGeneral.id,
outcome: lifecycleOutcome,