feat: add playable Zhuo prologue village

This commit is contained in:
2026-07-24 01:33:36 +09:00
parent b7c90c9452
commit df1322b1f0
17 changed files with 2418 additions and 40 deletions

View File

@@ -171,6 +171,7 @@ export type CampaignVictoryRewardPresentation = {
export type CampaignStep =
| 'new'
| 'prologue'
| 'prologue-town'
| 'first-battle'
| 'first-camp'
| 'first-victory-story'
@@ -461,7 +462,18 @@ export type CampaignSortieOrderHistory = Partial<
Record<BattleScenarioId, Partial<Record<CampaignSortiePresetId, CampaignSortieOrderResultSnapshot>>>
>;
export const campaignTutorialIds = ['first-battle-basic-controls'] as const;
export const prologueVillageCampaignTutorialIds = {
entered: 'prologue-village-entered',
meetZhangFei: 'prologue-village-meet-zhang-fei',
meetGuanYu: 'prologue-village-meet-guan-yu',
checkSupplies: 'prologue-village-check-supplies',
complete: 'prologue-village-complete'
} as const;
export const campaignTutorialIds = [
'first-battle-basic-controls',
...Object.values(prologueVillageCampaignTutorialIds)
] as const;
export type CampaignTutorialId = (typeof campaignTutorialIds)[number];
const campaignTutorialIdSet = new Set<string>(campaignTutorialIds);
@@ -574,6 +586,7 @@ const campaignBattleSteps: Record<string, { victory: CampaignStep; retry: Campai
const campaignStepIds = new Set<CampaignStep>([
'new',
'prologue',
'prologue-town',
'first-victory-story',
'ending-complete',
'hanzhong-king-camp',
@@ -603,6 +616,7 @@ const campaignRecruitUnitById = new Map(campaignRecruitUnits.map((unit) => [unit
const campaignStepProgressLabels: Partial<Record<CampaignStep, { title: string; meta: string }>> = {
new: { title: '새 캠페인', meta: '시작 전' },
prologue: { title: '도원 결의', meta: '프롤로그' },
'prologue-town': { title: '탁현에서 모인 뜻', meta: '마을 탐색 · 출전 준비' },
'first-victory-story': { title: '탁현 방어 성공', meta: '승리 후 이야기' },
'hanzhong-king-camp': { title: '한중왕 즉위 준비', meta: '군영 의정' },
'shu-han-foundation-camp': { title: '촉한 건국 선포', meta: '군영 의정' },