feat(ui): GameDataL10n 번역 UI 적용
new_character_screen.dart: - 종족 목록에 GameDataL10n.getRaceName() 적용 - 직업 목록에 GameDataL10n.getKlassName() 적용 game_play_screen.dart: - 캐릭터 정보의 종족/직업 번역 적용 - 주문 목록에 GameDataL10n.getSpellName() 적용
This commit is contained in:
@@ -3,6 +3,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:askiineverdie/l10n/app_localizations.dart';
|
||||
import 'package:askiineverdie/src/core/animation/ascii_animation_data.dart';
|
||||
import 'package:askiineverdie/src/core/animation/ascii_animation_type.dart';
|
||||
import 'package:askiineverdie/src/core/l10n/game_data_l10n.dart';
|
||||
import 'package:askiineverdie/src/core/model/game_state.dart';
|
||||
import 'package:askiineverdie/src/core/storage/theme_preferences.dart';
|
||||
import 'package:askiineverdie/src/core/util/pq_logic.dart' as pq_logic;
|
||||
@@ -409,8 +410,8 @@ class _GamePlayScreenState extends State<GamePlayScreen>
|
||||
final l10n = L10n.of(context);
|
||||
final traits = [
|
||||
(l10n.traitName, state.traits.name),
|
||||
(l10n.traitRace, state.traits.race),
|
||||
(l10n.traitClass, state.traits.klass),
|
||||
(l10n.traitRace, GameDataL10n.getRaceName(context, state.traits.race)),
|
||||
(l10n.traitClass, GameDataL10n.getKlassName(context, state.traits.klass)),
|
||||
(l10n.traitLevel, '${state.traits.level}'),
|
||||
];
|
||||
|
||||
@@ -487,11 +488,12 @@ class _GamePlayScreenState extends State<GamePlayScreen>
|
||||
padding: const EdgeInsets.symmetric(horizontal: 8),
|
||||
itemBuilder: (context, index) {
|
||||
final spell = state.spellBook.spells[index];
|
||||
final spellName = GameDataL10n.getSpellName(context, spell.name);
|
||||
return Row(
|
||||
children: [
|
||||
Expanded(
|
||||
child: Text(
|
||||
spell.name,
|
||||
spellName,
|
||||
style: const TextStyle(fontSize: 11),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
|
||||
@@ -3,6 +3,7 @@ import 'dart:math' as math;
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import 'package:askiineverdie/l10n/app_localizations.dart';
|
||||
import 'package:askiineverdie/src/core/l10n/game_data_l10n.dart';
|
||||
import 'package:askiineverdie/src/core/model/game_state.dart';
|
||||
import 'package:askiineverdie/src/core/model/pq_config.dart';
|
||||
import 'package:askiineverdie/src/core/util/deterministic_random.dart';
|
||||
@@ -400,6 +401,10 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
||||
itemCount: _races.length,
|
||||
itemBuilder: (context, index) {
|
||||
final isSelected = index == _selectedRaceIndex;
|
||||
final raceName = GameDataL10n.getRaceName(
|
||||
context,
|
||||
_races[index],
|
||||
);
|
||||
return ListTile(
|
||||
leading: Icon(
|
||||
isSelected
|
||||
@@ -410,7 +415,7 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
||||
: null,
|
||||
),
|
||||
title: Text(
|
||||
_races[index],
|
||||
raceName,
|
||||
style: TextStyle(
|
||||
fontWeight: isSelected
|
||||
? FontWeight.bold
|
||||
@@ -445,6 +450,10 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
||||
itemCount: _klasses.length,
|
||||
itemBuilder: (context, index) {
|
||||
final isSelected = index == _selectedKlassIndex;
|
||||
final klassName = GameDataL10n.getKlassName(
|
||||
context,
|
||||
_klasses[index],
|
||||
);
|
||||
return ListTile(
|
||||
leading: Icon(
|
||||
isSelected
|
||||
@@ -455,7 +464,7 @@ class _NewCharacterScreenState extends State<NewCharacterScreen> {
|
||||
: null,
|
||||
),
|
||||
title: Text(
|
||||
_klasses[index],
|
||||
klassName,
|
||||
style: TextStyle(
|
||||
fontWeight: isSelected
|
||||
? FontWeight.bold
|
||||
|
||||
Reference in New Issue
Block a user