feat(game): 게임 시스템 전면 개편 및 다국어 지원 확장
## 스킬 시스템 개선 - skill_data.dart: 스킬 데이터 구조 전면 개편 (+1176 라인) - skill_service.dart: 스킬 발동 로직 확장 및 버프 시스템 연동 - skill.dart: 스킬 모델 개선, 쿨다운/효과 타입 추가 ## Canvas 애니메이션 리팩토링 - battle_composer.dart 삭제 (레거시 위젯 기반 렌더러) - monster_colors.dart 삭제 (AsciiCell 색상 시스템으로 통합) - canvas_battle_composer.dart: z-index 정렬 (몬스터 z=1, 캐릭터 z=2, 이펙트 z=3) - ascii_cell.dart, ascii_layer.dart: 코드 정리 ## UI/UX 개선 - hp_mp_bar.dart: l10n 적용, 몬스터 HP 바 컴팩트화 - death_overlay.dart: 사망 화면 개선 - equipment_stats_panel.dart: 장비 스탯 표시 확장 - active_buff_panel.dart: 버프 패널 개선 - notification_overlay.dart: 알림 시스템 개선 ## 다국어 지원 확장 - game_text_l10n.dart: 게임 텍스트 통합 (+758 라인) - 한국어/일본어/영어/중국어 번역 업데이트 - ARB 파일 동기화 ## 게임 로직 개선 - progress_service.dart: 진행 로직 리팩토링 - combat_calculator.dart: 전투 계산 로직 개선 - stat_calculator.dart: 스탯 계산 시스템 개선 - story_service.dart: 스토리 진행 로직 개선 ## 기타 - theme_preferences.dart 삭제 (미사용) - 테스트 파일 업데이트 - class_data.dart: 클래스 데이터 정리
This commit is contained in:
@@ -1165,16 +1165,13 @@ const Map<String, String> actQuestTranslationsKo = {
|
||||
/// 시네마틱 텍스트 한국어 번역
|
||||
const Map<String, String> cinematicTranslationsKo = {
|
||||
// 프롤로그
|
||||
'In the beginning, there was only the Void...':
|
||||
'태초에, 오직 공허(Void)만이 존재했다...',
|
||||
'In the beginning, there was only the Void...': '태초에, 오직 공허(Void)만이 존재했다...',
|
||||
'Then came the First Commit, and Light filled the Codebase.':
|
||||
'그리고 첫 번째 커밋이 도래하여, 빛이 코드베이스를 가득 채웠다.',
|
||||
'The Code God spoke: "Let there be Functions."':
|
||||
'코드의 신이 말씀하셨다: "함수가 있으라."',
|
||||
'The Code God spoke: "Let there be Functions."': '코드의 신이 말씀하셨다: "함수가 있으라."',
|
||||
'And so the Digital Realm was born...': '그리하여 디지털 세계가 탄생하였다...',
|
||||
'But from the shadows emerged the Glitch.': '그러나 어둠 속에서 글리치가 출현했다.',
|
||||
'Now, a new hero awakens to defend the Code.':
|
||||
'이제, 코드를 수호할 새로운 영웅이 깨어난다.',
|
||||
'Now, a new hero awakens to defend the Code.': '이제, 코드를 수호할 새로운 영웅이 깨어난다.',
|
||||
'Your journey begins...': '당신의 여정이 시작된다...',
|
||||
|
||||
// Act I: 각성
|
||||
@@ -1191,11 +1188,9 @@ const Map<String, String> cinematicTranslationsKo = {
|
||||
'=== ACT II: GROWTH ===': '=== 제2막: 성장 ===',
|
||||
'With the Dragon slain, you join the Debugger Knights.':
|
||||
'드래곤을 처치하고, 당신은 디버거 기사단에 입단한다.',
|
||||
'The Corrupted Network spreads its infection...':
|
||||
'손상된 네트워크가 감염을 퍼뜨리고 있다...',
|
||||
'The Corrupted Network spreads its infection...': '손상된 네트워크가 감염을 퍼뜨리고 있다...',
|
||||
'A traitor among the Knights is revealed!': '기사단 내 배신자가 드러났다!',
|
||||
'The Memory Leak Hydra threatens all data.':
|
||||
'메모리 누수 히드라가 모든 데이터를 위협한다.',
|
||||
'The Memory Leak Hydra threatens all data.': '메모리 누수 히드라가 모든 데이터를 위협한다.',
|
||||
'You must stop the corruption before it consumes everything.':
|
||||
'모든 것을 삼키기 전에 손상을 멈춰야 한다.',
|
||||
|
||||
@@ -1206,20 +1201,16 @@ const Map<String, String> cinematicTranslationsKo = {
|
||||
'고대 컴파일러가 당신에게 시련을 건넨다.',
|
||||
'A companion falls... their sacrifice not in vain.':
|
||||
'동료가 쓰러진다... 그들의 희생은 헛되지 않으리.',
|
||||
'The Buffer Overflow Titan guards the gate.':
|
||||
'버퍼 오버플로우 타이탄이 문을 지키고 있다.',
|
||||
'The Buffer Overflow Titan guards the gate.': '버퍼 오버플로우 타이탄이 문을 지키고 있다.',
|
||||
'Only through great sacrifice can you proceed.':
|
||||
'오직 큰 희생을 통해서만 앞으로 나아갈 수 있다.',
|
||||
|
||||
// Act IV: 결전
|
||||
'=== ACT IV: CONFRONTATION ===': '=== 제4막: 결전 ===',
|
||||
"The Glitch God's Citadel looms before you.":
|
||||
'글리치 신의 성채가 눈앞에 어렴풋이 보인다.',
|
||||
'Former enemies unite against the common threat.':
|
||||
'이전의 적들이 공동의 위협에 맞서 연합한다.',
|
||||
"The Glitch God's Citadel looms before you.": '글리치 신의 성채가 눈앞에 어렴풋이 보인다.',
|
||||
'Former enemies unite against the common threat.': '이전의 적들이 공동의 위협에 맞서 연합한다.',
|
||||
'The Final Alliance is forged.': '최후의 동맹이 결성되었다.',
|
||||
'The Kernel Panic Archon blocks your path.':
|
||||
'커널 패닉 아르콘이 당신의 길을 막는다.',
|
||||
'The Kernel Panic Archon blocks your path.': '커널 패닉 아르콘이 당신의 길을 막는다.',
|
||||
'One final battle before the end...': '종말 전의 마지막 전투...',
|
||||
|
||||
// Act V: 종말
|
||||
@@ -1227,13 +1218,11 @@ const Map<String, String> cinematicTranslationsKo = {
|
||||
'The Glitch God reveals its true form.': '글리치 신이 진정한 모습을 드러낸다.',
|
||||
'Reality itself begins to corrupt.': '현실 그 자체가 손상되기 시작한다.',
|
||||
'All hope rests upon your shoulders.': '모든 희망이 당신의 어깨에 달려 있다.',
|
||||
'The final battle for the Codebase begins!':
|
||||
'코드베이스를 위한 최후의 전투가 시작된다!',
|
||||
'The final battle for the Codebase begins!': '코드베이스를 위한 최후의 전투가 시작된다!',
|
||||
|
||||
// 엔딩
|
||||
'=== THE END ===': '=== 완결 ===',
|
||||
'The Glitch God falls. The corruption fades.':
|
||||
'글리치 신이 쓰러진다. 손상이 사라진다.',
|
||||
'The Glitch God falls. The corruption fades.': '글리치 신이 쓰러진다. 손상이 사라진다.',
|
||||
'System Reboot initiated...': '시스템 재부팅 시작...',
|
||||
'Peace returns to the Digital Realm.': '디지털 세계에 평화가 돌아온다.',
|
||||
'Your legend will be compiled into the eternal logs.':
|
||||
@@ -1505,37 +1494,37 @@ const Map<String, String> additionalItemOfsTranslationsKo = {
|
||||
|
||||
/// 모든 몬스터 번역을 통합하여 반환
|
||||
Map<String, String> get allMonsterTranslationsKo => {
|
||||
...monsterTranslationsKo,
|
||||
...advancedMonsterTranslationsKo,
|
||||
};
|
||||
...monsterTranslationsKo,
|
||||
...advancedMonsterTranslationsKo,
|
||||
};
|
||||
|
||||
/// 모든 아이템 속성 번역을 통합하여 반환
|
||||
Map<String, String> get allItemAttribTranslationsKo => {
|
||||
...itemAttribTranslationsKo,
|
||||
...additionalItemAttribTranslationsKo,
|
||||
};
|
||||
...itemAttribTranslationsKo,
|
||||
...additionalItemAttribTranslationsKo,
|
||||
};
|
||||
|
||||
/// 모든 아이템 접미사("~의") 번역을 통합하여 반환
|
||||
Map<String, String> get allItemOfsTranslationsKo => {
|
||||
...itemOfsTranslationsKo,
|
||||
...additionalItemOfsTranslationsKo,
|
||||
};
|
||||
...itemOfsTranslationsKo,
|
||||
...additionalItemOfsTranslationsKo,
|
||||
};
|
||||
|
||||
/// 모든 드롭 아이템 번역을 통합하여 반환
|
||||
Map<String, String> get allDropTranslationsKo => {
|
||||
...boringItemTranslationsKo,
|
||||
...dropItemTranslationsKo,
|
||||
...additionalDropTranslationsKo,
|
||||
};
|
||||
...boringItemTranslationsKo,
|
||||
...dropItemTranslationsKo,
|
||||
...additionalDropTranslationsKo,
|
||||
};
|
||||
|
||||
/// 모든 갑옷 번역을 통합하여 반환
|
||||
Map<String, String> get allArmorTranslationsKo => {
|
||||
...armorTranslationsKo,
|
||||
...additionalArmorTranslationsKo,
|
||||
};
|
||||
...armorTranslationsKo,
|
||||
...additionalArmorTranslationsKo,
|
||||
};
|
||||
|
||||
/// 모든 방패 번역을 통합하여 반환
|
||||
Map<String, String> get allShieldTranslationsKo => {
|
||||
...shieldTranslationsKo,
|
||||
...additionalShieldTranslationsKo,
|
||||
};
|
||||
...shieldTranslationsKo,
|
||||
...additionalShieldTranslationsKo,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user