Add Wuzhang finale and lazy unit loading
This commit is contained in:
@@ -59,6 +59,10 @@ import {
|
||||
sixtyFifthBattleMap,
|
||||
sixtyFifthBattleUnits,
|
||||
sixtyFifthBattleVictoryPages,
|
||||
sixtySixthBattleBonds,
|
||||
sixtySixthBattleMap,
|
||||
sixtySixthBattleUnits,
|
||||
sixtySixthBattleVictoryPages,
|
||||
fiftySeventhBattleBonds,
|
||||
fiftySeventhBattleMap,
|
||||
fiftySeventhBattleUnits,
|
||||
@@ -330,7 +334,8 @@ export type BattleScenarioId =
|
||||
| 'sixty-second-battle-qishan-renewed-offensive'
|
||||
| 'sixty-third-battle-lucheng-pursuit'
|
||||
| 'sixty-fourth-battle-weishui-camps'
|
||||
| 'sixty-fifth-battle-weishui-northbank';
|
||||
| 'sixty-fifth-battle-weishui-northbank'
|
||||
| 'sixty-sixth-battle-wuzhang-final';
|
||||
|
||||
export type BattleObjectiveKind = 'defeat-leader' | 'pacify-leader' | 'keep-unit-alive' | 'secure-terrain' | 'quick-victory';
|
||||
|
||||
@@ -4407,6 +4412,73 @@ export const sixtyFifthBattleScenario: BattleScenarioDefinition = {
|
||||
nextCampScene: 'CampScene'
|
||||
};
|
||||
|
||||
export const sixtySixthBattleScenario: BattleScenarioDefinition = {
|
||||
id: 'sixty-sixth-battle-wuzhang-final',
|
||||
title: '오장원 최종전',
|
||||
victoryConditionLabel: '오장원 본영 방어와 장부 계승 확보',
|
||||
defeatConditionLabel: '제갈량 퇴각 또는 귀환 장부 붕괴',
|
||||
openingObjectiveLines: [
|
||||
'위수 북안의 압박을 지나 오장원 본영까지 돌아왔습니다. 이번 싸움은 더 멀리 나아가는 전투가 아니라, 촉한군이 살아서 돌아가고 다음 세대가 장부를 이어 받을 길을 지키는 최종전입니다.',
|
||||
'강유는 제갈량의 작전도를 이어 받고, 왕평과 마대는 퇴로와 측면을 나누어 맡았습니다. 황권과 이엄은 군량 장부를 보전하며 본영의 질서를 붙들어야 합니다.',
|
||||
'사마의의 본대, 장합의 추격 기병, 곽회의 봉화 차단대를 동시에 누르십시오. 오장원 본영과 주변 마을을 지켜 내면 북벌의 뜻은 패배가 아니라 계승으로 남습니다.'
|
||||
],
|
||||
map: sixtySixthBattleMap,
|
||||
units: sixtySixthBattleUnits,
|
||||
bonds: sixtySixthBattleBonds,
|
||||
mapTextureKey: 'battle-map-sixty-sixth',
|
||||
leaderUnitId: 'northern-twelfth-leader-sima-yi',
|
||||
quickVictoryTurnLimit: 132,
|
||||
baseVictoryGold: 22400,
|
||||
objectives: [
|
||||
{
|
||||
id: 'hold-wuzhang-main-camp',
|
||||
kind: 'defeat-leader',
|
||||
label: '사마의 오장원 본대 격파',
|
||||
rewardGold: 16000,
|
||||
unitId: 'northern-twelfth-leader-sima-yi'
|
||||
},
|
||||
{
|
||||
id: 'stop-zhang-he-final-pursuit',
|
||||
kind: 'defeat-leader',
|
||||
label: '장합 최종 추격대 저지',
|
||||
rewardGold: 9800,
|
||||
unitId: 'northern-twelfth-officer-zhang-he'
|
||||
},
|
||||
{
|
||||
id: 'silence-guo-huai-wuzhang-beacons',
|
||||
kind: 'defeat-leader',
|
||||
label: '곽회 봉화 차단',
|
||||
rewardGold: 9100,
|
||||
unitId: 'northern-twelfth-officer-guo-huai'
|
||||
},
|
||||
{
|
||||
id: 'preserve-wuzhang-camps',
|
||||
kind: 'secure-terrain',
|
||||
label: '오장원 본영 확보',
|
||||
rewardGold: 7600,
|
||||
terrain: 'camp'
|
||||
},
|
||||
{
|
||||
id: 'protect-returning-villages',
|
||||
kind: 'secure-terrain',
|
||||
label: '귀환로 마을 보호',
|
||||
rewardGold: 7200,
|
||||
terrain: 'village'
|
||||
},
|
||||
{
|
||||
id: 'quick',
|
||||
kind: 'quick-victory',
|
||||
label: '132턴 이내 오장원 수습',
|
||||
rewardGold: 5000,
|
||||
maxTurn: 132
|
||||
}
|
||||
],
|
||||
defeatConditions: [{ kind: 'unit-defeated', unitId: 'zhuge-liang' }],
|
||||
itemRewards: ['금 150', '상처약 114', '군주 56', '오장원 귀환 장부 1', '강유 계승 지도 1'],
|
||||
victoryPages: sixtySixthBattleVictoryPages,
|
||||
nextCampScene: 'CampScene'
|
||||
};
|
||||
|
||||
export const defaultBattleScenarioId: BattleScenarioId = firstBattleScenario.id;
|
||||
|
||||
export const battleScenarios: Record<BattleScenarioId, BattleScenarioDefinition> = {
|
||||
@@ -4474,7 +4546,8 @@ export const battleScenarios: Record<BattleScenarioId, BattleScenarioDefinition>
|
||||
'sixty-second-battle-qishan-renewed-offensive': sixtySecondBattleScenario,
|
||||
'sixty-third-battle-lucheng-pursuit': sixtyThirdBattleScenario,
|
||||
'sixty-fourth-battle-weishui-camps': sixtyFourthBattleScenario,
|
||||
'sixty-fifth-battle-weishui-northbank': sixtyFifthBattleScenario
|
||||
'sixty-fifth-battle-weishui-northbank': sixtyFifthBattleScenario,
|
||||
'sixty-sixth-battle-wuzhang-final': sixtySixthBattleScenario
|
||||
};
|
||||
|
||||
export const defaultBattleScenario = battleScenarios[defaultBattleScenarioId];
|
||||
|
||||
Reference in New Issue
Block a user