Add fourth Meng Huo capture battle

This commit is contained in:
2026-06-23 23:04:23 +09:00
parent aa152d827c
commit b56f613e9f
12 changed files with 997 additions and 159 deletions

View File

@@ -3,6 +3,10 @@ import {
fiftiethBattleMap,
fiftiethBattleUnits,
fiftiethBattleVictoryPages,
fiftyFirstBattleBonds,
fiftyFirstBattleMap,
fiftyFirstBattleUnits,
fiftyFirstBattleVictoryPages,
firstBattleBonds,
fifteenthBattleBonds,
fifteenthBattleMap,
@@ -255,7 +259,8 @@ export type BattleScenarioId =
| 'forty-seventh-battle-nanzhong-stabilization'
| 'forty-eighth-battle-meng-huo-main-force'
| 'forty-ninth-battle-meng-huo-second-capture'
| 'fiftieth-battle-meng-huo-third-capture';
| 'fiftieth-battle-meng-huo-third-capture'
| 'fifty-first-battle-meng-huo-fourth-capture';
export type BattleObjectiveKind = 'defeat-leader' | 'pacify-leader' | 'keep-unit-alive' | 'secure-terrain' | 'quick-victory';
@@ -3247,6 +3252,73 @@ export const fiftiethBattleScenario: BattleScenarioDefinition = {
nextCampScene: 'CampScene'
};
export const fiftyFirstBattleScenario: BattleScenarioDefinition = {
id: 'fifty-first-battle-meng-huo-fourth-capture',
title: '칠종칠금 4차전',
victoryConditionLabel: '맹획 네 번째 생포와 회유 퇴로 유지',
defeatConditionLabel: '제갈량 퇴각',
openingObjectiveLines: [
'세 번째 생포 뒤 호족 회의에서 열어 둔 퇴로가 이번 전장의 핵심입니다. 물러설 뜻이 있는 호족을 몰살하면 남중은 다시 모두 적이 됩니다.',
'오돌골의 등갑병과 독천 제사장들이 화덕 주변을 지키고 있습니다. 화덕 요새를 제압하되 마을과 포로장을 지켜, 촉한군의 약속이 전투 중에도 지켜진다는 것을 보여야 합니다.',
'제갈량은 반드시 생존해야 합니다. 마량으로 호족 문서를 전하고, 황권과 왕평으로 장부와 퇴로를 지키며, 마초와 마대로 추격선을 조절하십시오.'
],
map: fiftyFirstBattleMap,
units: fiftyFirstBattleUnits,
bonds: fiftyFirstBattleBonds,
mapTextureKey: 'battle-map-fifty-first',
leaderUnitId: 'menghuo-fourth-leader',
quickVictoryTurnLimit: 94,
baseVictoryGold: 12280,
objectives: [
{
id: 'pacify-meng-huo-fourth',
kind: 'pacify-leader',
label: '맹획 네 번째 생포',
rewardGold: 8420,
unitId: 'menghuo-fourth-leader'
},
{
id: 'zhuge-liang',
kind: 'keep-unit-alive',
label: '제갈량 생존',
rewardGold: 2140,
unitId: 'zhuge-liang'
},
{
id: 'amnesty-route',
kind: 'secure-terrain',
label: '회유 퇴로 유지',
rewardGold: 4140,
terrain: 'road'
},
{
id: 'captive-camps',
kind: 'secure-terrain',
label: '포로장 보증 유지',
rewardGold: 3360,
terrain: 'camp'
},
{
id: 'fire-forts',
kind: 'secure-terrain',
label: '화덕 요새 제압',
rewardGold: 3640,
terrain: 'fort'
},
{
id: 'quick',
kind: 'quick-victory',
label: '94턴 이내 네 번째 생포',
rewardGold: 2780,
maxTurn: 94
}
],
defeatConditions: [{ kind: 'unit-defeated', unitId: 'zhuge-liang' }],
itemRewards: ['콩 66', '상처약 50', '탁주 22', '호족 보증 장부 1', '회유 퇴로 표식 1'],
victoryPages: fiftyFirstBattleVictoryPages,
nextCampScene: 'CampScene'
};
export const defaultBattleScenarioId: BattleScenarioId = firstBattleScenario.id;
export const battleScenarios: Record<BattleScenarioId, BattleScenarioDefinition> = {
@@ -3299,7 +3371,8 @@ export const battleScenarios: Record<BattleScenarioId, BattleScenarioDefinition>
'forty-seventh-battle-nanzhong-stabilization': fortySeventhBattleScenario,
'forty-eighth-battle-meng-huo-main-force': fortyEighthBattleScenario,
'forty-ninth-battle-meng-huo-second-capture': fortyNinthBattleScenario,
'fiftieth-battle-meng-huo-third-capture': fiftiethBattleScenario
'fiftieth-battle-meng-huo-third-capture': fiftiethBattleScenario,
'fifty-first-battle-meng-huo-fourth-capture': fiftyFirstBattleScenario
};
export const defaultBattleScenario = battleScenarios[defaultBattleScenarioId];