Show reserve training targets in sortie prep

This commit is contained in:
2026-07-09 13:32:39 +09:00
parent 1da92efc88
commit 592ae2f4cf

View File

@@ -13622,16 +13622,17 @@ export class CampScene extends Phaser.Scene {
bg.setStrokeStyle(1, palette.blue, 0.4);
const focus = this.reserveTrainingFocusDefinition();
const reserveCount = this.sortiePlanSummary().reserveCount;
const reserveUnits = this.reserveTrainingPreviewUnits();
const reserveCount = reserveUnits.length;
this.trackSortie(this.add.text(x + 12, y + 7, '대기 훈련', this.textStyle(12, '#f2e3bf', true))).setDepth(depth + 1);
const focusPreview = reserveCount > 0
? `경험 +${focus.expGained} · 장비 +${focus.equipmentExpGained}${focus.bondExpGained ? ` · 공명 +${focus.bondExpGained}` : ''}`
? this.reserveTrainingPreviewLine(reserveUnits, focus)
: '대기 없음';
this.trackSortie(
this.add.text(
x + width - 12,
y + 7,
reserveCount > 0 ? `${reserveCount}명 · ${focusPreview}` : focusPreview,
this.compactText(focusPreview, 34),
this.textStyle(11, reserveCount > 0 ? '#d8b15f' : '#9fb0bf', true)
)
).setOrigin(1, 0).setDepth(depth + 1);
@@ -13656,6 +13657,18 @@ export class CampScene extends Phaser.Scene {
});
}
private reserveTrainingPreviewUnits() {
const selectedIds = new Set(this.selectedSortieUnits().map((unit) => unit.id));
return this.sortieAllies().filter((unit) => !selectedIds.has(unit.id));
}
private reserveTrainingPreviewLine(reserveUnits: UnitData[], focus: CampaignReserveTrainingFocusDefinition) {
const previewNames = reserveUnits.slice(0, 2).map((unit) => unit.name).join(', ');
const remaining = reserveUnits.length > 2 ? `${reserveUnits.length - 2}` : '';
const gainLine = `경험 +${focus.expGained} · 장비 +${focus.equipmentExpGained}${focus.bondExpGained ? ` · 공명 +${focus.bondExpGained}` : ''}`;
return `${previewNames}${remaining} · ${gainLine}`;
}
private nextSortieBriefing() {
const flow = this.currentSortieFlow();
return {