1427 lines
32 KiB
Dart
1427 lines
32 KiB
Dart
import 'dart:async';
|
||
|
||
import 'package:flutter/foundation.dart';
|
||
import 'package:flutter/widgets.dart';
|
||
import 'package:flutter_localizations/flutter_localizations.dart';
|
||
import 'package:intl/intl.dart' as intl;
|
||
|
||
import 'app_localizations_en.dart';
|
||
import 'app_localizations_ja.dart';
|
||
import 'app_localizations_ko.dart';
|
||
|
||
// ignore_for_file: type=lint
|
||
|
||
/// Callers can lookup localized strings with an instance of L10n
|
||
/// returned by `L10n.of(context)`.
|
||
///
|
||
/// Applications need to include `L10n.delegate()` in their app's
|
||
/// `localizationDelegates` list, and the locales they support in the app's
|
||
/// `supportedLocales` list. For example:
|
||
///
|
||
/// ```dart
|
||
/// import 'l10n/app_localizations.dart';
|
||
///
|
||
/// return MaterialApp(
|
||
/// localizationsDelegates: L10n.localizationsDelegates,
|
||
/// supportedLocales: L10n.supportedLocales,
|
||
/// home: MyApplicationHome(),
|
||
/// );
|
||
/// ```
|
||
///
|
||
/// ## Update pubspec.yaml
|
||
///
|
||
/// Please make sure to update your pubspec.yaml to include the following
|
||
/// packages:
|
||
///
|
||
/// ```yaml
|
||
/// dependencies:
|
||
/// # Internationalization support.
|
||
/// flutter_localizations:
|
||
/// sdk: flutter
|
||
/// intl: any # Use the pinned version from flutter_localizations
|
||
///
|
||
/// # Rest of dependencies
|
||
/// ```
|
||
///
|
||
/// ## iOS Applications
|
||
///
|
||
/// iOS applications define key application metadata, including supported
|
||
/// locales, in an Info.plist file that is built into the application bundle.
|
||
/// To configure the locales supported by your app, you’ll need to edit this
|
||
/// file.
|
||
///
|
||
/// First, open your project’s ios/Runner.xcworkspace Xcode workspace file.
|
||
/// Then, in the Project Navigator, open the Info.plist file under the Runner
|
||
/// project’s Runner folder.
|
||
///
|
||
/// Next, select the Information Property List item, select Add Item from the
|
||
/// Editor menu, then select Localizations from the pop-up menu.
|
||
///
|
||
/// Select and expand the newly-created Localizations item then, for each
|
||
/// locale your application supports, add a new item and select the locale
|
||
/// you wish to add from the pop-up menu in the Value field. This list should
|
||
/// be consistent with the languages listed in the L10n.supportedLocales
|
||
/// property.
|
||
abstract class L10n {
|
||
L10n(String locale)
|
||
: localeName = intl.Intl.canonicalizedLocale(locale.toString());
|
||
|
||
final String localeName;
|
||
|
||
static L10n of(BuildContext context) {
|
||
return Localizations.of<L10n>(context, L10n)!;
|
||
}
|
||
|
||
static const LocalizationsDelegate<L10n> delegate = _L10nDelegate();
|
||
|
||
/// A list of this localizations delegate along with the default localizations
|
||
/// delegates.
|
||
///
|
||
/// Returns a list of localizations delegates containing this delegate along with
|
||
/// GlobalMaterialLocalizations.delegate, GlobalCupertinoLocalizations.delegate,
|
||
/// and GlobalWidgetsLocalizations.delegate.
|
||
///
|
||
/// Additional delegates can be added by appending to this list in
|
||
/// MaterialApp. This list does not have to be used at all if a custom list
|
||
/// of delegates is preferred or required.
|
||
static const List<LocalizationsDelegate<dynamic>> localizationsDelegates =
|
||
<LocalizationsDelegate<dynamic>>[
|
||
delegate,
|
||
GlobalMaterialLocalizations.delegate,
|
||
GlobalCupertinoLocalizations.delegate,
|
||
GlobalWidgetsLocalizations.delegate,
|
||
];
|
||
|
||
/// A list of this localizations delegate's supported locales.
|
||
static const List<Locale> supportedLocales = <Locale>[
|
||
Locale('en'),
|
||
Locale('ja'),
|
||
Locale('ko'),
|
||
];
|
||
|
||
/// Application title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ASCII NEVER DIE'**
|
||
String get appTitle;
|
||
|
||
/// Tag indicating offline mode
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No network'**
|
||
String get tagNoNetwork;
|
||
|
||
/// Tag indicating idle RPG gameplay
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Idle RPG loop'**
|
||
String get tagIdleRpg;
|
||
|
||
/// Tag indicating local save support
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Local saves'**
|
||
String get tagLocalSaves;
|
||
|
||
/// New character button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'New character'**
|
||
String get newCharacter;
|
||
|
||
/// Load save button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Load save'**
|
||
String get loadSave;
|
||
|
||
/// Load game dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Load Game'**
|
||
String get loadGame;
|
||
|
||
/// View build plan button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'View build plan'**
|
||
String get viewBuildPlan;
|
||
|
||
/// Build roadmap section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Build roadmap'**
|
||
String get buildRoadmap;
|
||
|
||
/// Tech stack section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Tech stack'**
|
||
String get techStack;
|
||
|
||
/// Cancel button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cancel'**
|
||
String get cancel;
|
||
|
||
/// Exit game dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Exit Game'**
|
||
String get exitGame;
|
||
|
||
/// Save progress confirmation message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Save your progress before leaving?'**
|
||
String get saveProgressQuestion;
|
||
|
||
/// Exit without saving button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Exit without saving'**
|
||
String get exitWithoutSaving;
|
||
|
||
/// Save and exit button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Save and Exit'**
|
||
String get saveAndExit;
|
||
|
||
/// Game screen title with character name
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ASCII NEVER DIE - {name}'**
|
||
String progressQuestTitle(String name);
|
||
|
||
/// Level up tooltip
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Level Up'**
|
||
String get levelUp;
|
||
|
||
/// Complete quest tooltip
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Complete Quest'**
|
||
String get completeQuest;
|
||
|
||
/// Complete plot tooltip
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Complete Plot'**
|
||
String get completePlot;
|
||
|
||
/// Character sheet panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Character Sheet'**
|
||
String get characterSheet;
|
||
|
||
/// Traits section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Traits'**
|
||
String get traits;
|
||
|
||
/// Stats section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Stats'**
|
||
String get stats;
|
||
|
||
/// Experience section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Experience'**
|
||
String get experience;
|
||
|
||
/// XP needed tooltip
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'XP needed for next level'**
|
||
String get xpNeededForNextLevel;
|
||
|
||
/// Skills section title (unified spellbook + skills)
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Skills'**
|
||
String get spellBook;
|
||
|
||
/// Empty skills message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No skills yet'**
|
||
String get noSpellsYet;
|
||
|
||
/// Equipment panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Equipment'**
|
||
String get equipment;
|
||
|
||
/// Inventory panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Inventory'**
|
||
String get inventory;
|
||
|
||
/// Encumbrance section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Encumbrance'**
|
||
String get encumbrance;
|
||
|
||
/// Combat log panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Combat Log'**
|
||
String get combatLog;
|
||
|
||
/// Plot development panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Plot Development'**
|
||
String get plotDevelopment;
|
||
|
||
/// Quests panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Quests'**
|
||
String get quests;
|
||
|
||
/// Name trait label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Name'**
|
||
String get traitName;
|
||
|
||
/// Race trait label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Race'**
|
||
String get traitRace;
|
||
|
||
/// Class trait label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Class'**
|
||
String get traitClass;
|
||
|
||
/// Level trait label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Level'**
|
||
String get traitLevel;
|
||
|
||
/// Strength stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'STR'**
|
||
String get statStr;
|
||
|
||
/// Constitution stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CON'**
|
||
String get statCon;
|
||
|
||
/// Dexterity stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEX'**
|
||
String get statDex;
|
||
|
||
/// Intelligence stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'INT'**
|
||
String get statInt;
|
||
|
||
/// Wisdom stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'WIS'**
|
||
String get statWis;
|
||
|
||
/// Charisma stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CHA'**
|
||
String get statCha;
|
||
|
||
/// Max HP stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'HP Max'**
|
||
String get statHpMax;
|
||
|
||
/// Max MP stat
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'MP Max'**
|
||
String get statMpMax;
|
||
|
||
/// Weapon equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Weapon'**
|
||
String get equipWeapon;
|
||
|
||
/// Shield equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Shield'**
|
||
String get equipShield;
|
||
|
||
/// Helm equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Helm'**
|
||
String get equipHelm;
|
||
|
||
/// Hauberk equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Hauberk'**
|
||
String get equipHauberk;
|
||
|
||
/// Brassairts equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Brassairts'**
|
||
String get equipBrassairts;
|
||
|
||
/// Vambraces equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Vambraces'**
|
||
String get equipVambraces;
|
||
|
||
/// Gauntlets equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Gauntlets'**
|
||
String get equipGauntlets;
|
||
|
||
/// Gambeson equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Gambeson'**
|
||
String get equipGambeson;
|
||
|
||
/// Cuisses equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Cuisses'**
|
||
String get equipCuisses;
|
||
|
||
/// Greaves equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Greaves'**
|
||
String get equipGreaves;
|
||
|
||
/// Sollerets equipment slot
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Sollerets'**
|
||
String get equipSollerets;
|
||
|
||
/// Coin label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Coin'**
|
||
String get gold;
|
||
|
||
/// Coin with amount
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Coin: {amount}'**
|
||
String goldAmount(int amount);
|
||
|
||
/// Prologue plot stage
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Prologue'**
|
||
String get prologue;
|
||
|
||
/// Act with roman numeral
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Act {number}'**
|
||
String actNumber(String number);
|
||
|
||
/// Empty quests message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No active quests'**
|
||
String get noActiveQuests;
|
||
|
||
/// Quest with number
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Quest #{number}'**
|
||
String questNumber(int number);
|
||
|
||
/// Welcome message in task progress panel
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Welcome to ASCII NEVER DIE!'**
|
||
String get welcomeMessage;
|
||
|
||
/// No saved games message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'No saved games found.'**
|
||
String get noSavedGames;
|
||
|
||
/// Load error message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Failed to load save file: {error}'**
|
||
String loadError(String error);
|
||
|
||
/// Name label in character creation
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Name'**
|
||
String get name;
|
||
|
||
/// Generate name tooltip
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Generate Name'**
|
||
String get generateName;
|
||
|
||
/// Total label for stats
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total'**
|
||
String get total;
|
||
|
||
/// Undo button for stat reroll
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Undo'**
|
||
String get unroll;
|
||
|
||
/// Roll button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Roll'**
|
||
String get roll;
|
||
|
||
/// Race selection title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Race'**
|
||
String get race;
|
||
|
||
/// Class selection title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Class'**
|
||
String get classTitle;
|
||
|
||
/// Percentage complete
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{percent}% complete'**
|
||
String percentComplete(int percent);
|
||
|
||
/// New character screen title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ASCII NEVER DIE - New Character'**
|
||
String get newCharacterTitle;
|
||
|
||
/// Confirm character creation button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Sold!'**
|
||
String get soldButton;
|
||
|
||
/// Victory overlay congratulations
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'★ CONGRATULATIONS ★'**
|
||
String get endingCongratulations;
|
||
|
||
/// Game completion message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'You have completed the game!'**
|
||
String get endingGameComplete;
|
||
|
||
/// Hero section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'THE HERO'**
|
||
String get endingTheHero;
|
||
|
||
/// Level display format
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Level {level}'**
|
||
String endingLevelFormat(int level);
|
||
|
||
/// Journey statistics section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'JOURNEY STATISTICS'**
|
||
String get endingJourneyStats;
|
||
|
||
/// Monsters killed stat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Monsters Slain'**
|
||
String get endingMonstersSlain;
|
||
|
||
/// Quests completed stat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Quests Completed'**
|
||
String get endingQuestsCompleted;
|
||
|
||
/// Play time stat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Play Time'**
|
||
String get endingPlayTime;
|
||
|
||
/// Final stats section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'FINAL STATS'**
|
||
String get endingFinalStats;
|
||
|
||
/// Credits section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CREDITS'**
|
||
String get endingCredits;
|
||
|
||
/// Thank you message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Thank you for playing!'**
|
||
String get endingThankYou;
|
||
|
||
/// Legend message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Your legend lives on...'**
|
||
String get endingLegendLivesOn;
|
||
|
||
/// Hall of fame message line 1
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Your heroic deeds will be'**
|
||
String get endingHallOfFameLine1;
|
||
|
||
/// Hall of fame message line 2
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'remembered in the Hall of Fame'**
|
||
String get endingHallOfFameLine2;
|
||
|
||
/// Hall of fame button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'HALL OF FAME'**
|
||
String get endingHallOfFameButton;
|
||
|
||
/// Skip button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SKIP'**
|
||
String get endingSkip;
|
||
|
||
/// Tap to skip hint
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'TAP TO SKIP'**
|
||
String get endingTapToSkip;
|
||
|
||
/// Hold to speed up scrolling hint
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'HOLD TO SPEED UP'**
|
||
String get endingHoldToSpeedUp;
|
||
|
||
/// Menu panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'MENU'**
|
||
String get menuTitle;
|
||
|
||
/// Options menu title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'OPTIONS'**
|
||
String get optionsTitle;
|
||
|
||
/// Sound dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SOUND'**
|
||
String get soundTitle;
|
||
|
||
/// Control section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CONTROL'**
|
||
String get controlSection;
|
||
|
||
/// Info section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'INFO'**
|
||
String get infoSection;
|
||
|
||
/// Settings section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SETTINGS'**
|
||
String get settingsSection;
|
||
|
||
/// Save/Exit section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SAVE / EXIT'**
|
||
String get saveExitSection;
|
||
|
||
/// OK button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'OK'**
|
||
String get ok;
|
||
|
||
/// Recharge button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'RECHARGE'**
|
||
String get rechargeButton;
|
||
|
||
/// Create button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CREATE'**
|
||
String get createButton;
|
||
|
||
/// Preview panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PREVIEW'**
|
||
String get previewTitle;
|
||
|
||
/// Name panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'NAME'**
|
||
String get nameTitle;
|
||
|
||
/// Stats panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'STATS'**
|
||
String get statsTitle;
|
||
|
||
/// Race panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'RACE'**
|
||
String get raceTitle;
|
||
|
||
/// Class panel title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CLASS'**
|
||
String get classSection;
|
||
|
||
/// BGM volume label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'BGM'**
|
||
String get bgmLabel;
|
||
|
||
/// SFX volume label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SFX'**
|
||
String get sfxLabel;
|
||
|
||
/// HP bar label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'HP'**
|
||
String get hpLabel;
|
||
|
||
/// MP bar label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'MP'**
|
||
String get mpLabel;
|
||
|
||
/// EXP bar label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'EXP'**
|
||
String get expLabel;
|
||
|
||
/// Level up notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'LEVEL UP!'**
|
||
String get notifyLevelUp;
|
||
|
||
/// Level notification subtitle
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Level {level}'**
|
||
String notifyLevel(int level);
|
||
|
||
/// Quest complete notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'QUEST COMPLETE!'**
|
||
String get notifyQuestComplete;
|
||
|
||
/// Prologue complete notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'PROLOGUE COMPLETE!'**
|
||
String get notifyPrologueComplete;
|
||
|
||
/// Act complete notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ACT {number} COMPLETE!'**
|
||
String notifyActComplete(int number);
|
||
|
||
/// New spell notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'NEW SPELL!'**
|
||
String get notifyNewSpell;
|
||
|
||
/// New equipment notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'NEW EQUIPMENT!'**
|
||
String get notifyNewEquipment;
|
||
|
||
/// Boss defeated notification title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'BOSS DEFEATED!'**
|
||
String get notifyBossDefeated;
|
||
|
||
/// Recharge rolls dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'RECHARGE ROLLS'**
|
||
String get rechargeRollsTitle;
|
||
|
||
/// Recharge rolls free user message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Recharge 5 rolls for free?'**
|
||
String get rechargeRollsFree;
|
||
|
||
/// Recharge rolls ad message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Watch an ad to recharge 5 rolls?'**
|
||
String get rechargeRollsAd;
|
||
|
||
/// Debug section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEBUG'**
|
||
String get debugTitle;
|
||
|
||
/// Debug cheats section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEBUG CHEATS'**
|
||
String get debugCheatsTitle;
|
||
|
||
/// Debug tools section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEBUG TOOLS'**
|
||
String get debugToolsTitle;
|
||
|
||
/// Developer tools header
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEVELOPER TOOLS'**
|
||
String get debugDeveloperTools;
|
||
|
||
/// Skip task cheat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SKIP TASK (L+1)'**
|
||
String get debugSkipTask;
|
||
|
||
/// Skip task cheat description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Complete task instantly'**
|
||
String get debugSkipTaskDesc;
|
||
|
||
/// Skip quest cheat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SKIP QUEST (Q!)'**
|
||
String get debugSkipQuest;
|
||
|
||
/// Skip quest cheat description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Complete quest instantly'**
|
||
String get debugSkipQuestDesc;
|
||
|
||
/// Skip act cheat label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SKIP ACT (P!)'**
|
||
String get debugSkipAct;
|
||
|
||
/// Skip act cheat description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Complete act instantly'**
|
||
String get debugSkipActDesc;
|
||
|
||
/// Create test character button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CREATE TEST CHARACTER'**
|
||
String get debugCreateTestCharacter;
|
||
|
||
/// Create test character description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Register Level 100 character to Hall of Fame'**
|
||
String get debugCreateTestCharacterDesc;
|
||
|
||
/// Create test character dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'CREATE TEST CHARACTER?'**
|
||
String get debugCreateTestCharacterTitle;
|
||
|
||
/// Create test character confirmation message
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Current character will be converted to Level 100\nand registered to the Hall of Fame.\n\n⚠️ Current save file will be deleted.\nThis action cannot be undone.'**
|
||
String get debugCreateTestCharacterMessage;
|
||
|
||
/// Debug turbo mode label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEBUG: TURBO (20x)'**
|
||
String get debugTurbo;
|
||
|
||
/// IAP purchased debug toggle
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'IAP PURCHASED'**
|
||
String get debugIapPurchased;
|
||
|
||
/// IAP purchased debug description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ON: Behave as paid user (ads removed)'**
|
||
String get debugIapPurchasedDesc;
|
||
|
||
/// Offline hours debug label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'OFFLINE HOURS'**
|
||
String get debugOfflineHours;
|
||
|
||
/// Offline hours debug description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Test return rewards (applies on restart)'**
|
||
String get debugOfflineHoursDesc;
|
||
|
||
/// Test character creation description
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Modify current character to Level 100\nand register to the Hall of Fame.'**
|
||
String get debugTestCharacterDesc;
|
||
|
||
/// Arena main screen title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'LOCAL ARENA'**
|
||
String get arenaTitle;
|
||
|
||
/// Arena character selection subtitle
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SELECT YOUR FIGHTER'**
|
||
String get arenaSelectFighter;
|
||
|
||
/// Arena empty state title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Not enough heroes'**
|
||
String get arenaEmptyTitle;
|
||
|
||
/// Arena empty state hint
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Clear the game with 2+ characters'**
|
||
String get arenaEmptyHint;
|
||
|
||
/// Arena setup screen title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ARENA SETUP'**
|
||
String get arenaSetupTitle;
|
||
|
||
/// Start battle button
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'START BATTLE'**
|
||
String get arenaStartBattle;
|
||
|
||
/// Arena battle screen title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ARENA BATTLE'**
|
||
String get arenaBattleTitle;
|
||
|
||
/// My equipment header
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'MY EQUIPMENT'**
|
||
String get arenaMyEquipment;
|
||
|
||
/// Enemy equipment header
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ENEMY EQUIPMENT'**
|
||
String get arenaEnemyEquipment;
|
||
|
||
/// Selected slot label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SELECTED'**
|
||
String get arenaSelected;
|
||
|
||
/// Recommended slot label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'BEST'**
|
||
String get arenaRecommended;
|
||
|
||
/// Weapon slot locked label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'LOCKED'**
|
||
String get arenaWeaponLocked;
|
||
|
||
/// Arena victory title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'VICTORY!'**
|
||
String get arenaVictory;
|
||
|
||
/// Arena defeat title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'DEFEAT...'**
|
||
String get arenaDefeat;
|
||
|
||
/// Equipment exchange section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'EQUIPMENT EXCHANGE'**
|
||
String get arenaEquipmentExchange;
|
||
|
||
/// Turns label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'TURNS'**
|
||
String get arenaTurns;
|
||
|
||
/// Winner label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'WINNER'**
|
||
String get arenaWinner;
|
||
|
||
/// Loser label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'LOSER'**
|
||
String get arenaLoser;
|
||
|
||
/// Battle summary text
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'{winner} defeated {loser} in {turns} TURNS'**
|
||
String arenaDefeatedIn(String winner, String loser, int turns);
|
||
|
||
/// Score gain prediction
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'You will GAIN +{score}'**
|
||
String arenaScoreGain(int score);
|
||
|
||
/// Score loss prediction
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'You will LOSE {score}'**
|
||
String arenaScoreLose(int score);
|
||
|
||
/// Even trade label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Even trade'**
|
||
String get arenaEvenTrade;
|
||
|
||
/// Score label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SCORE'**
|
||
String get arenaScore;
|
||
|
||
/// Statistics dialog title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Statistics'**
|
||
String get statsStatistics;
|
||
|
||
/// Session tab label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Session'**
|
||
String get statsSession;
|
||
|
||
/// Accumulated tab label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total'**
|
||
String get statsAccumulated;
|
||
|
||
/// Combat section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Combat'**
|
||
String get statsCombat;
|
||
|
||
/// Play time label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Play Time'**
|
||
String get statsPlayTime;
|
||
|
||
/// Monsters killed label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Monsters Killed'**
|
||
String get statsMonstersKilled;
|
||
|
||
/// Bosses defeated label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Bosses Defeated'**
|
||
String get statsBossesDefeated;
|
||
|
||
/// Deaths label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Deaths'**
|
||
String get statsDeaths;
|
||
|
||
/// Damage section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Damage'**
|
||
String get statsDamage;
|
||
|
||
/// Damage dealt label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Damage Dealt'**
|
||
String get statsDamageDealt;
|
||
|
||
/// Damage taken label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Damage Taken'**
|
||
String get statsDamageTaken;
|
||
|
||
/// Average DPS label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Average DPS'**
|
||
String get statsAverageDps;
|
||
|
||
/// Skills section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Skills'**
|
||
String get statsSkills;
|
||
|
||
/// Skills used label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Skills Used'**
|
||
String get statsSkillsUsed;
|
||
|
||
/// Critical hits label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Critical Hits'**
|
||
String get statsCriticalHits;
|
||
|
||
/// Max critical streak label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Max Critical Streak'**
|
||
String get statsMaxCriticalStreak;
|
||
|
||
/// Critical rate label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Critical Rate'**
|
||
String get statsCriticalRate;
|
||
|
||
/// Economy section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Economy'**
|
||
String get statsEconomy;
|
||
|
||
/// Gold earned label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Gold Earned'**
|
||
String get statsGoldEarned;
|
||
|
||
/// Gold spent label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Gold Spent'**
|
||
String get statsGoldSpent;
|
||
|
||
/// Items sold label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Items Sold'**
|
||
String get statsItemsSold;
|
||
|
||
/// Potions used label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Potions Used'**
|
||
String get statsPotionsUsed;
|
||
|
||
/// Progress section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Progress'**
|
||
String get statsProgress;
|
||
|
||
/// Level ups label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Level Ups'**
|
||
String get statsLevelUps;
|
||
|
||
/// Quests completed label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Quests Completed'**
|
||
String get statsQuestsCompleted;
|
||
|
||
/// Records section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Records'**
|
||
String get statsRecords;
|
||
|
||
/// Highest level label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Highest Level'**
|
||
String get statsHighestLevel;
|
||
|
||
/// Highest gold held label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Highest Gold Held'**
|
||
String get statsHighestGoldHeld;
|
||
|
||
/// Best critical streak label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Best Critical Streak'**
|
||
String get statsBestCriticalStreak;
|
||
|
||
/// Total play section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Play'**
|
||
String get statsTotalPlay;
|
||
|
||
/// Total play time label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Play Time'**
|
||
String get statsTotalPlayTime;
|
||
|
||
/// Games started label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Games Started'**
|
||
String get statsGamesStarted;
|
||
|
||
/// Games completed label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Games Completed'**
|
||
String get statsGamesCompleted;
|
||
|
||
/// Completion rate label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Completion Rate'**
|
||
String get statsCompletionRate;
|
||
|
||
/// Total combat section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Combat'**
|
||
String get statsTotalCombat;
|
||
|
||
/// Total deaths label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Deaths'**
|
||
String get statsTotalDeaths;
|
||
|
||
/// Total level ups label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Level Ups'**
|
||
String get statsTotalLevelUps;
|
||
|
||
/// Total damage section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Damage'**
|
||
String get statsTotalDamage;
|
||
|
||
/// Total skills section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Skills'**
|
||
String get statsTotalSkills;
|
||
|
||
/// Total economy section title
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'Total Economy'**
|
||
String get statsTotalEconomy;
|
||
|
||
/// Level up notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'LEVEL UP'**
|
||
String get notifyLevelUpLabel;
|
||
|
||
/// Quest done notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'QUEST DONE'**
|
||
String get notifyQuestDoneLabel;
|
||
|
||
/// Act clear notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'ACT CLEAR'**
|
||
String get notifyActClearLabel;
|
||
|
||
/// New spell notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'NEW SPELL'**
|
||
String get notifyNewSpellLabel;
|
||
|
||
/// New item notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'NEW ITEM'**
|
||
String get notifyNewItemLabel;
|
||
|
||
/// Boss slain notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'BOSS SLAIN'**
|
||
String get notifyBossSlainLabel;
|
||
|
||
/// Game saved notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'SAVED'**
|
||
String get notifySavedLabel;
|
||
|
||
/// Info notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'INFO'**
|
||
String get notifyInfoLabel;
|
||
|
||
/// Warning notification type label
|
||
///
|
||
/// In en, this message translates to:
|
||
/// **'WARNING'**
|
||
String get notifyWarningLabel;
|
||
}
|
||
|
||
class _L10nDelegate extends LocalizationsDelegate<L10n> {
|
||
const _L10nDelegate();
|
||
|
||
@override
|
||
Future<L10n> load(Locale locale) {
|
||
return SynchronousFuture<L10n>(lookupL10n(locale));
|
||
}
|
||
|
||
@override
|
||
bool isSupported(Locale locale) =>
|
||
<String>['en', 'ja', 'ko'].contains(locale.languageCode);
|
||
|
||
@override
|
||
bool shouldReload(_L10nDelegate old) => false;
|
||
}
|
||
|
||
L10n lookupL10n(Locale locale) {
|
||
// Lookup logic when only language code is specified.
|
||
switch (locale.languageCode) {
|
||
case 'en':
|
||
return L10nEn();
|
||
case 'ja':
|
||
return L10nJa();
|
||
case 'ko':
|
||
return L10nKo();
|
||
}
|
||
|
||
throw FlutterError(
|
||
'L10n.delegate failed to load unsupported locale "$locale". This is likely '
|
||
'an issue with the localizations generation tool. Please file an issue '
|
||
'on GitHub with a reproducible sample app and the gen-l10n configuration '
|
||
'that was used.',
|
||
);
|
||
}
|