From eea32a70755a50133ffde50ee741290725c75d0c Mon Sep 17 00:00:00 2001 From: Wickedness Date: Thu, 9 Jul 2026 14:07:50 +0900 Subject: [PATCH] Reuse reserve drill plan line --- src/game/scenes/CampScene.ts | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/game/scenes/CampScene.ts b/src/game/scenes/CampScene.ts index 5b716cf..29d4a5c 100644 --- a/src/game/scenes/CampScene.ts +++ b/src/game/scenes/CampScene.ts @@ -12812,7 +12812,7 @@ export class CampScene extends Phaser.Scene { ? hasBattle ? `${roleLabel} · 역할은 중앙 버튼으로 변경` : `${roleLabel} · 의정 역할은 중앙 버튼으로 변경` - : this.reserveTrainingBondPreviewLine(unit) || `${this.campaign?.reserveTrainingAssignments[unit.id] ? '개별' : '기본'} ${this.reserveTrainingFocusDefinitionForUnit(unit.id).label} 예정`; + : this.reserveTrainingPlanLine(unit); this.trackSortie(this.add.text(x + 140, y + height - 24, footerText, this.textStyle(10, selected ? '#a8ffd0' : '#9fb0bf', true))).setDepth(depth + 1); } @@ -13734,6 +13734,13 @@ export class CampScene extends Phaser.Scene { : '공명 대상 없음'; } + private reserveTrainingPlanLine(unit: UnitData) { + if (this.isSortieSelected(unit.id)) { + return ''; + } + return this.reserveTrainingBondPreviewLine(unit) || `${this.campaign?.reserveTrainingAssignments[unit.id] ? '개별' : '기본'} ${this.reserveTrainingFocusDefinitionForUnit(unit.id).label} 예정`; + } + private nextSortieBriefing() { const flow = this.currentSortieFlow(); return { @@ -15171,16 +15178,15 @@ export class CampScene extends Phaser.Scene { const role = this.sortieFormationRole(unit); const roleLabel = this.sortieFormationRoleLabel(role); const recommendation = this.sortieRecommendation(unit.id); - const plannedReserveFocus = !this.isSortieSelected(unit.id) ? this.reserveTrainingFocusDefinitionForUnit(unit.id) : undefined; - const hasIndividualReserveFocus = Boolean(this.campaign?.reserveTrainingAssignments[unit.id]); + const plannedReserveTrainingLine = this.reserveTrainingPlanLine(unit); const bg = this.track(this.add.rectangle(x, y, width, 22, 0x151f2a, 0.82)); bg.setOrigin(0); bg.setStrokeStyle(1, training ? palette.green : palette.blue, training ? 0.5 : 0.34); const planText = recommendation ? this.sortieRecommendationHint(recommendation, unit, 28) : `${roleLabel} 역할로 편성 가능`; const trainingText = training ? `최근 ${training.focusLabel ?? '대기 훈련'} 경험 +${training.expGained}, 장비 +${training.equipmentExpGained}${training.bondExpGained ? `, 공명 +${training.bondExpGained}` : ''}` - : plannedReserveFocus - ? `${hasIndividualReserveFocus ? '개별' : '기본'} ${plannedReserveFocus.label} 예정` + : plannedReserveTrainingLine + ? plannedReserveTrainingLine : '대기 중에도 전투 후 선택한 훈련 방침의 성장이 반영됩니다.'; this.track(this.add.text(x + 12, y + 5, `${status.label} · ${roleLabel}`, this.textStyle(11, status.tone === 'reserve' ? '#9fb0bf' : '#f2e3bf', true))); this.track(this.add.text(x + 112, y + 5, this.compactText(planText, 48), this.textStyle(11, '#d4dce6')));