From a7397c2e0b5e6d8562045af800fe157e1f919829 Mon Sep 17 00:00:00 2001 From: Wickedness Date: Thu, 9 Jul 2026 14:15:47 +0900 Subject: [PATCH] Expose sortie recommendation completion --- scripts/verify-flow.mjs | 1 + src/game/scenes/CampScene.ts | 2 ++ 2 files changed, 3 insertions(+) diff --git a/scripts/verify-flow.mjs b/scripts/verify-flow.mjs index f933745..5062d9c 100644 --- a/scripts/verify-flow.mjs +++ b/scripts/verify-flow.mjs @@ -9629,6 +9629,7 @@ function assertSortieTacticalRoster(state, requiredUnitIds) { typeof state.sortiePlan.recommendedClassSelectedCount !== 'number' || typeof state.sortiePlan.recommendedClassTotal !== 'number' || !Array.isArray(state.sortiePlan.recommendedClassMissingLabels) || + typeof state.sortiePlan.recommendationCoverageComplete !== 'boolean' || typeof state.sortiePlan.reserveTrainingExpPreview !== 'number' || typeof state.sortiePlan.reserveTrainingEquipmentPreview !== 'number' || typeof state.sortiePlan.reserveTrainingBondPreview !== 'number' || diff --git a/src/game/scenes/CampScene.ts b/src/game/scenes/CampScene.ts index a8c2ad5..21d4789 100644 --- a/src/game/scenes/CampScene.ts +++ b/src/game/scenes/CampScene.ts @@ -280,6 +280,7 @@ type SortiePlanSummary = { recommendedClassSelectedCount: number; recommendedClassTotal: number; recommendedClassMissingLabels: string[]; + recommendationCoverageComplete: boolean; deploymentLine: string; recommendationLine: string; recruitedLine: string; @@ -13428,6 +13429,7 @@ export class CampScene extends Phaser.Scene { recommendedClassSelectedCount, recommendedClassTotal: recommendedClasses.length, recommendedClassMissingLabels: missingClassRecommendations.map((entry) => entry.label), + recommendationCoverageComplete: missingRecommended.length === 0 && missingClassRecommendations.length === 0, deploymentLine: roleLine, recommendationLine: recommended.length > 0 ? `추천 무장 ${recommendedSelectedCount}/${recommended.length} · 병종 ${recommendedClassCoverageLine}`