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:
@@ -80,18 +80,12 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
text: 'Now, a new hero awakens to defend the Code.',
|
||||
durationMs: 3500,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'Your journey begins...',
|
||||
durationMs: 2500,
|
||||
),
|
||||
CinematicStep(text: 'Your journey begins...', durationMs: 2500),
|
||||
],
|
||||
|
||||
// Act I: 각성 (레벨 1-20)
|
||||
StoryAct.act1: [
|
||||
CinematicStep(
|
||||
text: '=== ACT I: AWAKENING ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== ACT I: AWAKENING ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'You have proven yourself against the lesser bugs.',
|
||||
durationMs: 3000,
|
||||
@@ -114,10 +108,7 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
|
||||
// Act II: 성장 (레벨 21-40)
|
||||
StoryAct.act2: [
|
||||
CinematicStep(
|
||||
text: '=== ACT II: GROWTH ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== ACT II: GROWTH ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'With the Dragon slain, you join the Debugger Knights.',
|
||||
durationMs: 3500,
|
||||
@@ -144,10 +135,7 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
|
||||
// Act III: 시련 (레벨 41-60)
|
||||
StoryAct.act3: [
|
||||
CinematicStep(
|
||||
text: '=== ACT III: TRIALS ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== ACT III: TRIALS ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'The path leads to the Null Kingdom...',
|
||||
asciiArt: _asciiNullKingdom,
|
||||
@@ -174,10 +162,7 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
|
||||
// Act IV: 결전 (레벨 61-80)
|
||||
StoryAct.act4: [
|
||||
CinematicStep(
|
||||
text: '=== ACT IV: CONFRONTATION ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== ACT IV: CONFRONTATION ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: "The Glitch God's Citadel looms before you.",
|
||||
asciiArt: _asciiCitadel,
|
||||
@@ -187,36 +172,24 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
text: 'Former enemies unite against the common threat.',
|
||||
durationMs: 3500,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'The Final Alliance is forged.',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: 'The Final Alliance is forged.', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'The Kernel Panic Archon blocks your path.',
|
||||
asciiArt: _asciiArchon,
|
||||
durationMs: 4000,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'One final battle before the end...',
|
||||
durationMs: 3500,
|
||||
),
|
||||
CinematicStep(text: 'One final battle before the end...', durationMs: 3500),
|
||||
],
|
||||
|
||||
// Act V: 종말 (레벨 81-100)
|
||||
StoryAct.act5: [
|
||||
CinematicStep(
|
||||
text: '=== ACT V: ENDGAME ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== ACT V: ENDGAME ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'The Glitch God reveals its true form.',
|
||||
asciiArt: _asciiGlitchGod,
|
||||
durationMs: 4000,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'Reality itself begins to corrupt.',
|
||||
durationMs: 3500,
|
||||
),
|
||||
CinematicStep(text: 'Reality itself begins to corrupt.', durationMs: 3500),
|
||||
CinematicStep(
|
||||
text: 'All hope rests upon your shoulders.',
|
||||
durationMs: 3000,
|
||||
@@ -229,19 +202,13 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
|
||||
// 엔딩: 시스템 재부팅, 평화 회복
|
||||
StoryAct.ending: [
|
||||
CinematicStep(
|
||||
text: '=== THE END ===',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: '=== THE END ===', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'The Glitch God falls. The corruption fades.',
|
||||
asciiArt: _asciiVictory,
|
||||
durationMs: 4000,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'System Reboot initiated...',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: 'System Reboot initiated...', durationMs: 3000),
|
||||
CinematicStep(
|
||||
text: 'Peace returns to the Digital Realm.',
|
||||
durationMs: 3500,
|
||||
@@ -250,15 +217,8 @@ const Map<StoryAct, List<CinematicStep>> cinematicData = {
|
||||
text: 'Your legend will be compiled into the eternal logs.',
|
||||
durationMs: 4000,
|
||||
),
|
||||
CinematicStep(
|
||||
text: 'THE END',
|
||||
asciiArt: _asciiTheEnd,
|
||||
durationMs: 5000,
|
||||
),
|
||||
CinematicStep(
|
||||
text: '...or is it?',
|
||||
durationMs: 3000,
|
||||
),
|
||||
CinematicStep(text: 'THE END', asciiArt: _asciiTheEnd, durationMs: 5000),
|
||||
CinematicStep(text: '...or is it?', durationMs: 3000),
|
||||
],
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user