diff --git a/src/assets/images/story/25-yizhou-luo-road.png b/src/assets/images/story/25-yizhou-luo-road.png new file mode 100644 index 0000000..5dd447e Binary files /dev/null and b/src/assets/images/story/25-yizhou-luo-road.png differ diff --git a/src/assets/images/story/26-chengdu-surrender.png b/src/assets/images/story/26-chengdu-surrender.png new file mode 100644 index 0000000..dd36723 Binary files /dev/null and b/src/assets/images/story/26-chengdu-surrender.png differ diff --git a/src/assets/images/story/27-jingzhou-crisis.png b/src/assets/images/story/27-jingzhou-crisis.png new file mode 100644 index 0000000..0ee3e56 Binary files /dev/null and b/src/assets/images/story/27-jingzhou-crisis.png differ diff --git a/src/assets/images/story/28-nanzhong-seven-captures.png b/src/assets/images/story/28-nanzhong-seven-captures.png new file mode 100644 index 0000000..9a9f7f7 Binary files /dev/null and b/src/assets/images/story/28-nanzhong-seven-captures.png differ diff --git a/src/game/data/scenario.ts b/src/game/data/scenario.ts index dca15af..4ba15a6 100644 --- a/src/game/data/scenario.ts +++ b/src/game/data/scenario.ts @@ -1709,7 +1709,7 @@ export const twentySeventhBattleIntroPages: StoryPage[] = [ id: 'twenty-seventh-yizhou-request', bgm: 'story-dark', chapter: '익주에서 온 요청', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '손건', text: '익주의 유장이 한중 장로의 압박을 두려워하여 원군을 청했습니다. 형주 남부를 안정시킨 지금, 이 요청은 촉으로 향하는 첫 문이 될 수 있습니다.' }, @@ -1717,7 +1717,7 @@ export const twentySeventhBattleIntroPages: StoryPage[] = [ id: 'twenty-seventh-pang-tong-rumor', bgm: 'battle-prep', chapter: '봉추의 그림자', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '익주로 들어가는 길목에는 봉추라 불리는 방통이 머문다는 소문이 있습니다. 그가 뜻을 함께한다면, 산과 관문으로 막힌 촉의 길도 달리 보일 것입니다.' }, @@ -1725,7 +1725,7 @@ export const twentySeventhBattleIntroPages: StoryPage[] = [ id: 'twenty-seventh-gate-warning', bgm: 'story-dark', chapter: '원군로의 관문', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '마량', text: '양회가 이끄는 전초 병력이 원군로를 막고 있습니다. 길목의 마을을 지켜 명분을 잃지 않고, 산길의 척후를 먼저 끊어야 합니다.' }, @@ -1733,7 +1733,7 @@ export const twentySeventhBattleIntroPages: StoryPage[] = [ id: 'twenty-seventh-yizhou-sortie', bgm: 'battle-prep', chapter: '익주 원군로', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '우리는 익주를 빼앗으러 가는 것이 아니라, 백성을 지키라는 부름에 응하는 것이오. 군율을 세우고 길을 열어 봉추의 마음까지 얻어 봅시다.' @@ -1745,14 +1745,14 @@ export const twentySeventhBattleVictoryPages: StoryPage[] = [ id: 'twenty-seventh-victory-road-open', bgm: 'militia-theme', chapter: '익주의 길이 열리다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '양회의 전초 병력이 물러나고 익주 원군로가 열렸습니다. 유비군은 마을의 창고를 건드리지 않고 길목을 안정시켜, 원군이라는 명분을 분명히 세웠습니다.' }, { id: 'twenty-seventh-pang-tong-joins', bgm: 'battle-prep', chapter: '방통의 합류', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '인의를 말로만 내세우는 군은 많으나, 길목의 작은 마을까지 지키며 움직이는 군은 드뭅니다. 이 방통, 촉으로 향하는 험한 길을 함께 보겠습니다.' }, @@ -1760,7 +1760,7 @@ export const twentySeventhBattleVictoryPages: StoryPage[] = [ id: 'twenty-seventh-next-fu-pass', bgm: 'story-dark', chapter: '부수관을 바라보다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '봉추가 합류하니 익주의 지세와 사람의 마음을 함께 읽을 수 있게 되었습니다. 다음 길은 부수관과 낙성으로 이어지는 더 깊은 산문입니다.' } @@ -1771,7 +1771,7 @@ export const twentyEighthBattleIntroPages: StoryPage[] = [ id: 'twenty-eighth-fu-pass-shadow', bgm: 'story-dark', chapter: '부수관의 그림자', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '익주 원군로는 열렸으나 부수관은 아직 닫혀 있습니다. 고패가 관문 병력을 모아 길을 끊으면, 우리 명분은 산문 앞에서 멈출 것입니다.' }, @@ -1779,7 +1779,7 @@ export const twentyEighthBattleIntroPages: StoryPage[] = [ id: 'twenty-eighth-fa-zheng-message', bgm: 'battle-prep', chapter: '익주 내부의 손', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '익주 안쪽에서 법정이라는 인물이 은밀히 소식을 보냈습니다. 그는 유장의 답답한 정치를 걱정하며, 부수관을 넘을 길목을 알려 주겠다고 합니다.' }, @@ -1787,7 +1787,7 @@ export const twentyEighthBattleIntroPages: StoryPage[] = [ id: 'twenty-eighth-roster-pressure', bgm: 'battle-prep', chapter: '와룡과 봉추의 첫 편성', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '마량', text: '이번 전투부터 방통도 출전 후보가 됩니다. 책사 둘을 모두 데려가면 관문 계책은 강해지지만, 전열과 보급 중 하나가 얇아질 수 있습니다.' }, @@ -1795,7 +1795,7 @@ export const twentyEighthBattleIntroPages: StoryPage[] = [ id: 'twenty-eighth-fu-pass-sortie', bgm: 'battle-prep', chapter: '부수관 진입전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '관문을 부수는 일보다 중요한 것은, 그 너머의 백성이 우리를 어떻게 기억하느냐요. 방통의 기책과 제갈량의 큰 판을 살려 부수관의 길을 열겠소.' @@ -1807,14 +1807,14 @@ export const twentyEighthBattleVictoryPages: StoryPage[] = [ id: 'twenty-eighth-victory-pass-open', bgm: 'militia-theme', chapter: '부수관이 열리다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '고패의 관문 병력이 물러나고 부수관의 첫 문이 열렸습니다. 유비군은 관문 창고를 봉인하고 마을의 곡식을 지켜, 익주 내부의 의심을 조금 누그러뜨렸습니다.' }, { id: 'twenty-eighth-fa-zheng-joins', bgm: 'battle-prep', chapter: '법정의 합류', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '익주는 험한 땅이지만, 더 험한 것은 닫힌 마음입니다. 주공께서 그 마음을 함부로 베지 않으신다면, 이 법정이 안쪽 길을 밝히겠습니다.' }, @@ -1822,7 +1822,7 @@ export const twentyEighthBattleVictoryPages: StoryPage[] = [ id: 'twenty-eighth-next-luo-castle', bgm: 'story-dark', chapter: '낙성으로 이어지는 길', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '부수관은 문에 불과합니다. 낙성으로 이어지는 길에는 더 깊은 매복과 더 복잡한 마음이 기다립니다. 이제 법정의 내부 정보까지 함께 써야 합니다.' } @@ -1833,7 +1833,7 @@ export const twentyNinthBattleIntroPages: StoryPage[] = [ id: 'twenty-ninth-luo-outer-wall', bgm: 'story-dark', chapter: '낙성의 바깥 성벽', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '부수관을 넘으면 낙성의 바깥 성벽이 기다립니다. 장임은 성 밖의 고개와 마을을 겹쳐 방어선을 세웠고, 성 안의 장수들은 아직 우리 뜻을 믿지 않습니다.' }, @@ -1841,7 +1841,7 @@ export const twentyNinthBattleIntroPages: StoryPage[] = [ id: 'twenty-ninth-wu-yi-rumor', bgm: 'battle-prep', chapter: '흔들리는 오의', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '오의는 성문을 지키지만 백성을 함부로 몰아붙이는 명령을 달가워하지 않는다고 합니다. 전장을 거칠게 밀지 않고 길을 열면, 그의 마음도 움직일 수 있습니다.' }, @@ -1849,7 +1849,7 @@ export const twentyNinthBattleIntroPages: StoryPage[] = [ id: 'twenty-ninth-roster-pressure', bgm: 'battle-prep', chapter: '법정의 첫 출전 선택', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '이번 전투부터 법정도 출전 후보입니다. 익주 내부 사정을 아는 법정을 데려가면 설득은 쉬워지지만, 무장을 줄이는 부담은 더 커집니다.' }, @@ -1857,7 +1857,7 @@ export const twentyNinthBattleIntroPages: StoryPage[] = [ id: 'twenty-ninth-luo-sortie', bgm: 'battle-prep', chapter: '낙성 외곽전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '낙성의 문을 여는 일은 칼보다 마음이 먼저요. 마을을 지키고 장임의 전열을 물리쳐, 성 안 사람들에게 우리가 어떤 군인지 보이겠소.' @@ -1869,14 +1869,14 @@ export const twentyNinthBattleVictoryPages: StoryPage[] = [ id: 'twenty-ninth-victory-outer-wall', bgm: 'militia-theme', chapter: '외곽 방어선 붕괴', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '장임은 낙성 안쪽으로 물러났고, 외곽 마을은 큰 피해 없이 유비군의 보호 아래 들어왔습니다. 성 안의 장수들은 유비군을 단순한 침입군으로만 볼 수 없게 되었습니다.' }, { id: 'twenty-ninth-wu-yi-joins', bgm: 'battle-prep', chapter: '오의의 합류', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '오의', text: '성문을 지킨다는 명분으로 백성을 몰아넣는 일은 장수의 길이 아니었습니다. 주공께서 마을을 먼저 살피셨으니, 이 오의도 낙성의 다음 길을 열겠습니다.' }, @@ -1884,7 +1884,7 @@ export const twentyNinthBattleVictoryPages: StoryPage[] = [ id: 'twenty-ninth-next-luofeng', bgm: 'story-dark', chapter: '낙봉파의 그늘', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '낙성 바깥은 열렸지만 길은 더 좁아집니다. 봉황이 떨어진다는 이름의 고개가 있다 하니, 다음 진군은 가볍게 볼 수 없습니다.' } @@ -1895,7 +1895,7 @@ export const thirtiethBattleIntroPages: StoryPage[] = [ id: 'thirtieth-luofeng-shadow', bgm: 'story-dark', chapter: '낙봉파의 좁은 길', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '오의', text: '낙성 안쪽으로 들어가는 빠른 길은 낙봉파입니다. 길은 짧지만 양쪽 산세가 높고, 장임이 기다리기에는 지나치게 좋은 곳입니다.' }, @@ -1903,7 +1903,7 @@ export const thirtiethBattleIntroPages: StoryPage[] = [ id: 'thirtieth-pang-tong-warning', bgm: 'battle-prep', chapter: '봉추의 불길한 직감', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '좋은 길이 언제나 좋은 길은 아닙니다. 적이 우리를 빠르게 오게 만들었다면, 빠르게 물러날 길도 함께 보아 두어야 합니다.' }, @@ -1911,7 +1911,7 @@ export const thirtiethBattleIntroPages: StoryPage[] = [ id: 'thirtieth-roster-pressure', bgm: 'battle-prep', chapter: '오의의 첫 출전 선택', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '이번 전투부터 오의도 출전 후보입니다. 낙성의 길을 아는 오의를 데려가면 매복을 읽기 쉬우나, 전열과 보급 후보는 더 좁아집니다.' }, @@ -1919,7 +1919,7 @@ export const thirtiethBattleIntroPages: StoryPage[] = [ id: 'thirtieth-luofeng-sortie', bgm: 'battle-prep', chapter: '낙봉파 매복전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '빠른 길을 택하되 방심하지 않겠소. 방통의 눈, 법정의 정보, 오의의 길 안내를 함께 엮어 장임의 매복을 거꾸로 무너뜨리겠소.' @@ -1931,14 +1931,14 @@ export const thirtiethBattleVictoryPages: StoryPage[] = [ id: 'thirtieth-victory-ambush-broken', bgm: 'militia-theme', chapter: '매복을 꿰뚫다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '장임의 매복은 거칠게 덮쳐 왔으나, 유비군은 길목을 버티며 역으로 활로를 열었습니다. 낙봉파의 좁은 비탈에는 무너진 방책과 흩어진 깃발만 남았습니다.' }, { id: 'thirtieth-pang-tong-survives', bgm: 'battle-prep', chapter: '봉추의 생환', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '하마터면 길의 이름값을 할 뻔했습니다. 그러나 이번에는 우리 쪽이 한 수 먼저 보았습니다. 이제 낙성 본성은 더 이상 멀지 않습니다.' }, @@ -1946,7 +1946,7 @@ export const thirtiethBattleVictoryPages: StoryPage[] = [ id: 'thirtieth-next-luo-castle', bgm: 'story-dark', chapter: '낙성 본성 앞', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '낙봉파를 넘었으니 장임의 방어선은 본성에 몰렸습니다. 다음 전장은 낙성의 문과 익주 장수들의 마음을 함께 여는 싸움이 될 것입니다.' } @@ -1957,7 +1957,7 @@ export const thirtyFirstBattleIntroPages: StoryPage[] = [ id: 'thirty-first-luo-main-gate', bgm: 'story-dark', chapter: '낙성 본성의 문', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '장임은 낙봉파에서 물러난 뒤 낙성 본성의 문을 모두 닫았습니다. 성벽은 높고, 성 안의 장수들은 아직 유비공의 뜻을 의심하고 있습니다.' }, @@ -1965,7 +1965,7 @@ export const thirtyFirstBattleIntroPages: StoryPage[] = [ id: 'thirty-first-veteran-wall', bgm: 'battle-prep', chapter: '노장 엄안', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '오의', text: '성 안에는 엄안이라는 노장이 있습니다. 장임과 뜻을 같이해 버티고 있으나, 백성을 해치지 않겠다는 약속을 보이면 마음이 움직일 수 있습니다.' }, @@ -1973,7 +1973,7 @@ export const thirtyFirstBattleIntroPages: StoryPage[] = [ id: 'thirty-first-siege-choice', bgm: 'battle-prep', chapter: '돌파와 설득', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '성문을 부수는 힘만으로는 낙성을 얻을 수 없습니다. 방통, 법정, 오의를 함께 쓰면 설득의 길이 열리고, 무장을 더 세우면 짧은 돌파가 가능해집니다.' }, @@ -1981,7 +1981,7 @@ export const thirtyFirstBattleIntroPages: StoryPage[] = [ id: 'thirty-first-sortie', bgm: 'battle-prep', chapter: '낙성 본성 공략', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '성문을 열되 백성의 마음은 닫지 않겠소. 장임의 방어선을 깨고 엄안 같은 장수에게 우리가 지키려는 뜻을 보여 주시오.' @@ -1993,14 +1993,14 @@ export const thirtyFirstBattleVictoryPages: StoryPage[] = [ id: 'thirty-first-victory-gate-opened', bgm: 'militia-theme', chapter: '낙성의 문이 열리다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '낙성 본성의 문은 마침내 열렸습니다. 성벽 위의 깃발은 내려갔고, 장임의 마지막 방어선도 유비군의 꾸준한 압박 앞에 무너졌습니다.' }, { id: 'thirty-first-yan-yan-joins', bgm: 'battle-prep', chapter: '엄안의 결심', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '엄안', text: '성을 잃고도 백성이 다치지 않았다면, 장수는 패배 속에서도 새 주군을 볼 수 있습니다. 노장의 활이 이제 유비공의 군영을 지키겠습니다.' }, @@ -2008,7 +2008,7 @@ export const thirtyFirstBattleVictoryPages: StoryPage[] = [ id: 'thirty-first-next-chengdu-road', bgm: 'story-dark', chapter: '성도 압박의 길', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '낙성이 열렸으니 익주의 심장부가 흔들립니다. 이제 유비군은 성도를 향한 길에서 더 많은 항복과 저항을 동시에 맞이하게 될 것입니다.' } @@ -2019,7 +2019,7 @@ export const thirtySecondBattleIntroPages: StoryPage[] = [ id: 'thirty-second-chengdu-pressure', bgm: 'story-dark', chapter: '성도 압박의 시작', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '낙성이 열리자 성도는 놀랐으나 아직 문을 닫고 있습니다. 면죽관의 수비장 이엄이 항복과 결전을 저울질하고 있으니, 힘과 명분을 함께 보여 주어야 합니다.' }, @@ -2027,7 +2027,7 @@ export const thirtySecondBattleIntroPages: StoryPage[] = [ id: 'thirty-second-yan-yan-first-counsel', bgm: 'battle-prep', chapter: '엄안의 첫 출전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '엄안', text: '이엄은 무턱대고 물러설 장수가 아닙니다. 그러나 백성을 해치지 않는 군율과 익주 장수를 예우하는 마음을 보이면, 그의 칼끝도 흔들릴 것입니다.' }, @@ -2035,7 +2035,7 @@ export const thirtySecondBattleIntroPages: StoryPage[] = [ id: 'thirty-second-mianzhu-plan', bgm: 'battle-prep', chapter: '면죽관 설득', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '방통', text: '정면으로만 밀면 성도는 더 굳게 닫힙니다. 엄안으로 익주 장수의 마음을 열고, 법정과 오의로 길을 짚으며, 황충과 장비가 수비선을 짧게 끊어야 합니다.' }, @@ -2043,7 +2043,7 @@ export const thirtySecondBattleIntroPages: StoryPage[] = [ id: 'thirty-second-sortie', bgm: 'battle-prep', chapter: '면죽관 압박전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '우리가 얻으려는 것은 성 하나가 아니라 익주의 마음이오. 면죽관을 넘되 백성을 다치게 하지 말고, 이엄에게도 함께 살 길을 보여 주시오.' @@ -2055,14 +2055,14 @@ export const thirtySecondBattleVictoryPages: StoryPage[] = [ id: 'thirty-second-victory-pass-yields', bgm: 'militia-theme', chapter: '면죽관이 열리다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '면죽관의 수비선은 무너졌지만 성도 길목의 마을은 불타지 않았습니다. 유비군이 군율을 지키자 익주 병사들은 패배보다 이후의 처우를 먼저 바라보았습니다.' }, { id: 'thirty-second-li-yan-joins', bgm: 'battle-prep', chapter: '이엄의 선택', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '이엄', text: '칼을 거두는 일이 반드시 부끄러운 것은 아니군요. 백성을 살리고 익주의 길을 보전한다면, 이엄 또한 새 주군의 군율 아래 서겠습니다.' }, @@ -2070,7 +2070,7 @@ export const thirtySecondBattleVictoryPages: StoryPage[] = [ id: 'thirty-second-next-chengdu-surrender', bgm: 'story-dark', chapter: '성도 항복 권고', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '낙성과 면죽이 열렸으니 유장의 선택지는 더욱 좁아졌습니다. 다음 길은 성도 포위와 항복 권고, 그리고 익주를 어떻게 다스릴 것인가에 달렸습니다.' } @@ -2081,7 +2081,7 @@ export const thirtyThirdBattleIntroPages: StoryPage[] = [ id: 'thirty-third-chengdu-encircled', bgm: 'story-dark', chapter: '성도 앞의 마지막 권고', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '제갈량', text: '면죽관이 열렸고 이엄까지 합류했습니다. 성도는 아직 문을 닫았으나, 이제 유장은 싸움과 항복 사이에서 더 이상 오래 머물 수 없습니다.' }, @@ -2089,7 +2089,7 @@ export const thirtyThirdBattleIntroPages: StoryPage[] = [ id: 'thirty-third-li-yan-counsel', bgm: 'battle-prep', chapter: '이엄의 증언', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '이엄', text: '황권은 성도의 체면과 백성의 안위를 함께 보는 장수입니다. 그가 물러서면 유장공도 백성을 살리는 길을 택할 수 있습니다.' }, @@ -2097,7 +2097,7 @@ export const thirtyThirdBattleIntroPages: StoryPage[] = [ id: 'thirty-third-final-plan', bgm: 'battle-prep', chapter: '성도 항복 권고전', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '법정', text: '성도 성문을 부수는 것이 능사가 아닙니다. 황권의 방어선을 눌러 항복 조건을 받아들이게 하고, 마을과 창고를 지켜 유비군의 약속을 증명해야 합니다.' }, @@ -2105,7 +2105,7 @@ export const thirtyThirdBattleIntroPages: StoryPage[] = [ id: 'thirty-third-sortie', bgm: 'battle-prep', chapter: '익주를 얻는 길', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '유비', portrait: 'liuBei', text: '오늘의 승리는 성도의 문을 여는 것보다, 문 안의 백성이 두려움을 내려놓게 하는 데 있소. 칼을 들되 마음을 먼저 잃지 마시오.' @@ -2117,14 +2117,14 @@ export const thirtyThirdBattleVictoryPages: StoryPage[] = [ id: 'thirty-third-victory-chengdu-yields', bgm: 'militia-theme', chapter: '성도 항복', - background: 'story-yizhou', + background: 'story-chengdu-surrender', text: '성도 외곽의 방어선은 무너졌지만 성문 안쪽은 불타지 않았습니다. 유장에게 보내진 마지막 권고문은 백성을 보전하고 장수의 체면을 남기는 조건을 담았습니다.' }, { id: 'thirty-third-huang-quan-joins', bgm: 'battle-prep', chapter: '황권의 귀순', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '황권', text: '익주를 지키려던 마음은 변하지 않았습니다. 다만 이제는 백성을 살리는 길이 유비공의 군율 아래 있다는 것을 보았습니다. 황권이 그 길에 서겠습니다.' }, @@ -2132,7 +2132,7 @@ export const thirtyThirdBattleVictoryPages: StoryPage[] = [ id: 'thirty-third-yizhou-secured', bgm: 'story-dark', chapter: '익주 확보', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '제갈량', text: '형주와 익주의 기반이 마련되었습니다. 유비군은 이제 유랑군이 아니라 나라의 뿌리를 갖춘 세력으로 바뀌며, 촉한 건국을 향한 다음 장을 준비합니다.' } @@ -2143,7 +2143,7 @@ export const thirtyFourthBattleIntroPages: StoryPage[] = [ id: 'thirty-fourth-hanzhong-road', bgm: 'story-dark', chapter: '한중으로 향하는 길', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '성도는 안정되었으나 북쪽 한중은 아직 장로와 조조의 그늘 아래 흔들립니다. 촉한의 이름을 세우려면 북문을 지킬 길부터 열어야 합니다.' }, @@ -2151,7 +2151,7 @@ export const thirtyFourthBattleIntroPages: StoryPage[] = [ id: 'thirty-fourth-huang-quan-first-counsel', bgm: 'battle-prep', chapter: '황권의 첫 출전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '황권', text: '가맹관은 익주와 한중을 잇는 목입니다. 그곳에 마초의 기병이 나타났다면, 싸움만이 아니라 그가 누구의 길을 택할지도 보아야 합니다.' }, @@ -2159,7 +2159,7 @@ export const thirtyFourthBattleIntroPages: StoryPage[] = [ id: 'thirty-fourth-ma-chao-appears', bgm: 'battle-prep', chapter: '서량의 기병', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '법정', text: '마초는 조조에게 쫓기고 장로에게도 마음을 다 주지 못했습니다. 그의 돌격을 막아 내고, 유비군이 서량의 창을 품을 그릇임을 보여 주십시오.' }, @@ -2167,7 +2167,7 @@ export const thirtyFourthBattleIntroPages: StoryPage[] = [ id: 'thirty-fourth-sortie', bgm: 'battle-prep', chapter: '가맹관 마초 대면전', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '유비', portrait: 'liuBei', text: '마초의 용맹을 꺾으려 하지 말고, 그 창끝이 향할 뜻을 바꾸어야 하오. 황권과 법정은 길을 열고, 장수들은 기병의 돌파를 받아내시오.' @@ -2179,14 +2179,14 @@ export const thirtyFourthBattleVictoryPages: StoryPage[] = [ id: 'thirty-fourth-victory-charge-stopped', bgm: 'militia-theme', chapter: '서량 돌격을 막다', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', text: '가맹관의 좁은 길에서 서량 기병의 첫 돌격은 멈췄습니다. 마초는 패배보다도 유비군의 군율과 익주 장수들의 안정된 태도를 더 오래 바라보았습니다.' }, { id: 'thirty-fourth-ma-chao-joins', bgm: 'battle-prep', chapter: '마초의 합류', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '마초', text: '창을 맡길 주군을 찾지 못해 오래 떠돌았습니다. 유비공이 백성을 보전하고 장수를 예우한다면, 서량의 창 또한 그 깃발 아래 서겠습니다.' }, @@ -2194,7 +2194,7 @@ export const thirtyFourthBattleVictoryPages: StoryPage[] = [ id: 'thirty-fourth-next-hanzhong', bgm: 'story-dark', chapter: '한중 전선의 개막', - background: 'story-yizhou', + background: 'story-yizhou-luo-road', speaker: '제갈량', text: '마초가 합류하자 북쪽 길이 한층 넓어졌습니다. 이제 촉한의 기반은 성도 안쪽에서 끝나지 않고, 한중을 향한 전선으로 나아가게 됩니다.' } @@ -2429,7 +2429,7 @@ export const shuHanFoundationPages: StoryPage[] = [ id: 'shu-han-foundation-banner', bgm: 'militia-theme', chapter: '한중왕 즉위', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '제갈량', text: '한중의 깃발 아래 장수들의 이름이 모였습니다. 유비는 한중왕의 이름을 받아들이며, 이 이름이 욕심이 아니라 한실을 잇는 약속임을 밝히려 합니다.' }, @@ -2437,7 +2437,7 @@ export const shuHanFoundationPages: StoryPage[] = [ id: 'shu-han-foundation-oath', bgm: 'battle-prep', chapter: '촉한의 이름', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '유비', portrait: 'liuBei', text: '우리가 세우려는 나라는 나 한 사람의 나라가 아니오. 도원에서 맺은 뜻, 전장을 지나 모인 장수들의 뜻, 그리고 백성을 지키려는 뜻을 촉한의 이름으로 세우겠소.' @@ -2446,7 +2446,7 @@ export const shuHanFoundationPages: StoryPage[] = [ id: 'shu-han-foundation-generals', bgm: 'battle-prep', chapter: '오호의 깃발', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '관우', portrait: 'guanYu', text: '형님께서 이름을 세우셨으니 장수들도 각자의 자리를 지켜야 합니다. 서쪽은 안정되었으나 형주의 바람은 점점 거칠어지고 있습니다.' @@ -2455,7 +2455,7 @@ export const shuHanFoundationPages: StoryPage[] = [ id: 'shu-han-foundation-next-front', bgm: 'story-dark', chapter: '형주의 먹구름', - background: 'story-yizhou', + background: 'story-chengdu-surrender', speaker: '제갈량', text: '촉한의 이름은 세워졌지만, 그 이름은 새로운 책임을 부릅니다. 관우가 지키는 형주에는 손권과 조조의 시선이 함께 모이고 있습니다.' } @@ -2466,7 +2466,7 @@ export const thirtyEighthBattleIntroPages: StoryPage[] = [ id: 'thirty-eighth-jing-warning', bgm: 'story-dark', chapter: '형주의 먹구름', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '촉한의 이름이 세워지자 형주의 무게가 더 커졌습니다. 관우가 지키는 강릉과 남군은 조조와 손권이 동시에 바라보는 칼끝이 되었습니다.' }, @@ -2474,7 +2474,7 @@ export const thirtyEighthBattleIntroPages: StoryPage[] = [ id: 'thirty-eighth-guan-yu-front', bgm: 'battle-prep', chapter: '관우의 전선', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '형주는 형님의 등을 지키는 문입니다. 위의 정찰대가 북쪽에서 움직이고, 오의 배가 강가를 맴돈다면 먼저 봉화대와 나루를 묶어야 합니다.' @@ -2483,7 +2483,7 @@ export const thirtyEighthBattleIntroPages: StoryPage[] = [ id: 'thirty-eighth-two-fronts', bgm: 'battle-prep', chapter: '강과 성 사이', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '마량', text: '강변 마을은 오의 말에 흔들리고, 북쪽 성채는 위의 군세를 두려워합니다. 백성이 흔들리면 형주는 성벽보다 먼저 무너집니다.' }, @@ -2491,7 +2491,7 @@ export const thirtyEighthBattleIntroPages: StoryPage[] = [ id: 'thirty-eighth-sortie', bgm: 'battle-prep', chapter: '형주 방위 전초전', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '촉한의 이름을 세운 지금, 형주를 잃는다면 그 이름도 흔들릴 것이오. 관우는 봉화대를 지키고, 모두 강과 성 사이의 불안을 잠재우시오.' @@ -2503,14 +2503,14 @@ export const thirtyEighthBattleVictoryPages: StoryPage[] = [ id: 'thirty-eighth-victory-beacon-secured', bgm: 'militia-theme', chapter: '봉화가 다시 오르다', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', text: '형주의 봉화대가 다시 불을 밝혔습니다. 위의 정찰대는 물러났고 오의 배는 강 건너로 물러났지만, 두 시선이 동시에 형주를 향하고 있다는 사실은 분명해졌습니다.' }, { id: 'thirty-eighth-guan-yu-resolve', bgm: 'battle-prep', chapter: '관우의 결의', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '적이 둘이라 하여 뜻도 둘이 될 수는 없습니다. 형주를 지키는 칼은 더욱 곧아야 합니다. 다만 강가의 마음까지 지켜야 오래 버틸 수 있겠습니다.' @@ -2519,7 +2519,7 @@ export const thirtyEighthBattleVictoryPages: StoryPage[] = [ id: 'thirty-eighth-next-fan-castle', bgm: 'story-dark', chapter: '번성의 그림자', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '형주의 불안은 잠시 가라앉았지만 북쪽 번성의 문은 여전히 굳게 닫혀 있습니다. 촉한의 첫 큰 시험은 관우의 전선에서 시작될 것입니다.' } @@ -2530,7 +2530,7 @@ export const thirtyNinthBattleIntroPages: StoryPage[] = [ id: 'thirty-ninth-fan-castle-shadow', bgm: 'story-dark', chapter: '번성의 그림자', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '형주의 봉화는 다시 올랐으나, 번성의 문은 더욱 굳게 닫혔습니다. 조조의 북방 병력은 수로와 성채를 엮어 시간을 벌려 하고, 오의 시선도 강 건너에서 조용히 움직입니다.' }, @@ -2538,7 +2538,7 @@ export const thirtyNinthBattleIntroPages: StoryPage[] = [ id: 'thirty-ninth-guan-yu-north', bgm: 'battle-prep', chapter: '관우의 북상', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '형주를 지키는 일은 곧 한실을 일으키는 일입니다. 번성 외곽의 보루와 나루를 눌러야 적의 숨통을 조이고, 뒤이어 큰 결전을 열 수 있습니다.' @@ -2547,7 +2547,7 @@ export const thirtyNinthBattleIntroPages: StoryPage[] = [ id: 'thirty-ninth-flooded-fields', bgm: 'battle-prep', chapter: '물길을 보는 눈', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '법정', text: '한수의 물길은 평소에는 느려 보이나, 비와 둑의 높이에 따라 전장의 형세를 통째로 바꿉니다. 이번 전투에서는 성 밖 보급선과 제방 감시초를 먼저 잡아야 합니다.' }, @@ -2555,7 +2555,7 @@ export const thirtyNinthBattleIntroPages: StoryPage[] = [ id: 'thirty-ninth-sortie', bgm: 'battle-prep', chapter: '번성 외곽 압박전', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '관우가 선봉을 잡되 모두가 그 뒤를 받쳐라. 번성 외곽을 열면 다음 물길과 성문을 함께 도모할 수 있다. 오늘의 선택이 다음 전장의 폭을 넓힐 것이다.' @@ -2567,14 +2567,14 @@ export const thirtyNinthBattleVictoryPages: StoryPage[] = [ id: 'thirty-ninth-victory-outer-wall', bgm: 'militia-theme', chapter: '외곽 보루 함락', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', text: '번성 외곽의 보루와 나루가 촉한군의 손에 들어왔습니다. 조조군은 성 안쪽으로 물러났고, 방덕의 선봉은 다시 방어진을 고쳐 세우며 다음 격돌을 예고했습니다.' }, { id: 'thirty-ninth-pang-de-resolve', bgm: 'battle-prep', chapter: '방덕의 결의', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '방덕은 물러났으나 기세를 잃지 않았습니다. 조인과 우금도 성 안의 병력을 다시 묶고 있으니, 다음 전투에서는 물길과 성벽이 함께 움직일 것입니다.' }, @@ -2582,7 +2582,7 @@ export const thirtyNinthBattleVictoryPages: StoryPage[] = [ id: 'thirty-ninth-next-water-lines', bgm: 'story-dark', chapter: '한수 수공 준비', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '성은 아직 멀리 있고, 강은 우리 곁에 있소. 병사들에게 둑을 살피게 하고 배와 밧줄을 준비하라. 다음에는 물길마저 우리 편으로 삼아야 하오.' @@ -2594,7 +2594,7 @@ export const fortiethBattleIntroPages: StoryPage[] = [ id: 'fortieth-han-river-rain', bgm: 'story-dark', chapter: '불어난 한수', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '비가 이어지며 한수의 물길이 불어났습니다. 번성 밖의 평지는 진흙으로 변했고, 우금의 본대와 방덕의 선봉은 강과 둑 사이에 길게 늘어섰습니다.' }, @@ -2602,7 +2602,7 @@ export const fortiethBattleIntroPages: StoryPage[] = [ id: 'fortieth-water-plan', bgm: 'battle-prep', chapter: '수공의 군령', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '법정', text: '둑을 무너뜨리는 것만이 수공은 아닙니다. 물이 차오를 때 적이 믿는 퇴로를 먼저 끊고, 궁병과 기병을 높은 둑 위로 몰아야 합니다.' }, @@ -2610,7 +2610,7 @@ export const fortiethBattleIntroPages: StoryPage[] = [ id: 'fortieth-guan-yu-command', bgm: 'battle-prep', chapter: '관우의 결단', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '물길이 우리 편에 선다면 적의 칼도 무뎌질 것이오. 우금의 본대를 눌러 번성의 숨통을 끊고, 방덕의 돌격은 둑 위에서 맞받아치겠소.' @@ -2619,7 +2619,7 @@ export const fortiethBattleIntroPages: StoryPage[] = [ id: 'fortieth-sortie', bgm: 'battle-prep', chapter: '한수 수공', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '관우가 앞을 열고, 법정과 마량이 물길을 살피며, 기동대는 둑과 나루를 끊어라. 이번 싸움은 성벽보다 먼저 강을 얻는 싸움이다.' @@ -2631,14 +2631,14 @@ export const fortiethBattleVictoryPages: StoryPage[] = [ id: 'fortieth-victory-seven-armies', bgm: 'militia-theme', chapter: '칠군이 물에 잠기다', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', text: '한수의 물길이 전장을 덮치자 조조군의 진형은 무너졌습니다. 우금의 본대는 퇴로를 잃었고, 번성 외곽에는 관우군의 깃발이 더욱 가까워졌습니다.' }, { id: 'fortieth-yu-jin-surrenders', bgm: 'battle-prep', chapter: '우금의 항복', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '우금은 병사들을 살리기 위해 무기를 내려놓았습니다. 그러나 방덕은 끝까지 물러서지 않았고, 번성 안의 조인은 더 깊은 수성전을 준비하기 시작했습니다.' }, @@ -2646,7 +2646,7 @@ export const fortiethBattleVictoryPages: StoryPage[] = [ id: 'fortieth-next-siege', bgm: 'story-dark', chapter: '번성 포위', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '강은 길을 열었으나 성문은 아직 남아 있소. 병사들에게 쉬게 하되 경계를 늦추지 마시오. 다음은 번성의 성벽을 직접 마주할 차례요.' @@ -2658,7 +2658,7 @@ export const fortyFirstBattleIntroPages: StoryPage[] = [ id: 'forty-first-fan-wall', bgm: 'story-dark', chapter: '성벽 앞의 밤', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '한수의 물길은 조조군의 칠군을 무너뜨렸지만, 번성의 성벽은 아직 닫혀 있습니다. 조인은 성문을 걸어 잠그고, 방덕은 마지막 돌격을 준비합니다.' }, @@ -2666,7 +2666,7 @@ export const fortyFirstBattleIntroPages: StoryPage[] = [ id: 'forty-first-siege-plan', bgm: 'battle-prep', chapter: '포위의 순서', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '마량', text: '성벽을 바로 두드리면 병사만 지칩니다. 외성 보루와 수문, 강가의 낮은 마을을 먼저 붙잡아야 성 안의 사기가 흔들립니다.' }, @@ -2674,7 +2674,7 @@ export const fortyFirstBattleIntroPages: StoryPage[] = [ id: 'forty-first-wu-shadow', bgm: 'story-dark', chapter: '강 건너의 시선', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '북쪽 성문만 보아서는 안 되오. 강동의 배가 멀리서 움직이고 있으니, 번성을 치는 동안 뒤의 나루도 비워 두지 마시오.' @@ -2683,7 +2683,7 @@ export const fortyFirstBattleIntroPages: StoryPage[] = [ id: 'forty-first-sortie', bgm: 'battle-prep', chapter: '번성 공성전', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '관우가 성문을 압박하고, 남은 무장들은 보루와 나루를 나누어 맡아라. 이번 싸움은 성을 치면서도 뒤의 그림자를 놓치지 않는 싸움이다.' @@ -2695,14 +2695,14 @@ export const fortyFirstBattleVictoryPages: StoryPage[] = [ id: 'forty-first-victory-gate', bgm: 'militia-theme', chapter: '성문이 흔들리다', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', text: '번성의 외성 보루가 무너지고 조인의 방어선은 성 안쪽으로 밀려났습니다. 방덕의 결사대도 더는 성문 밖에서 버티지 못했습니다.' }, { id: 'forty-first-pang-de-end', bgm: 'battle-prep', chapter: '방덕의 결말', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '방덕은 끝까지 물러서지 않았소. 적이라 하나 그 기개는 가벼이 볼 수 없으니, 병사들에게 전하되 오만해지지 말라 이르시오.' @@ -2711,7 +2711,7 @@ export const fortyFirstBattleVictoryPages: StoryPage[] = [ id: 'forty-first-jing-warning', bgm: 'story-dark', chapter: '형주의 불안', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '번성의 성벽은 흔들렸으나, 강 건너 오의 움직임은 더 가까워졌습니다. 다음 장에서는 포위의 승세와 형주 후방의 균열을 함께 다루어야 합니다.' } @@ -2722,7 +2722,7 @@ export const fortySecondBattleIntroPages: StoryPage[] = [ id: 'forty-second-river-rumors', bgm: 'story-dark', chapter: '강릉의 불안', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '마량', text: '번성 성문은 흔들리고 있지만, 강릉 동쪽 나루에는 낯선 상선이 늘었습니다. 장사꾼의 말투 속에 군령이 섞여 있고, 밤 신호는 평소보다 늦게 올라옵니다.' }, @@ -2730,7 +2730,7 @@ export const fortySecondBattleIntroPages: StoryPage[] = [ id: 'forty-second-lu-meng-shadow', bgm: 'battle-prep', chapter: '흰 옷의 그림자', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '강동의 장수들은 칼을 들고 오지 않을 수도 있습니다. 흰 옷의 상인, 약재 배, 빈 곡식 자루가 모두 길을 재는 눈이 될 수 있습니다.' }, @@ -2738,7 +2738,7 @@ export const fortySecondBattleIntroPages: StoryPage[] = [ id: 'forty-second-guan-yu-rear-order', bgm: 'battle-prep', chapter: '후방 경계령', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '번성을 치는 손을 늦출 수는 없으나, 형주의 뒤를 비울 수도 없소. 나루와 창고를 지키며 강동 정찰대를 몰아내시오.' @@ -2747,7 +2747,7 @@ export const fortySecondBattleIntroPages: StoryPage[] = [ id: 'forty-second-sortie', bgm: 'battle-prep', chapter: '강릉 나루 경계전', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '전선의 승리와 후방의 평온은 따로 있지 않다. 관우의 깃발이 번성 앞에 선 동안, 강릉 나루의 작은 흔들림까지 놓치지 말라.' @@ -2759,14 +2759,14 @@ export const fortySecondBattleVictoryPages: StoryPage[] = [ id: 'forty-second-victory-river-watch', bgm: 'militia-theme', chapter: '나루의 밤이 밝아지다', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', text: '강릉 동쪽 나루의 정찰선은 물러났고, 강변 창고의 불안은 잠시 가라앉았습니다. 그러나 붙잡힌 척후의 말은 오히려 더 큰 위기를 가리켰습니다.' }, { id: 'forty-second-lu-xun-letter', bgm: 'story-dark', chapter: '부드러운 글과 날카로운 뜻', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '마량', text: '강동에서 온 문서는 예를 갖추고 있었지만, 글 사이에는 형주의 빈틈을 재는 뜻이 숨어 있었습니다. 승리보다 후방의 믿음이 더 급해졌습니다.' }, @@ -2774,7 +2774,7 @@ export const fortySecondBattleVictoryPages: StoryPage[] = [ id: 'forty-second-next-crack', bgm: 'story-dark', chapter: '갈라지는 형주', - background: 'story-yizhou', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '나루 하나는 지켰으나, 강릉과 공안의 장수들이 흔들리기 시작했습니다. 다음 장에서는 형주 후방의 균열이 더 노골적인 배신과 침투로 이어질 것입니다.' } @@ -2785,7 +2785,7 @@ export const fortyThirdBattleIntroPages: StoryPage[] = [ id: 'forty-third-gongan-gate', bgm: 'story-dark', chapter: '공안의 성문', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '미축', text: '강릉 창고 장부를 대조하니 공안으로 보낸 군량이 사라진 흔적이 있습니다. 성문을 지키는 병사들은 명령을 기다린다 하면서도 강동 배를 그냥 들이고 있습니다.' }, @@ -2793,7 +2793,7 @@ export const fortyThirdBattleIntroPages: StoryPage[] = [ id: 'forty-third-fu-shiren-wavers', bgm: 'story-dark', chapter: '흔들리는 수비장', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '마량', text: '부사인은 관우 장군의 엄한 군령을 두려워하고, 미방은 강동의 말에 마음이 흔들립니다. 이 싸움은 적을 베는 일보다 성문 안의 믿음을 붙드는 일이 더 어렵습니다.' }, @@ -2801,7 +2801,7 @@ export const fortyThirdBattleIntroPages: StoryPage[] = [ id: 'forty-third-lu-meng-infiltration', bgm: 'battle-prep', chapter: '강동의 본대', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '여몽은 더는 작은 정찰선만 보내지 않을 것입니다. 흰 옷의 상인이 길을 열고, 육손의 글이 의심을 누그러뜨린 뒤, 본대가 공안 성문을 향해 움직일 것입니다.' }, @@ -2809,7 +2809,7 @@ export const fortyThirdBattleIntroPages: StoryPage[] = [ id: 'forty-third-sortie', bgm: 'battle-prep', chapter: '공안 성문 변고', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '번성 앞 깃발을 거둘 수 없다면, 후방의 성문을 먼저 다시 잠가야 하오. 공안 성문을 붙들고 부사인의 병사들을 안정시켜 형주가 한순간에 무너지지 않게 하시오.' @@ -2821,14 +2821,14 @@ export const fortyThirdBattleVictoryPages: StoryPage[] = [ id: 'forty-third-victory-gate-held', bgm: 'militia-theme', chapter: '잠긴 성문', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', text: '공안 성문은 다시 잠겼고, 강동의 선봉은 물러났습니다. 그러나 부사인의 얼굴에는 안도보다 두려움이 더 짙게 남았습니다.' }, { id: 'forty-third-mi-fang-silence', bgm: 'story-dark', chapter: '말 없는 장부', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '미축', text: '미방은 끝내 분명한 대답을 하지 않았습니다. 창고 장부는 맞춰 놓았으나, 사람의 마음은 장부처럼 줄을 맞추기 어렵습니다.' }, @@ -2836,7 +2836,7 @@ export const fortyThirdBattleVictoryPages: StoryPage[] = [ id: 'forty-third-next-shadow', bgm: 'story-dark', chapter: '맥성으로 드리우는 그림자', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '성문 하나를 지켰지만 형주는 이미 바깥과 안쪽에서 함께 갈라지고 있습니다. 다음 장에서는 관우의 번성 전선이 고립으로 바뀌는 순간을 다루어야 합니다.' } @@ -2847,7 +2847,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [ id: 'forty-fourth-maicheng-orders', bgm: 'story-dark', chapter: '끊어진 후방', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '마량', text: '공안 성문을 다시 잠갔으나 강릉과 나루의 소식이 끊겼습니다. 관우 장군의 번성 전선은 앞의 조조군과 뒤의 강동군 사이에서 길을 잃고 있습니다.' }, @@ -2855,7 +2855,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [ id: 'forty-fourth-lu-meng-seals-roads', bgm: 'story-dark', chapter: '봉쇄되는 길', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '왕평', text: '맥성으로 빠지는 길목마다 흰 옷을 벗은 강동 병사가 서 있습니다. 큰길은 막혔고, 숲과 물목의 작은 길도 오래 버티지 못할 것입니다.' }, @@ -2863,7 +2863,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [ id: 'forty-fourth-guan-yu-resolve', bgm: 'battle-prep', chapter: '남은 깃발', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '관우', portrait: 'guanYu', text: '성 하나가 아니라 의리를 지키는 싸움이 되었소. 맥성으로 길을 내고 남은 병사들을 수습하겠소. 길이 좁을수록 마음이 먼저 무너지지 않게 하시오.' @@ -2872,7 +2872,7 @@ export const fortyFourthBattleIntroPages: StoryPage[] = [ id: 'forty-fourth-sortie', bgm: 'battle-prep', chapter: '맥성 고립전', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '유비', portrait: 'liuBei', text: '운장의 깃발이 고립되었다면, 늦더라도 길을 열어야 하오. 북문과 갈대 물목을 동시에 살펴 포위망을 찢고 맥성의 퇴로를 확보하시오.' @@ -2884,14 +2884,14 @@ export const fortyFourthBattleVictoryPages: StoryPage[] = [ id: 'forty-fourth-victory-road-opened', bgm: 'militia-theme', chapter: '뚫린 좁은 길', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', text: '맥성 북문의 좁은 길은 간신히 열렸고, 흩어진 병사들이 다시 깃발 아래로 모였습니다. 그러나 길 밖의 횃불은 여전히 더 많았습니다.' }, { id: 'forty-fourth-lu-meng-tightens', bgm: 'story-dark', chapter: '좁아지는 포위', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '제갈량', text: '여몽은 물러난 것이 아니라 더 넓게 둘러섰습니다. 맥성의 작은 승리는 시간을 벌었을 뿐, 형주를 되찾는 길은 아직 멀고 험합니다.' }, @@ -2899,7 +2899,7 @@ export const fortyFourthBattleVictoryPages: StoryPage[] = [ id: 'forty-fourth-next-jing-loss', bgm: 'story-dark', chapter: '형주의 상실', - background: 'story-yiling-baidi', + background: 'story-jingzhou-crisis', speaker: '마량', text: '맥성의 포위는 풀렸으나 강릉과 공안의 마음은 이미 갈라졌습니다. 다음 장에서는 형주 상실의 대가와 유비의 분노가 더 큰 전쟁으로 번지는 흐름을 준비해야 합니다.' } @@ -3143,7 +3143,7 @@ export const fortyEighthBattleIntroPages: StoryPage[] = [ id: 'forty-eighth-meng-huo-gathers', bgm: 'story-dark', chapter: '맹획의 깃발', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '옹개의 지휘선은 흩어졌지만 남중의 마을들은 아직 촉한군을 멀리서 바라봅니다. 깊은 숲 안쪽에서는 맹획이 여러 호족을 모아, 첫 패배를 갚겠다고 병력을 다시 세우고 있습니다.' }, @@ -3151,7 +3151,7 @@ export const fortyEighthBattleIntroPages: StoryPage[] = [ id: 'forty-eighth-zhuge-amnesty', bgm: 'battle-prep', chapter: '힘과 회유', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '맹획을 쓰러뜨리는 것만으로는 남중을 얻을 수 없습니다. 반드시 생포하여 돌려보낼 길을 남기십시오. 마을과 포로 수용소를 지키면, 다음 싸움에서 칼보다 말이 먼저 닿을 것입니다.' }, @@ -3159,7 +3159,7 @@ export const fortyEighthBattleIntroPages: StoryPage[] = [ id: 'forty-eighth-sortie', bgm: 'battle-prep', chapter: '맹획 본대전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '맹획의 본대는 숲길, 늪지, 산채를 함께 쓰고 있습니다. 조운과 마초가 돌격을 막고, 왕평이 지형을 읽으며, 황권이 포로와 군량의 장부를 흐트러뜨리지 않아야 합니다.' } @@ -3170,14 +3170,14 @@ export const fortyEighthBattleVictoryPages: StoryPage[] = [ id: 'forty-eighth-victory-captured', bgm: 'militia-theme', chapter: '첫 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획의 본대는 흩어졌고, 촉한군은 산채의 불길을 키우지 않은 채 포로와 마을 사람을 갈라 세웠습니다. 병사들은 적장을 베지 않고 생포하는 싸움이 왜 어려운지 처음으로 깨달았습니다.' }, { id: 'forty-eighth-victory-release', bgm: 'story-dark', chapter: '돌려보내는 책략', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '맹획은 아직 진심으로 굴복하지 않았습니다. 그러나 억지 항복은 오래가지 않습니다. 오늘은 그를 돌려보내 남중의 사람들에게 촉한군이 약탈하러 온 군대가 아님을 보이겠습니다.' }, @@ -3185,7 +3185,7 @@ export const fortyEighthBattleVictoryPages: StoryPage[] = [ id: 'forty-eighth-next-capture', bgm: 'story-dark', chapter: '칠종칠금의 첫 장', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '맹획은 풀려났으나 산속의 호족들은 이제 촉한군의 태도를 보았습니다. 다음 싸움부터는 힘뿐 아니라 누구를 먼저 달래고 누구를 끝까지 추격할지 선택해야 합니다.' } @@ -3196,7 +3196,7 @@ export const fortyNinthBattleIntroPages: StoryPage[] = [ id: 'forty-ninth-meng-huo-returns', bgm: 'story-dark', chapter: '돌아온 맹획', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '맹획은 풀려나자마자 다시 산채를 모았습니다. 그러나 지난 싸움과 달리 마을 사람들은 촉한군이 약탈하지 않았다는 사실을 알고 있습니다. 이번 싸움은 그 마음의 흔들림을 전장 위에서 붙잡는 일입니다.' }, @@ -3204,7 +3204,7 @@ export const fortyNinthBattleIntroPages: StoryPage[] = [ id: 'forty-ninth-second-capture-plan', bgm: 'battle-prep', chapter: '두 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번에도 베어서는 안 됩니다. 강가의 늪지와 산채 길목을 끊어 맹획을 다시 생포하고, 마을과 포로장을 지켜 그가 돌아갈 때 들을 말까지 남겨 두십시오.' }, @@ -3212,7 +3212,7 @@ export const fortyNinthBattleIntroPages: StoryPage[] = [ id: 'forty-ninth-sortie', bgm: 'battle-prep', chapter: '칠종칠금 2차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '맹획은 이번에 매복과 주술사를 앞세웠습니다. 왕평이 길을 읽고, 황권이 포로 장부를 지키며, 조운과 황충이 돌격과 고지 궁병을 끊어야 합니다. 회유의 말은 전열이 버텨야 닿습니다.' } @@ -3223,14 +3223,14 @@ export const fortyNinthBattleVictoryPages: StoryPage[] = [ id: 'forty-ninth-victory-second-capture', bgm: 'militia-theme', chapter: '두 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 다시 포위되었고, 이번에도 촉한군은 진영을 불태우지 않았습니다. 포로장은 닫혔지만 약탈은 없었고, 마을 사람들은 어느 군대가 오래 남을 수 있는지를 보기 시작했습니다.' }, { id: 'forty-ninth-victory-release-again', bgm: 'story-dark', chapter: '다시 풀어 보내다', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '두 번 잡아도 마음이 굽지 않는다면 다시 놓아 보낼 뿐입니다. 다만 이번에는 그가 돌아가는 길마다 촉한군이 지킨 마을과 포로들이 그의 말을 시험할 것입니다.' }, @@ -3238,7 +3238,7 @@ export const fortyNinthBattleVictoryPages: StoryPage[] = [ id: 'forty-ninth-next-southern-minds', bgm: 'story-dark', chapter: '남중의 마음', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '황권', text: '포로 명부와 군량 장부가 어긋나지 않았습니다. 다음 싸움에서는 맹획만이 아니라 그를 따르는 호족들의 마음도 흔들릴 것입니다. 회유는 이제 전투 뒤의 일이 아니라 전투 중의 목표가 되었습니다.' } @@ -3249,7 +3249,7 @@ export const fiftiethBattleIntroPages: StoryPage[] = [ id: 'fiftieth-southern-clans-waver', bgm: 'story-dark', chapter: '흔들리는 호족들', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '황권', text: '맹획이 두 번 붙잡혔다가 풀려나자 남중의 호족들은 서로 다른 말을 하기 시작했습니다. 어떤 이는 촉한군의 군율을 두려워했고, 어떤 이는 맹획이 아직 꺾이지 않았다고 외쳤습니다.' }, @@ -3257,7 +3257,7 @@ export const fiftiethBattleIntroPages: StoryPage[] = [ id: 'fiftieth-third-capture-plan', bgm: 'battle-prep', chapter: '세 번째 회유', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번 싸움에서는 맹획만 다시 잡아서는 부족합니다. 그를 따르는 호족들이 보는 앞에서 마을과 포로장을 지키고, 회유를 받아들일 길을 전장 안에 남겨야 합니다.' }, @@ -3265,7 +3265,7 @@ export const fiftiethBattleIntroPages: StoryPage[] = [ id: 'fiftieth-sortie', bgm: 'battle-prep', chapter: '칠종칠금 3차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '산채는 더 깊고 늪지는 더 넓습니다. 마량이 호족의 말을 붙잡고, 황권이 장부를 흔들리지 않게 하며, 조운과 마초가 돌격을 막아야 맹획을 세 번째로 생포할 수 있습니다.' } @@ -3276,14 +3276,14 @@ export const fiftiethBattleVictoryPages: StoryPage[] = [ id: 'fiftieth-victory-third-capture', bgm: 'militia-theme', chapter: '세 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 세 번째로 붙잡혔고, 그의 곁에 있던 호족들은 촉한군이 이번에도 마을을 태우지 않았다는 사실을 직접 보았습니다. 전장의 승리는 이제 남중 사람들의 말 속으로 번지기 시작했습니다.' }, { id: 'fiftieth-victory-clan-choice', bgm: 'story-dark', chapter: '호족의 흔들림', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '몇몇 촌장은 더 싸워도 마을이 남지 않는다고 말하기 시작했습니다. 그러나 맹획은 아직 고개를 숙이지 않았습니다. 그를 다시 풀어 보내면, 이번에는 남중의 호족들이 먼저 서로를 설득할 것입니다.' }, @@ -3291,7 +3291,7 @@ export const fiftiethBattleVictoryPages: StoryPage[] = [ id: 'fiftieth-next-persuasive-camp', bgm: 'story-dark', chapter: '전장 밖의 회유', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '남중을 얻는 길은 점점 분명해지고 있습니다. 다음 장에서는 맹획을 따르던 호족들과 직접 이야기를 나누고, 전투 전 선택이 전장 목표에 영향을 주는 흐름을 준비해야 합니다.' } @@ -3302,7 +3302,7 @@ export const fiftyFirstBattleIntroPages: StoryPage[] = [ id: 'fifty-first-clan-council-result', bgm: 'story-dark', chapter: '회유가 전장으로', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '호족 회의 뒤 일부 촌장은 맹획을 따르되 끝까지 싸우지는 않겠다고 속내를 보였습니다. 그들이 물러날 길을 남겨 두면 다음 전투는 섬멸보다 설득에 가까워질 것입니다.' }, @@ -3310,7 +3310,7 @@ export const fiftyFirstBattleIntroPages: StoryPage[] = [ id: 'fifty-first-fourth-capture-plan', bgm: 'battle-prep', chapter: '네 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번에는 맹획의 본영뿐 아니라 오돌골의 등갑병과 독천 제사장들이 전장을 뒤덮을 것입니다. 화덕과 독천을 함부로 건드리지 말고, 회유 퇴로와 마을 보증을 함께 지키십시오.' }, @@ -3318,7 +3318,7 @@ export const fiftyFirstBattleIntroPages: StoryPage[] = [ id: 'fifty-first-sortie', bgm: 'battle-prep', chapter: '칠종칠금 4차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '숲길은 더 좁고 강물은 더 깊습니다. 마량이 호족의 말을 붙잡고, 황권이 보증 장부를 지키며, 왕평과 마대가 열어 둔 산길을 따라 맹획을 네 번째 생포해야 합니다.' } @@ -3329,14 +3329,14 @@ export const fiftyFirstBattleVictoryPages: StoryPage[] = [ id: 'fifty-first-victory-fourth-capture', bgm: 'militia-theme', chapter: '네 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 네 번째로 포위되었고, 등갑병의 화덕과 독천 제사장들은 마을까지 밀려오지 못했습니다. 회유 퇴로로 물러난 호족들은 촉한군이 약속한 길을 지켰다는 사실을 직접 보았습니다.' }, { id: 'fifty-first-victory-amnesty-route', bgm: 'story-dark', chapter: '열어 둔 길', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '황권', text: '돌아간 자와 끝까지 싸운 자의 이름이 장부에 나뉘었습니다. 이제 남중의 호족들은 맹획의 고집만이 아니라, 촉한군의 약속이 지켜지는지도 함께 따지게 될 것입니다.' }, @@ -3344,7 +3344,7 @@ export const fiftyFirstBattleVictoryPages: StoryPage[] = [ id: 'fifty-first-next-deeper-nanzhong', bgm: 'story-dark', chapter: '더 깊은 남중', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '네 번 잡아도 맹획은 아직 남중 전체의 마음을 대표한다고 말합니다. 그렇다면 더 깊은 산채와 더 어려운 조건 앞에서도 같은 군율을 지켜 보여야 합니다.' } @@ -3355,7 +3355,7 @@ export const fiftySecondBattleIntroPages: StoryPage[] = [ id: 'fifty-second-hardliner-split', bgm: 'story-dark', chapter: '강경파의 갈라짐', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '네 번째 회유 뒤 일부 호족은 맹획의 깃발 아래 남아 있으면서도 마을을 지키는 길을 찾고 있습니다. 반대로 강경파는 그 길을 배신이라 부르며 퇴로를 끊으려 합니다.' }, @@ -3363,7 +3363,7 @@ export const fiftySecondBattleIntroPages: StoryPage[] = [ id: 'fifty-second-fifth-capture-plan', bgm: 'battle-prep', chapter: '다섯 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번 전투는 맹획을 다시 잡는 것만으로는 부족합니다. 강경파 호족을 본대와 분리하고, 회유 길목과 마을 보증을 동시에 지키면 남중 안에서 싸움을 그만둘 명분이 더 커질 것입니다.' }, @@ -3371,7 +3371,7 @@ export const fiftySecondBattleIntroPages: StoryPage[] = [ id: 'fifty-second-sortie', bgm: 'battle-prep', chapter: '칠종칠금 5차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '깊은 죽림과 협곡이 이어져 있습니다. 장수마다 맡을 길이 다릅니다. 마량과 황권은 말을 남기고, 왕평과 마대는 물러날 길을 열며, 조운과 황충은 추격을 막아야 합니다.' } @@ -3382,14 +3382,14 @@ export const fiftySecondBattleVictoryPages: StoryPage[] = [ id: 'fifty-second-victory-fifth-capture', bgm: 'militia-theme', chapter: '다섯 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 다섯 번째로 포위되었고, 강경파 호족은 본대와 갈라졌습니다. 촉한군은 다시 마을과 퇴로를 지켰고, 돌아간 자들은 이제 맹획의 말만 듣지 않게 되었습니다.' }, { id: 'fifty-second-victory-hardliner-ledger', bgm: 'story-dark', chapter: '갈라진 장부', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '황권', text: '끝까지 싸운 자와 물러난 자의 이름이 더 분명해졌습니다. 처벌의 장부가 아니라 약속의 장부로 남겨야 합니다. 그래야 다음 석방도 군율을 잃지 않습니다.' }, @@ -3397,7 +3397,7 @@ export const fiftySecondBattleVictoryPages: StoryPage[] = [ id: 'fifty-second-next-sixth-capture', bgm: 'story-dark', chapter: '여섯 번째 길', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '남중의 마음은 점점 흔들리고 있습니다. 그러나 맹획의 자존심은 아직 마지막 벽처럼 남아 있습니다. 다음 싸움에서는 그 자존심을 꺾되, 남중 전체를 꺾지는 말아야 합니다.' } @@ -3408,7 +3408,7 @@ export const fiftyThirdBattleIntroPages: StoryPage[] = [ id: 'fifty-third-pride-remains', bgm: 'story-dark', chapter: '남은 자존심', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '다섯 번째 생포 뒤 강경파와 물러설 호족의 말이 갈라졌습니다. 그러나 맹획은 아직 남중의 자존심을 내세우며, 마지막으로 깊은 계곡의 부족들을 불러 모았습니다.' }, @@ -3416,7 +3416,7 @@ export const fiftyThirdBattleIntroPages: StoryPage[] = [ id: 'fifty-third-sixth-capture-plan', bgm: 'battle-prep', chapter: '여섯 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번에는 적을 밀어붙이는 힘보다 멈춰 설 줄 아는 군율이 중요합니다. 마을 신뢰를 지키고 강경파 잔당의 길을 끊되, 맹획에게 남중 전체가 더는 같은 마음이 아님을 보이십시오.' }, @@ -3424,7 +3424,7 @@ export const fiftyThirdBattleIntroPages: StoryPage[] = [ id: 'fifty-third-sortie', bgm: 'battle-prep', chapter: '칠종칠금 6차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '황권', text: '계곡 길은 넓어 보이나 물길과 절벽이 칼처럼 갈라져 있습니다. 장부를 들 장수, 산길을 지킬 장수, 추격을 멈출 장수를 따로 세워야 여섯 번째 생포가 설득으로 남습니다.' } @@ -3435,14 +3435,14 @@ export const fiftyThirdBattleVictoryPages: StoryPage[] = [ id: 'fifty-third-victory-sixth-capture', bgm: 'militia-theme', chapter: '여섯 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 여섯 번째로 붙잡혔고, 깊은 계곡의 부족들은 촉한군이 강경파 잔당을 누르면서도 마을을 함부로 밟지 않는 모습을 보았습니다.' }, { id: 'fifty-third-victory-trust-ledger', bgm: 'story-dark', chapter: '신뢰의 장부', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '처음에는 두려워 숨던 촌장들이 이제는 직접 이름을 말했습니다. 두려움의 장부가 아니라 신뢰의 장부가 만들어졌으니, 마지막 설득의 말도 조금은 닿을 수 있습니다.' }, @@ -3450,7 +3450,7 @@ export const fiftyThirdBattleVictoryPages: StoryPage[] = [ id: 'fifty-third-next-final-capture', bgm: 'story-dark', chapter: '마지막 설득 앞', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '여섯 번 잡고도 맹획은 쉽게 항복하지 않을 것입니다. 그러나 이제 남중의 눈은 맹획의 고집뿐 아니라 촉한군의 약속도 함께 보고 있습니다. 다음은 칠종칠금의 마지막 문턱입니다.' } @@ -3461,7 +3461,7 @@ export const fiftyFourthBattleIntroPages: StoryPage[] = [ id: 'fifty-fourth-final-council', bgm: 'story-dark', chapter: '마지막 문턱', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '마량', text: '여섯 번째 생포 뒤 남중의 촌장들은 더는 맹획의 말만 듣지 않았습니다. 그러나 맹획은 마지막 자존심을 걸고, 모든 부족 앞에서 다시 한 번 싸워 보자고 외쳤습니다.' }, @@ -3469,7 +3469,7 @@ export const fiftyFourthBattleIntroPages: StoryPage[] = [ id: 'fifty-fourth-seventh-capture-plan', bgm: 'battle-prep', chapter: '일곱 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '이번 싸움은 남중을 꺾는 전투가 아니라 남중이 스스로 고개를 끄덕이게 만드는 전투입니다. 맹획을 마지막으로 생포하되, 회의장과 마을, 신뢰 장부를 모두 지키십시오.' }, @@ -3477,7 +3477,7 @@ export const fiftyFourthBattleIntroPages: StoryPage[] = [ id: 'fifty-fourth-sortie', bgm: 'battle-prep', chapter: '칠종칠금 7차전', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '왕평', text: '마지막 전장은 길이 많아 보이지만, 잘못 밀고 들어가면 촌장들이 보는 앞에서 군율을 잃게 됩니다. 빠른 장수는 추격을 멈추고, 문사는 약속을 남기며, 전열은 회의장을 지켜야 합니다.' } @@ -3488,14 +3488,14 @@ export const fiftyFourthBattleVictoryPages: StoryPage[] = [ id: 'fifty-fourth-victory-seventh-capture', bgm: 'militia-theme', chapter: '일곱 번째 생포', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', text: '맹획은 일곱 번째로 포위되었습니다. 그러나 이번에는 포로장의 침묵이 아니라, 촌장들의 눈앞에서 지켜진 약속과 무너진 고집이 함께 남았습니다.' }, { id: 'fifty-fourth-victory-meng-huo-yields', bgm: 'story-dark', chapter: '맹획의 항복', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '맹획', text: '일곱 번 잡히고 일곱 번 풀려도 그대들은 남중의 백성을 짓밟지 않았다. 이제는 내가 졌음을 인정하겠다. 남중의 길은 촉한의 길과 함께하겠다.' }, @@ -3503,7 +3503,7 @@ export const fiftyFourthBattleVictoryPages: StoryPage[] = [ id: 'fifty-fourth-nanzhong-pacified', bgm: 'story-dark', chapter: '남중 평정', - background: 'story-nanzhong', + background: 'story-nanzhong-captures', speaker: '제갈량', text: '남중은 힘으로만 묶인 땅이 아닙니다. 약속을 지킨 뒤 얻은 땅입니다. 이제 촉한은 뒤를 안정시키고, 북쪽을 바라볼 준비를 시작해야 합니다.' } diff --git a/src/game/data/storyAssets.ts b/src/game/data/storyAssets.ts index 4688e09..b888e67 100644 --- a/src/game/data/storyAssets.ts +++ b/src/game/data/storyAssets.ts @@ -22,6 +22,10 @@ import storyHanzhongRainDefenseUrl from '../../assets/images/story/21-hanzhong-r import storyLuchengPursuitUrl from '../../assets/images/story/22-lucheng-pursuit.png'; import storyWeishuiCampsUrl from '../../assets/images/story/23-weishui-camps.png'; import storyWeishuiNorthbankUrl from '../../assets/images/story/24-weishui-northbank.png'; +import storyYizhouLuoRoadUrl from '../../assets/images/story/25-yizhou-luo-road.png'; +import storyChengduSurrenderUrl from '../../assets/images/story/26-chengdu-surrender.png'; +import storyJingzhouCrisisUrl from '../../assets/images/story/27-jingzhou-crisis.png'; +import storyNanzhongCapturesUrl from '../../assets/images/story/28-nanzhong-seven-captures.png'; export const storyBackgroundAssets: Record = { 'story-chaos': storyChaosUrl, @@ -48,5 +52,9 @@ export const storyBackgroundAssets: Record = { 'story-lucheng-pursuit': storyLuchengPursuitUrl, 'story-weishui-camps': storyWeishuiCampsUrl, 'story-weishui-northbank': storyWeishuiNorthbankUrl, + 'story-yizhou-luo-road': storyYizhouLuoRoadUrl, + 'story-chengdu-surrender': storyChengduSurrenderUrl, + 'story-jingzhou-crisis': storyJingzhouCrisisUrl, + 'story-nanzhong-captures': storyNanzhongCapturesUrl, 'story-resolve': storyLiuBeiUrl };