## 스킬 시스템 개선 - 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: 클래스 데이터 정리
245 lines
4.3 KiB
Dart
245 lines
4.3 KiB
Dart
// ignore: unused_import
|
|
import 'package:intl/intl.dart' as intl;
|
|
import 'app_localizations.dart';
|
|
|
|
// ignore_for_file: type=lint
|
|
|
|
/// The translations for Chinese (`zh`).
|
|
class L10nZh extends L10n {
|
|
L10nZh([String locale = 'zh']) : super(locale);
|
|
|
|
@override
|
|
String get appTitle => 'ASCII NEVER DIE';
|
|
|
|
@override
|
|
String get tagNoNetwork => 'No network';
|
|
|
|
@override
|
|
String get tagIdleRpg => 'Idle RPG loop';
|
|
|
|
@override
|
|
String get tagLocalSaves => 'Local saves';
|
|
|
|
@override
|
|
String get newCharacter => 'New character';
|
|
|
|
@override
|
|
String get loadSave => 'Load save';
|
|
|
|
@override
|
|
String get loadGame => 'Load Game';
|
|
|
|
@override
|
|
String get viewBuildPlan => 'View build plan';
|
|
|
|
@override
|
|
String get buildRoadmap => 'Build roadmap';
|
|
|
|
@override
|
|
String get techStack => 'Tech stack';
|
|
|
|
@override
|
|
String get cancel => 'Cancel';
|
|
|
|
@override
|
|
String get exitGame => 'Exit Game';
|
|
|
|
@override
|
|
String get saveProgressQuestion => 'Save your progress before leaving?';
|
|
|
|
@override
|
|
String get exitWithoutSaving => 'Exit without saving';
|
|
|
|
@override
|
|
String get saveAndExit => 'Save and Exit';
|
|
|
|
@override
|
|
String progressQuestTitle(String name) {
|
|
return 'Progress Quest - $name';
|
|
}
|
|
|
|
@override
|
|
String get levelUp => 'Level Up';
|
|
|
|
@override
|
|
String get completeQuest => 'Complete Quest';
|
|
|
|
@override
|
|
String get completePlot => 'Complete Plot';
|
|
|
|
@override
|
|
String get characterSheet => 'Character Sheet';
|
|
|
|
@override
|
|
String get traits => 'Traits';
|
|
|
|
@override
|
|
String get stats => 'Stats';
|
|
|
|
@override
|
|
String get experience => 'Experience';
|
|
|
|
@override
|
|
String get xpNeededForNextLevel => 'XP needed for next level';
|
|
|
|
@override
|
|
String get spellBook => '技能';
|
|
|
|
@override
|
|
String get noSpellsYet => '暂无技能';
|
|
|
|
@override
|
|
String get equipment => 'Equipment';
|
|
|
|
@override
|
|
String get inventory => 'Inventory';
|
|
|
|
@override
|
|
String get encumbrance => 'Encumbrance';
|
|
|
|
@override
|
|
String get combatLog => '战斗日志';
|
|
|
|
@override
|
|
String get plotDevelopment => 'Plot Development';
|
|
|
|
@override
|
|
String get quests => 'Quests';
|
|
|
|
@override
|
|
String get traitName => 'Name';
|
|
|
|
@override
|
|
String get traitRace => 'Race';
|
|
|
|
@override
|
|
String get traitClass => 'Class';
|
|
|
|
@override
|
|
String get traitLevel => 'Level';
|
|
|
|
@override
|
|
String get statStr => 'STR';
|
|
|
|
@override
|
|
String get statCon => 'CON';
|
|
|
|
@override
|
|
String get statDex => 'DEX';
|
|
|
|
@override
|
|
String get statInt => 'INT';
|
|
|
|
@override
|
|
String get statWis => 'WIS';
|
|
|
|
@override
|
|
String get statCha => 'CHA';
|
|
|
|
@override
|
|
String get statHpMax => 'HP Max';
|
|
|
|
@override
|
|
String get statMpMax => 'MP Max';
|
|
|
|
@override
|
|
String get equipWeapon => 'Weapon';
|
|
|
|
@override
|
|
String get equipShield => 'Shield';
|
|
|
|
@override
|
|
String get equipHelm => 'Helm';
|
|
|
|
@override
|
|
String get equipHauberk => 'Hauberk';
|
|
|
|
@override
|
|
String get equipBrassairts => 'Brassairts';
|
|
|
|
@override
|
|
String get equipVambraces => 'Vambraces';
|
|
|
|
@override
|
|
String get equipGauntlets => 'Gauntlets';
|
|
|
|
@override
|
|
String get equipGambeson => 'Gambeson';
|
|
|
|
@override
|
|
String get equipCuisses => 'Cuisses';
|
|
|
|
@override
|
|
String get equipGreaves => 'Greaves';
|
|
|
|
@override
|
|
String get equipSollerets => 'Sollerets';
|
|
|
|
@override
|
|
String get gold => 'Gold';
|
|
|
|
@override
|
|
String goldAmount(int amount) {
|
|
return 'Gold: $amount';
|
|
}
|
|
|
|
@override
|
|
String get prologue => 'Prologue';
|
|
|
|
@override
|
|
String actNumber(String number) {
|
|
return 'Act $number';
|
|
}
|
|
|
|
@override
|
|
String get noActiveQuests => 'No active quests';
|
|
|
|
@override
|
|
String questNumber(int number) {
|
|
return 'Quest #$number';
|
|
}
|
|
|
|
@override
|
|
String get welcomeMessage => 'Welcome to Progress Quest!';
|
|
|
|
@override
|
|
String get noSavedGames => 'No saved games found.';
|
|
|
|
@override
|
|
String loadError(String error) {
|
|
return 'Failed to load save file: $error';
|
|
}
|
|
|
|
@override
|
|
String get name => 'Name';
|
|
|
|
@override
|
|
String get generateName => 'Generate Name';
|
|
|
|
@override
|
|
String get total => 'Total';
|
|
|
|
@override
|
|
String get unroll => 'Unroll';
|
|
|
|
@override
|
|
String get roll => 'Roll';
|
|
|
|
@override
|
|
String get race => 'Race';
|
|
|
|
@override
|
|
String get classTitle => 'Class';
|
|
|
|
@override
|
|
String percentComplete(int percent) {
|
|
return '$percent% complete';
|
|
}
|
|
|
|
@override
|
|
String get newCharacterTitle => 'ASCII NEVER DIE - New Character';
|
|
|
|
@override
|
|
String get soldButton => 'Sold!';
|
|
}
|