From e79bd2587ded383e4b9f4a5719a7411f82017aa3 Mon Sep 17 00:00:00 2001 From: PurpleHato Date: Mon, 23 Jan 2023 21:36:28 +0100 Subject: [PATCH] ADD: Debug Warp Restoration + Translations (#2386) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Finish translations for Map Select * First Pass * TWEAK: Add back Japanese as default to conserve vanilla * TWEAK: replace some array with structs + some translations * TWEAK: loading messages [TODO: proper translations] * TWEAK: forgot to push z64.h for loading messages + translated scene type * TWEAK: spacing * TWEAK: comment * TWEAK: Small german OPT position * TWEAK: german typo * TWEAK: translation to cutsceneLabels * TWEAK: Nabooru's name + Lairs * TWEAK: Updated Cvar to new way to call them * ADD: German * Debug localization * TWEAK: Age They are noted as a flag thingy and not a literal age * Tweak: Frogot the Great Fairy * TWEAK: adressed comment Co-authored-by: Amaro Martínez --- soh/include/z64.h | 39 +- soh/soh/Enhancements/bootcommands.c | 1 + soh/soh/GameMenuBar.cpp | 2 + .../overlays/gamestates/ovl_select/z_select.c | 1229 ++++++++++------- 4 files changed, 734 insertions(+), 537 deletions(-) diff --git a/soh/include/z64.h b/soh/include/z64.h index 4edcd1fcd..cd795c62b 100644 --- a/soh/include/z64.h +++ b/soh/include/z64.h @@ -1215,18 +1215,45 @@ typedef struct { struct SelectContext; typedef struct { - /* 0x00 */ char* name; - /* 0x04 */ void (*loadFunc)(struct SelectContext*, s32); - /* 0x08 */ s32 entranceIndex; -} SceneSelectEntry; // size = 0xC + /* 0x00 */ char* japaneseName; + /* 0x04 */ char* englishName; + /* 0x08 */ char* germanName; + /* 0x0C */ char* frenchName; + /* 0x10 */ void (*loadFunc)(struct SelectContext*, s32); + /* 0x14 */ s32 entranceIndex; +} SceneSelectEntry; // size = 0x18 typedef struct { - /* */ char* name; + /* */ char* japaneseAge; + /* */ char* englishAge; + /* */ char* germanAge; + /* */ char* frenchAge; +} SceneSelectAgeLabels; + +typedef struct { + /* */ char* japaneseMessage; + /* */ char* englishMessage; + /* */ char* germanMessage; + /* */ char* frenchMessage; +} SceneSelectLoadingMessages; + +typedef struct { + /* */ char* englishAge; + /* */ char* germanAge; + /* */ char* frenchAge; +} BetterSceneSelectAgeLabels; + +typedef struct { + /* */ char* englishName; + /* */ char* germanName; + /* */ char* frenchName; /* */ s32 entranceIndex; } BetterSceneSelectEntrancePair; typedef struct { - /* */ char* name; + /* */ char* englishName; + /* */ char* germanName; + /* */ char* frenchName; /* */ void (*loadFunc)(struct SelectContext*, s32); /* */ s32 count; /* */ BetterSceneSelectEntrancePair entrancePairs[18]; diff --git a/soh/soh/Enhancements/bootcommands.c b/soh/soh/Enhancements/bootcommands.c index 9554b039d..4c428731e 100644 --- a/soh/soh/Enhancements/bootcommands.c +++ b/soh/soh/Enhancements/bootcommands.c @@ -22,6 +22,7 @@ void BootCommands_Init() { CVarRegisterInteger("gDebugEnabled", 0); CVarRegisterInteger("gLanguages", LANGUAGE_ENG); + CVarRegisterInteger("gDebugWarpScreenTranslation", 1); CVarRegisterInteger("gInvertYAxis", 1); CVarSetInteger("gRandoGenerating", 0); // Clear when a crash happened during rando seed generation #if defined(__SWITCH__) || defined(__WIIU__) diff --git a/soh/soh/GameMenuBar.cpp b/soh/soh/GameMenuBar.cpp index c13600bc5..72d69916f 100644 --- a/soh/soh/GameMenuBar.cpp +++ b/soh/soh/GameMenuBar.cpp @@ -1121,6 +1121,8 @@ namespace GameMenuBar { UIWidgets::Tooltip("Hides the game version and build details in the boot logo start screen"); UIWidgets::PaddedEnhancementCheckbox("Better Debug Warp Screen", "gBetterDebugWarpScreen", true, false); UIWidgets::Tooltip("Optimized debug warp screen, with the added ability to chose entrances and time of day"); + UIWidgets::PaddedEnhancementCheckbox("Debug Warp Screen Translation", "gDebugWarpScreenTranslation", true, false); + UIWidgets::Tooltip("Translate the Debug Warp Screen based on the game language"); UIWidgets::PaddedSeparator(); ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(12.0f, 6.0f)); ImGui::PushStyleVar(ImGuiStyleVar_ButtonTextAlign, ImVec2(0,0)); diff --git a/soh/src/overlays/gamestates/ovl_select/z_select.c b/soh/src/overlays/gamestates/ovl_select/z_select.c index b16ed991f..701743e59 100644 --- a/soh/src/overlays/gamestates/ovl_select/z_select.c +++ b/soh/src/overlays/gamestates/ovl_select/z_select.c @@ -108,533 +108,534 @@ void Select_Grotto_LoadGame(SelectContext* this, s32 grottoIndex) { } static SceneSelectEntry sScenes[] = { - { " 1:Hyrule Field", Select_LoadGame, 0x00CD }, - { " 2:Kakariko Village", Select_LoadGame, 0x00DB }, - { " 3:Graveyard", Select_LoadGame, 0x00E4 }, - { " 4:Zora's River", Select_LoadGame, 0x00EA }, - { " 5:Kokiri Forest", Select_LoadGame, 0x00EE }, - { " 6:Sacred Forest Meadow", Select_LoadGame, 0x00FC }, - { " 7:Lake Hylia", Select_LoadGame, 0x0102 }, - { " 8:Zora's Domain", Select_LoadGame, 0x0108 }, - { " 9:Zora's Fountain", Select_LoadGame, 0x010E }, - { "10:Gerudo Valley", Select_LoadGame, 0x0117 }, - { "11:Lost Woods", Select_LoadGame, 0x011E }, - { "12:Desert Colossus", Select_LoadGame, 0x0123 }, - { "13:Gerudo's Fortress", Select_LoadGame, 0x0129 }, - { "14:Haunted Wasteland", Select_LoadGame, 0x0130 }, - { "15:Hyrule Castle", Select_LoadGame, 0x0138 }, - { "16:Death Mountain Trail", Select_LoadGame, 0x013D }, - { "17:Death Mountain Crater", Select_LoadGame, 0x0147 }, - { "18:Goron City", Select_LoadGame, 0x014D }, - { "19:Lon Lon Ranch", Select_LoadGame, 0x0157 }, - { "20:Temple Of Time", Select_LoadGame, 0x0053 }, - { "21:Chamber of Sages", Select_LoadGame, 0x006B }, - { "22:Shooting Gallery", Select_LoadGame, 0x003B }, - { "23:Castle Courtyard Game", Select_LoadGame, 0x007A }, - { "24:Grave 1", Select_LoadGame, 0x031C }, - { "25:Grave 2", Select_LoadGame, 0x004B }, - { "26:Royal Family's Tomb", Select_LoadGame, 0x002D }, - { "27:Great Fairy's Fountain (Upgrades)", Select_LoadGame, 0x0315 }, - { "28:Fairy's Fountain (Grotto)", Select_LoadGame, 0x036D }, - { "29:Great Fairy's Fountain (Magic)", Select_LoadGame, 0x0371 }, - { "30:Ganon's Tower - Collapsing", Select_LoadGame, 0x043F }, - { "31:Castle Courtyard", Select_LoadGame, 0x0400 }, - { "32:Fishing Pond", Select_LoadGame, 0x045F }, - { "33:Bombchu Bowling Alley", Select_LoadGame, 0x0507 }, - { "34:Lon Lon Ranch House", Select_LoadGame, 0x004F }, - { "35:Lon Lon Ranch Silo", Select_LoadGame, 0x05D0 }, - { "36:Guard House", Select_LoadGame, 0x007E }, - { "37:Potion Shop", Select_LoadGame, 0x0072 }, - { "38:Treasure Chest Game", Select_LoadGame, 0x0063 }, - { "39:House Of Skulltula", Select_LoadGame, 0x0550 }, - { "40:Entrance to Market", Select_LoadGame, 0x0033 }, - { "41:Market", Select_LoadGame, 0x00B1 }, - { "42:Back Alley", Select_LoadGame, 0x00AD }, - { "43:Temple of Time Exterior", Select_LoadGame, 0x0171 }, - { "44:Link's House", Select_LoadGame, 0x00BB }, - { "45:Kakariko House 1", Select_LoadGame, 0x02FD }, - { "46:Back Alley House 1", Select_LoadGame, 0x043B }, - { "47:House of the Know-it-All Brothers", Select_LoadGame, 0x00C9 }, - { "48:House of Twins", Select_LoadGame, 0x009C }, - { "49:Mido's House", Select_LoadGame, 0x0433 }, - { "50:Saria's House", Select_LoadGame, 0x0437 }, - { "51:Stable", Select_LoadGame, 0x02F9 }, - { "52:Grave Keeper's Hut", Select_LoadGame, 0x030D }, - { "53:Dog Lady's House", Select_LoadGame, 0x0398 }, - { "54:Impa's House", Select_LoadGame, 0x039C }, - { "55:Lakeside Laboratory", Select_LoadGame, 0x0043 }, - { "56:Running Man's Tent", Select_LoadGame, 0x03A0 }, - { "57:Bazaar", Select_LoadGame, 0x00B7 }, - { "58:Kokiri Shop", Select_LoadGame, 0x00C1 }, - { "59:Goron Shop", Select_LoadGame, 0x037C }, - { "60:Zora Shop", Select_LoadGame, 0x0380 }, - { "61:Closed Shop", Select_LoadGame, 0x0384 }, - { "62:Potion Shop", Select_LoadGame, 0x0388 }, - { "63:Bombchu Shop ", Select_LoadGame, 0x0390 }, - { "64:Happy Mask Shop", Select_LoadGame, 0x0530 }, - { "65:Gerudo Training Ground", Select_LoadGame, 0x0008 }, - { "66:Inside the Deku Tree", Select_LoadGame, 0x0000 }, - { "67:Gohma's Lair", Select_LoadGame, 0x040F }, - { "68:Dodongo's Cavern", Select_LoadGame, 0x0004 }, - { "69:King Dodongo's Lair", Select_LoadGame, 0x040B }, - { "70:Inside Jabu-Jabu's Belly", Select_LoadGame, 0x0028 }, - { "71:Barinade's Lair", Select_LoadGame, 0x0301 }, - { "72:Forest Temple", Select_LoadGame, 0x0169 }, - { "73:Phantom Ganon's Lair", Select_LoadGame, 0x000C }, - { "74:Bottom of the Well", Select_LoadGame, 0x0098 }, - { "75:Shadow Temple", Select_LoadGame, 0x0037 }, - { "76:Bongo Bongo's Lair", Select_LoadGame, 0x0413 }, - { "77:Fire Temple", Select_LoadGame, 0x0165 }, - { "78:Volvagia's Lair", Select_LoadGame, 0x0305 }, - { "79:Water Temple", Select_LoadGame, 0x0010 }, - { "80:Morpha's Lair", Select_LoadGame, 0x0417 }, - { "81:Spirit Temple", Select_LoadGame, 0x0082 }, - { "82:Iron Knuckle's Lair", Select_LoadGame, 0x008D }, - { "83:Twinrova's Lair", Select_LoadGame, 0x05EC }, - { "84:Stairs to Ganondorf's Lair", Select_LoadGame, 0x041B }, - { "85:Ganondorf's Lair", Select_LoadGame, 0x041F }, - { "86:Ice Cavern", Select_LoadGame, 0x0088 }, - { "87:Dampe Grave Relay Game", Select_LoadGame, 0x044F }, - { "88:Inside Ganon's Castle", Select_LoadGame, 0x0467 }, - { "89:Ganon's Lair", Select_LoadGame, 0x0517 }, - { "90:Escaping Ganon's Castle 1", Select_LoadGame, 0x0179 }, - { "91:Escaping Ganon's Castle 2", Select_LoadGame, 0x01B5 }, - { "92:Escaping Ganon's Castle 3", Select_LoadGame, 0x03DC }, - { "93:Escaping Ganon's Castle 4", Select_LoadGame, 0x03E4 }, - { "94:Escaping Ganon's Castle 5", Select_LoadGame, 0x056C }, - { "95:Thieves' Hideout 1-2", Select_LoadGame, 0x0486 }, - { "96:Thieves' Hideout 3-4 9-10", Select_LoadGame, 0x048E }, - { "97:Thieves' Hideout 5-6", Select_LoadGame, 0x0496 }, - { "98:Thieves' Hideout 7-8", Select_LoadGame, 0x049E }, - { "99:Thieves' Hideout 11-12", Select_LoadGame, 0x04AE }, - { "100:Thieves' Hideout 13", Select_LoadGame, 0x0570 }, - { "101:Grotto 0", Select_LoadGame, 0x003F }, - { "102:Grotto 1", Select_LoadGame, 0x0598 }, - { "103:Grotto 2", Select_LoadGame, 0x059C }, - { "104:Grotto 3", Select_LoadGame, 0x05A0 }, - { "105:Grotto 4", Select_LoadGame, 0x05A4 }, - { "106:Grotto 5", Select_LoadGame, 0x05A8 }, - { "107:Grotto 6", Select_LoadGame, 0x05AC }, - { "108:Grotto 7", Select_LoadGame, 0x05B0 }, - { "109:Grotto 8", Select_LoadGame, 0x05B4 }, - { "110:Grotto 9", Select_LoadGame, 0x05B8 }, - { "111:Grotto 10", Select_LoadGame, 0x05BC }, - { "112:Grotto 11", Select_LoadGame, 0x05C0 }, - { "113:Grotto 12", Select_LoadGame, 0x05C4 }, - { "114:Grotto 13", Select_LoadGame, 0x05FC }, - { "115:Goddess Cutscene Environment", Select_LoadGame, 0x00A0 }, - { "116:Test Room", Select_LoadGame, 0x0520 }, - { "117:SRD Map", Select_LoadGame, 0x0018 }, - { "118:Test Map", Select_LoadGame, 0x0094 }, - { "119:Treasure Chest Warp", Select_LoadGame, 0x0024 }, - { "120:Stalfos Miniboss Room", Select_LoadGame, 0x001C }, - { "121:Stalfos Boss Room", Select_LoadGame, 0x0020 }, - { "122:Dark Link Room", Select_LoadGame, 0x0047 }, - { "123:Shooting Gallery Duplicate", Select_LoadGame, 0x02EA }, - { "124:depth test", Select_LoadGame, 0x00B6 }, - { "125:Hyrule Garden Game (Broken)", Select_LoadGame, 0x0076 }, - { "title", Select_LoadTitle, 0x0000 }, + { " 1:SPOT00", " 1:Hyrule Field", " 1:Hylianische Steppe", " 1:Plaine d'Hyrule", Select_LoadGame, 0x00CD }, + { " 2:SPOT01", " 2:Kakariko Village", " 2:Kakariko", " 2:Village Cocorico", Select_LoadGame, 0x00DB }, + { " 3:SPOT02", " 3:Graveyard", " 3:Friedhof", " 3:Cimetiere", Select_LoadGame, 0x00E4 }, + { " 4:SPOT03", " 4:Zora's River", " 4:Zora-Fluss", " 4:Riviere Zora", Select_LoadGame, 0x00EA }, + { " 5:SPOT04", " 5:Kokiri Forest", " 5:Kokiri-Wald", " 5:Foret Kokiri", Select_LoadGame, 0x00EE }, + { " 6:SPOT05", " 6:Sacred Forest Meadow", " 6:Heilige Lichtung", " 6:Bosquet Sacre", Select_LoadGame, 0x00FC }, + { " 7:SPOT06", " 7:Lake Hylia", " 7:Hylia-See", " 7:Lac Hylia", Select_LoadGame, 0x0102 }, + { " 8:SPOT07", " 8:Zora's Domain", " 8:Zoras Reich", " 8:Domaine Zora", Select_LoadGame, 0x0108 }, + { " 9:SPOT08", " 9:Zora's Fountain", " 9:Zoras Quelle", " 9:Fontaine Zora", Select_LoadGame, 0x010E }, + { "10:SPOT09", "10:Gerudo Valley", "10:Gerudotal", "10:Vallee Gerudo", Select_LoadGame, 0x0117 }, + { "11:SPOT10", "11:Lost Woods", "11:Verlorene Waelder", "11:Bois Perdus", Select_LoadGame, 0x011E }, + { "12:SPOT11", "12:Desert Colossus", "12:Wuestenkoloss", "12:Colosse du Desert", Select_LoadGame, 0x0123 }, + { "13:SPOT12", "13:Gerudo's Fortress", "13:Gerudo-Festung", "13:Forteresse Gerudo", Select_LoadGame, 0x0129 }, + { "14:SPOT13", "14:Haunted Wasteland", "14:Gespensterwueste", "14:Desert Hante", Select_LoadGame, 0x0130 }, + { "15:SPOT15", "15:Hyrule Castle", "15:Schloss Hyrule", "15:Chateau d'Hyrule", Select_LoadGame, 0x0138 }, + { "16:SPOT16", "16:Death Mountain Trail", "16:Pfad zum Todesberg", "16:Chemin du Peril", Select_LoadGame, 0x013D }, + { "17:SPOT17", "17:Death Mountain Crater", "17:Todeskrater", "17:Cratere du Peril", Select_LoadGame, 0x0147 }, + { "18:SPOT18", "18:Goron City", "18:Goronia", "18:Village Goron", Select_LoadGame, 0x014D }, + { "19:SPOT20", "19:Lon Lon Ranch", "19:Lon Lon-Farm", "19:Ranch Lon Lon", Select_LoadGame, 0x0157 }, + { "20:" GFXP_HIRAGANA "トキノマ", "20:Temple Of Time", "20:Zitadelle der Zeit", "20:Temple du Temps", Select_LoadGame, 0x0053 }, + { "21:" GFXP_HIRAGANA "ケンジャノマ", "21:Chamber of Sages", "21:Halle der Weisen", "21:Sanctuaire des Sages", Select_LoadGame, 0x006B }, + { "22:" GFXP_HIRAGANA "シャテキジョウ", "22:Shooting Gallery", "22:Schiessbude ", "22:Jeu d'adresse", Select_LoadGame, 0x003B }, + { "23:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム", "23:Castle Courtyard Game", "23:Burghof - Wachen", "23:Cour du Chateau (Infilration)", Select_LoadGame, 0x007A }, + { "24:" GFXP_HIRAGANA "ハカシタトビコミアナ", "24:Grave 1", "24:Grab 1", "24:Tombe 1", Select_LoadGame, 0x031C }, + { "25:" GFXP_HIRAGANA "ハカシタトビコミアナ 2", "25:Grave 2", "25:Grab 2", "25:Tombe 2", Select_LoadGame, 0x004B }, + { "26:" GFXP_HIRAGANA "オウケ ノ ハカアナ", "26:Royal Family's Tomb", "26:Koenigsgrab", "26:Tombe Royale", Select_LoadGame, 0x002D }, + { "27:" GFXP_HIRAGANA "ダイヨウセイノイズミ", "27:Great Fairy's Fountain (Upgrades)", "27:Feen-Quelle (Upgrades)", "27:Fontaine Royale des Fees (Amelioration)", Select_LoadGame, 0x0315 }, + { "28:" GFXP_HIRAGANA "トビコミ ヨウセイ アナ", "28:Fairy's Fountain (Grotto)", "28:Feen-Brunnen (Grotte)", "28:Fontaines des Fees (Grotte)", Select_LoadGame, 0x036D }, + { "29:" GFXP_HIRAGANA "マホウセキ ヨウセイノイズミ", "29:Great Fairy's Fountain (Magic)", "29:Feen-Quelle (Magie)", "29:Fontaine Royale des Fees (Magie)", Select_LoadGame, 0x0371 }, + { "30:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン", "30:Ganon's Tower - Collapsing", "30:Ganons Turm - Einsturz", "30:Tour de Ganon - Effondrement", Select_LoadGame, 0x043F }, + { "31:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ナカニワ", "31:Castle Courtyard", "31:Burghof - Zelda", "31:Cour du Chateau", Select_LoadGame, 0x0400 }, + { "32:" GFXP_HIRAGANA "ツリボリ", "32:Fishing Pond", "32:Fischweiher", "32:Etang", Select_LoadGame, 0x045F }, + { "33:" GFXP_KATAKANA "ボムチュウボーリング", "33:Bombchu Bowling Alley", "33:Minenbowlingbahn", "33:Bowling Teigneux", Select_LoadGame, 0x0507 }, + { "34:" GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 1", "34:Lon Lon Ranch House", "34:Lon Lon-Farm Haus", "34:Maison du Ranch Lon Lon", Select_LoadGame, 0x004F }, + { "35:" GFXP_KATAKANA "ロンロン" GFXP_HIRAGANA "ボクジョウ ソウコ 2", "35:Lon Lon Ranch Silo", "35:Lon Lon-Farm Silo", "35:Silo du Ranch Lon Lon", Select_LoadGame, 0x05D0 }, + { "36:" GFXP_HIRAGANA "ミハリ ゴヤ", "36:Guard House", "36:Wachposten", "36:Maison de Garde", Select_LoadGame, 0x007E }, + { "37:" GFXP_HIRAGANA "マホウ ノ クスリヤ", "37:Potion Shop", "37:Magie-Laden", "37:Apothicaire", Select_LoadGame, 0x0072 }, + { "38:" GFXP_HIRAGANA "タカラバコヤ", "38:Treasure Chest Game", "38:Trhenlotterie", "38:Chasse aux Tresors", Select_LoadGame, 0x0063 }, + { "39:" GFXP_HIRAGANA "キン " GFXP_KATAKANA "スタルチュラ ハウス", "39:House Of Skulltula", "39:Skulltulas Haus", "39:Maison des Skulltulas", Select_LoadGame, 0x0550 }, + { "40:" GFXP_HIRAGANA "ジョウカマチ イリグチ", "40:Entrance to Market", "40:Eingang zum Marktplatz", "40:Entree de la Place du Marche", Select_LoadGame, 0x0033 }, + { "41:" GFXP_HIRAGANA "ジョウカマチ", "41:Market", "41:Marktplatz", "41:Place du Marche", Select_LoadGame, 0x00B1 }, + { "42:" GFXP_HIRAGANA "ウラロジ", "42:Back Alley", "42:Seitenstrasse", "42:Ruelle", Select_LoadGame, 0x00AD }, + { "43:" GFXP_HIRAGANA "トキノシンデン マエ", "43:Temple of Time Exterior", "43:Vor der Zitadelle der Zeit", "43:Exterieur du Temple du Temps", Select_LoadGame, 0x0171 }, + { "44:" GFXP_HIRAGANA "リンクノイエ", "44:Link's House", "44:Links Haus", "44:Cabane de Link", Select_LoadGame, 0x00BB }, + { "45:" GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラノナガヤ", "45:Kakariko House 1", "45:Kakariko Haus 1", "45:Maison du Village Cocorico 1", Select_LoadGame, 0x02FD }, + { "46:" GFXP_HIRAGANA "ウラロジノ イエ", "46:Back Alley House 1", "46:Seitenstrasse Haus 1", "46:Maison de la Ruelle 1", Select_LoadGame, 0x043B }, + { "47:" GFXP_HIRAGANA "コキリノムラ モノシリキョウダイノイエ", "47:House of the Know-it-All Brothers", "47:Haus der Allwissenden Brueder", "47:Cabane des Freres Je-Sais-Tout", Select_LoadGame, 0x00C9 }, + { "48:" GFXP_HIRAGANA "コキリノムラ フタゴノイエ", "48:House of Twins", "48:Haus der Zwillinge", "48:Cabane des Jumeaux", Select_LoadGame, 0x009C }, + { "49:" GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "ミド" GFXP_HIRAGANA "ノイエ", "49:Mido's House", "49:Midos Haus", "49:Cabane du Grand Mido", Select_LoadGame, 0x0433 }, + { "50:" GFXP_HIRAGANA "コキリノムラ " GFXP_KATAKANA "サリア" GFXP_HIRAGANA "ノイエ", "50:Saria's House", "50:Salias Haus", "50:Cabane de Saria", Select_LoadGame, 0x0437 }, + { "51:" GFXP_HIRAGANA "ウマゴヤ", "51:Stable", "51:Stall", "51:Etable", Select_LoadGame, 0x02F9 }, + { "52:" GFXP_HIRAGANA "ハカモリノイエ", "52:Grave Keeper's Hut", "52:Huette des Totengraebers", "52:Cabane du Fossoyeur", Select_LoadGame, 0x030D }, + { "53:" GFXP_HIRAGANA "ウラロジ イヌオバサンノイエ", "53:Dog Lady's House", "53:Haus der Hunde-Dame", "53:Maison de la Dame du Chien", Select_LoadGame, 0x0398 }, + { "54:" GFXP_HIRAGANA "カカリコムラ " GFXP_KATAKANA "インパ" GFXP_HIRAGANA "ノイエ", "54:Impa's House", "54:Impas Haus", "54:Maison d'Impa", Select_LoadGame, 0x039C }, + { "55:" GFXP_KATAKANA "ハイリア" GFXP_HIRAGANA " ケンキュウジョ", "55:Lakeside Laboratory", "55:Hylia-See Laboratorium", "55:Laboratoire du Lac", Select_LoadGame, 0x0043 }, + { "56:" GFXP_KATAKANA "テント", "56:Running Man's Tent", "56:Zelt des Rennlaeufers", "56:Tente du Marathonien", Select_LoadGame, 0x03A0 }, + { "57:" GFXP_HIRAGANA "タテノミセ", "57:Bazaar", "57:Basar", "57:Bazar", Select_LoadGame, 0x00B7 }, + { "58:" GFXP_HIRAGANA "コキリゾクノミセ", "58:Kokiri Shop", "58:Kokiri-Laden", "58:Boutique Kokiri", Select_LoadGame, 0x00C1 }, + { "59:" GFXP_KATAKANA "ゴロン" GFXP_HIRAGANA "ノミセ", "59:Goron Shop", "59:Goronen-Laden", "59:Boutique Goron", Select_LoadGame, 0x037C }, + { "60:" GFXP_KATAKANA "ゾーラ" GFXP_HIRAGANA "ノミセ", "60:Zora Shop", "60:Zora-Laden", "60:Boutique Zora", Select_LoadGame, 0x0380 }, + { "61:" GFXP_KATAKANA "カカリコ" GFXP_HIRAGANA "ムラ クスリヤ", "61:Closed Shop", "61:Geschlossener Laden", "61:Boutique Fermee", Select_LoadGame, 0x0384 }, + { "62:" GFXP_HIRAGANA "ジョウカマチ クスリヤ", "62:Potion Shop", "62:Magie-Laden", "62:Apothicaire (Boutique)", Select_LoadGame, 0x0388 }, + { "63:" GFXP_HIRAGANA "ウラロジ ヨルノミセ", "63:Bombchu Shop", "63:Krabbelminen-Laden", "63:Boutique de Missiles Teigneux", Select_LoadGame, 0x0390 }, + { "64:" GFXP_HIRAGANA "オメンヤ", "64:Happy Mask Shop", "64:Maskenhaendler", "64:Foire aux Masques", Select_LoadGame, 0x0530 }, + { "65:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ノシュウレンジョウ", "65:Gerudo Training Ground", "65:Gerudo-Arena", "65:Gymnase Gerudo", Select_LoadGame, 0x0008 }, + { "66:" GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン", "66:Inside the Deku Tree", "66:Im Deku-Baum", "66:Arbre Mojo", Select_LoadGame, 0x0000 }, + { "67:" GFXP_HIRAGANA "ヨウセイノキノ " GFXP_KATAKANA "ダンジョン ボス", "67:Gohma's Lair", "67:Gohmas Verliess", "67:Repaire de Gohma", Select_LoadGame, 0x040F }, + { "68:" GFXP_KATAKANA "ドドンゴ ダンジョン", "68:Dodongo's Cavern", "68:Dodongo's Cavern", "68:Dodongos Hoehle", Select_LoadGame, 0x0004 }, + { "69:" GFXP_KATAKANA "ドドンゴ ダンジョン ボス", "69:King Dodongo's Lair", "69:King Dodongos Verliess", "69:Repaire du Roi Dodongo", Select_LoadGame, 0x040B }, + { "70:" GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン", "70:Inside Jabu-Jabu's Belly", "70:Jabu-Jabus Bauch", "70:Ventre de Jabu-Jabu", Select_LoadGame, 0x0028 }, + { "71:" GFXP_HIRAGANA "キョダイギョ " GFXP_KATAKANA "ダンジョン ボス", "71:Barinade's Lair", "71:Barinades Verliess", "71:Repaire de Barinade", Select_LoadGame, 0x0301 }, + { "72:" GFXP_HIRAGANA "モリノシンデン", "72:Forest Temple", "72:Waldtempel", "72:Temple de la Foret", Select_LoadGame, 0x0169 }, + { "73:" GFXP_HIRAGANA "モリノシンデン " GFXP_KATAKANA "ボス", "73:Phantom Ganon's Lair", "73:Phantom-Ganons Verliess", "73:Repaire de Ganon Spectral", Select_LoadGame, 0x000C }, + { "74:" GFXP_HIRAGANA "イドシタ " GFXP_KATAKANA "ダンジョン", "74:Bottom of the Well", "74:Grund des Brunnens", "74:Puits", Select_LoadGame, 0x0098 }, + { "75:" GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン", "75:Shadow Temple", "75:Schattentempel", "75:Temple de l'Ombre", Select_LoadGame, 0x0037 }, + { "76:" GFXP_HIRAGANA "ハカシタ " GFXP_KATAKANA "ダンジョン ボス", "76:Bongo Bongo's Lair", "76:Bongo Bongos Verliess", "76:Repaire de Bongo Bongo", Select_LoadGame, 0x0413 }, + { "77:" GFXP_HIRAGANA "ヒノシンデン", "77:Fire Temple", "77:Feuertempel", "77:Temple du Feu", Select_LoadGame, 0x0165 }, + { "78:" GFXP_HIRAGANA "ヒノシンデン " GFXP_KATAKANA "ボス", "78:Volvagia's Lair", "78:Volvagias Verliess", "78:Repai de Volvagia", Select_LoadGame, 0x0305 }, + { "79:" GFXP_HIRAGANA "ミズノシンデン", "79:Water Temple", "79:Wassertempel", "79:Temple de l'Eau", Select_LoadGame, 0x0010 }, + { "80:" GFXP_HIRAGANA "ミズノシンデン " GFXP_KATAKANA "ボス", "80:Morpha's Lair", "80:Morphas Verliess", "80:Repaire de Morpha", Select_LoadGame, 0x0417 }, + { "81:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン", "81:Spirit Temple", "81:Geistertempel", "81:Temple de l'Esprit", Select_LoadGame, 0x0082 }, + { "82:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン アイアンナック", "82:Iron Knuckle's Lair", "82:Eisenprinz' Verliess", "82:Repaire du Hache Viande", Select_LoadGame, 0x008D }, + { "83:" GFXP_HIRAGANA "ジャシンゾウ " GFXP_KATAKANA "ダンジョン ボス", "83:Twinrova's Lair", "83:Killa Ohmaz' Verliess", "83:Repaire du Duo Malefique", Select_LoadGame, 0x05EC }, + { "84:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ", "84:Stairs to Ganondorf's Lair", "84:Treppen zu Ganondorfs Verliess", "84:Repaire de Ganondorf (Escaliers)", Select_LoadGame, 0x041B }, + { "85:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ" GFXP_KATAKANA "ボス", "85:Ganondorf's Lair", "85:Ganondorfs Verliess", "85:Repaire de Ganondorf", Select_LoadGame, 0x041F }, + { "86:" GFXP_HIRAGANA "コオリノドウクツ", "86:Ice Cavern", "86:Eishoehle", "86:Caverne Polaire", Select_LoadGame, 0x0088 }, + { "87:" GFXP_HIRAGANA "ハカシタ" GFXP_KATAKANA "リレー", "87:Dampe Grave Relay Game", "87:Boris' Grab Staffellauf", "87:Dampe Grave Relay Game", Select_LoadGame, 0x044F }, + { "88:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ " GFXP_KATAKANA "ダンジョン", "88:Inside Ganon's Castle", "88:In Ganons Schloss", "88:Tour de Ganon", Select_LoadGame, 0x0467 }, + { "89:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "サイシュウセン " GFXP_KATAKANA "デモ & バトル", "89:Ganon's Lair", "89:Ganons Verliess", "89:Repaire de Ganon", Select_LoadGame, 0x0517 }, + { "90:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 1", "90:Escaping Ganon's Castle 1", "90:Flucht aus Ganons Schloss 1", "90:Fuite du Chateau de Ganon 1", Select_LoadGame, 0x0179 }, + { "91:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 2", "91:Escaping Ganon's Castle 2", "91:Flucht aus Ganons Schloss 2", "91:Fuite du Chateau de Ganon 2", Select_LoadGame, 0x01B5 }, + { "92:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 3", "92:Escaping Ganon's Castle 3", "92:Flucht aus Ganons Schloss 3", "92:Fuite du Chateau de Ganon 3", Select_LoadGame, 0x03DC }, + { "93:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "ノトウ ソノゴ 4", "93:Escaping Ganon's Castle 4", "93:Flucht aus Ganons Schloss 4", "93:Fuite du Chateau de Ganon 4", Select_LoadGame, 0x03E4 }, + { "94:" GFXP_KATAKANA "ガノン" GFXP_HIRAGANA "チカ ソノゴ", "94:Escaping Ganon's Castle 5", "94:Flucht aus Ganons Schloss 5", "94:Fuite du Chateau de Ganon 5", Select_LoadGame, 0x056C }, + { "95:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 1-2", "95:Thieves' Hideout 1-2", "95:Diebesversteck 1-2", "95:Repaire des Voleurs 1-2", Select_LoadGame, 0x0486 }, + { "96:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 3-4 9-10", "96:Thieves' Hideout 3-4 9-10", "96:Diebesversteck 3-4 9-10", "96:Repaire des Voleurs 3-4 9-10", Select_LoadGame, 0x048E }, + { "97:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 5-6", "97:Thieves' Hideout 5-6", "97:Diebesversteck 5-6", "97:Repaire des Voleurs 5-6", Select_LoadGame, 0x0496 }, + { "98:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 7-8", "98:Thieves' Hideout 7-8", "98:Diebesversteck 7-8", "98:Repaire des Voleurs 7-8", Select_LoadGame, 0x049E }, + { "99:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 11-12", "99:Thieves' Hideout 11-12", "99:Diebesversteck 11-12", "99:Repaire des Voleurs 11-12", Select_LoadGame, 0x04AE }, + { "100:" GFXP_KATAKANA "ゲルド" GFXP_HIRAGANA "ツウロ 13", "100:Thieves' Hideout 13", "100:Diebesversteck 13", "100:Repaire des Voleurs 13", Select_LoadGame, 0x0570 }, + { "101:" GFXP_HIRAGANA "カクシトビコミアナ 0", "101:Grotto 0", "101:Grotte 0", "101:Grotte 0", Select_LoadGame, 0x003F }, + { "102:" GFXP_HIRAGANA "カクシトビコミアナ 1", "102:Grotto 1", "102:Grotte 1", "102:Grotte 1", Select_LoadGame, 0x0598 }, + { "103:" GFXP_HIRAGANA "カクシトビコミアナ 2", "103:Grotto 2", "103:Grotte 2", "103:Grotte 2", Select_LoadGame, 0x059C }, + { "104:" GFXP_HIRAGANA "カクシトビコミアナ 3", "104:Grotto 3", "104:Grotte 3", "104:Grotte 3", Select_LoadGame, 0x05A0 }, + { "105:" GFXP_HIRAGANA "カクシトビコミアナ 4", "105:Grotto 4", "105:Grotte 4", "105:Grotte 4", Select_LoadGame, 0x05A4 }, + { "106:" GFXP_HIRAGANA "カクシトビコミアナ 5", "106:Grotto 5", "106:Grotte 5", "106:Grotte 5", Select_LoadGame, 0x05A8 }, + { "107:" GFXP_HIRAGANA "カクシトビコミアナ 6", "107:Grotto 6", "107:Grotte 6", "107:Grotte 6", Select_LoadGame, 0x05AC }, + { "108:" GFXP_HIRAGANA "カクシトビコミアナ 7", "108:Grotto 7", "108:Grotte 7", "108:Grotte 7", Select_LoadGame, 0x05B0 }, + { "109:" GFXP_HIRAGANA "カクシトビコミアナ 8", "109:Grotto 8", "109:Grotte 8", "109:Grotte 8", Select_LoadGame, 0x05B4 }, + { "110:" GFXP_HIRAGANA "カクシトビコミアナ 9", "110:Grotto 9", "110:Grotte 9", "110:Grotte 9", Select_LoadGame, 0x05B8 }, + { "111:" GFXP_HIRAGANA "カクシトビコミアナ 10", "111:Grotto 10", "111:Grotte 10", "111:Grotte 10", Select_LoadGame, 0x05BC }, + { "112:" GFXP_HIRAGANA "カクシトビコミアナ 11", "112:Grotto 11", "112:Grotte 11", "112:Grotte 11", Select_LoadGame, 0x05C0 }, + { "113:" GFXP_HIRAGANA "カクシトビコミアナ 12", "113:Grotto 12", "113:Grotte 12", "113:Grotte 12", Select_LoadGame, 0x05C4 }, + { "114:" GFXP_HIRAGANA "カクシトビコミアナ 13", "114:Grotto 13", "114:Grotte 13", "114:Grotte 13", Select_LoadGame, 0x05FC }, + { "115:" GFXP_KATAKANA "ハイラル デモ", "115:Goddess Cutscene Environment", "115:Goettinnen Cutscene Umgebung", "115:Goddess Cutscene Environment", Select_LoadGame, 0x00A0 }, + { "116:" GFXP_HIRAGANA "ベッシツ (タカラバコ" GFXP_KATAKANA "ワープ)", "116:Test Room", "116:Test Raum", "116:Salle de Test", Select_LoadGame, 0x0520 }, + { "117:" GFXP_HIRAGANA "ササ" GFXP_KATAKANA "テスト", "117:SRD Map", "117:SRD Karte", "117:Carte SRD", Select_LoadGame, 0x0018 }, + { "118:" GFXP_KATAKANA "テストマップ", "118:Test Map", "118:Test Karte", "118:Carte de Test", Select_LoadGame, 0x0094 }, + { "119:" GFXP_KATAKANA "テストルーム", "119:Treasure Chest Warp", "119:Schatzkisten Teleport", "119:Treasure Chest Warp", Select_LoadGame, 0x0024 }, + { "120:" GFXP_HIRAGANA "チュウ" GFXP_KATAKANA "スタロフォス" GFXP_HIRAGANA "ベヤ", "120:Stalfos Miniboss Room", "120:Stalfos-Ritter Miniboss Raum", "120:Stalfos Miniboss Room", Select_LoadGame, 0x001C }, + { "121:" GFXP_KATAKANA "ボススタロフォス" GFXP_HIRAGANA "ベヤ", "121:Stalfos Boss Room", "121:Stalfos-Ritter Boss Raum", "121:Stalfos Boss Room", Select_LoadGame, 0x0020 }, + { "122:Sutaru", "122:Dark Link Room", "122:Schwarzer Link Raum", "122:Dark Link Room", Select_LoadGame, 0x0047 }, + { "123:jikkenjyou", "123:Shooting Gallery Duplicate", "123:Schiessbude (Duplikat)", "123:Jeu d'adresse (Duplicatas)", Select_LoadGame, 0x02EA }, + { "124:depth" GFXP_KATAKANA "テスト", "124:depth test", "124:Tiefen Test", "124:Test de Profondeur", Select_LoadGame, 0x00B6 }, + { "125:" GFXP_KATAKANA "ハイラル" GFXP_HIRAGANA "ニワ" GFXP_KATAKANA "ゲーム2", "125:Hyrule Garden Game (Broken)", "125:Burghof - Wachen-Minispiel (Kaputt)", "125:Hyrule Garden Game (Broken)", Select_LoadGame, 0x0076 }, + { "title", "title", "Titelbildschirm", "Ecran-titre", Select_LoadTitle, 0x0000 }, }; + static BetterSceneSelectEntry sBetterScenes[] = { - { " 1:Hyrule Field", Select_LoadGame, 8, { - { "Near Drawbridge", 0x00CD }, - { "From Drawbridge", 0x01FD }, - { "From Kakariko Village", 0x017D }, - { "From Zora River", 0x0181 }, - { "From Lost Woods", 0x0185 }, - { "From Lake Hylia", 0x0189 }, - { "From Gerudo Valley", 0x018D }, - { "From Lon Lon Ranch", 0x01F9 }, + { " 1:Hyrule Field", " 1:Hylianische Steppe", " 1:Plaine d'Hyrule", Select_LoadGame, 8, { + { "Near Drawbridge", "Nahe der Zugbruecke", "Pres du Pont-levis", 0x00CD }, + { "From Drawbridge", "Von der Zugbruecke", "Depuis le Pont-levis", 0x01FD }, + { "From Kakariko Village", "Von Kakariko", "Depuis le Village Cocorico", 0x017D }, + { "From Zora River", "Vom Zora-Fluss", "Depuis la Riviere Zora", 0x0181 }, + { "From Lost Woods", "Von den verlorenen Waeldern", "Depuis les Bois Perdus", 0x0185 }, + { "From Lake Hylia", "Vom Hylia-See", "Depuis le Lac Hylia", 0x0189 }, + { "From Gerudo Valley", "Vom Gerudotal", "Depuis la Vallee Gerudo", 0x018D }, + { "From Lon Lon Ranch", "Von der Lon Lon-Farm", "Depuis le Ranch Lon Lon", 0x01F9 }, }}, - { " 2:Kokiri Forest", Select_LoadGame, 9, { - { "From Links House", 0x0211 }, - { "From Bridge", 0x020D }, - { "From Lost Woods", 0x0286 }, - { "From Deku Tree", 0x0209 }, - { "From Kokiri Shop", 0x0266 }, - { "From Know-It-All Brothers House", 0x026A }, - { "From Twins House", 0x033C }, - { "From Midos House", 0x0443 }, - { "From Sarias House", 0x0447 }, + { " 2:Kokiri Forest", " 2:Kokiri-Wald", " 2:Foret Kokiri", Select_LoadGame, 9, { + { "From Links House", "Von Links Haus", "Depuis la Cabane de Link", 0x0211 }, + { "From Bridge", "Von der Bruecke", "Depuis le Pont", 0x020D }, + { "From Lost Woods", "Von den verlorenen Waeldern", "Depuis les Bois Perdus", 0x0286 }, + { "From Deku Tree", "Vom Deku-Baum", "Depuis l'Arbre Mojo", 0x0209 }, + { "From Kokiri Shop", "Vom Kokiri-Laden", "Depuis la Boutique Kokiri", 0x0266 }, + { "From Know-It-All Brothers House", "Vom Haus der Allwissenden Brueder", "Depuis la Cabane des Freres Je-Sais-Tout", 0x026A }, + { "From Twins House", "Vom Haus der Zwillinge", "Depuis la Cabane des Jumeaux", 0x033C }, + { "From Midos House", "Von Midos Haus", "Depuis la Cabane du Grand Mido", 0x0443 }, + { "From Sarias House", "Von Salias Haus", "Depuis la Cabane de Saria", 0x0447 }, }}, - { " 3:Kokiri Buildings", Select_LoadGame, 6, { - { "Links Bed", 0x00BB }, - { "Kokiri Shop", 0x00C1 }, - { "Twins House", 0x009C }, - { "Know-It-All Brothers House", 0x00C9 }, - { "Midos House", 0x0433 }, - { "Sarias House", 0x0437 }, + { " 3:Kokiri Buildings", " 3:Kokiri Gebaeude", " 3:Cabanes des Kokiris", Select_LoadGame, 6, { + { "Links Bed", "Links Bett", "Lit de Link", 0x00BB }, + { "Kokiri Shop", "Kokiri-Laden", "Boutique Kokiri", 0x00C1 }, + { "Twins House", "Haus der Zwillinge", "Cabane des Jumeaux", 0x009C }, + { "Know-It-All Brothers House", "Haus der Allwissenden Brueder", "Cabane des Freres Je-Sais-Tout", 0x00C9 }, + { "Midos House", "Midos Haus", "Cabane du Grand Mido", 0x0433 }, + { "Sarias House", "Salias Haus", "Cabane de Sara", 0x0437 }, }}, - { " 4:Lost Woods", Select_LoadGame, 5, { - { "From Kokiri Forest", 0x011E }, - { "From Sacred Meadow", 0x01A9 }, - { "From Goron City", 0x04D6 }, - { "From Zora River", 0x04DA }, - { "Bridge", 0x05E0 }, + { " 4:Lost Woods", " 4:Verlorene Waelder", " 4:Bois Perdus", Select_LoadGame, 5, { + { "From Kokiri Forest", "Vom Kokiri-Wald", "Depuis la Foret Kokiri", 0x011E }, + { "From Sacred Meadow", "Von der Waldlichtung", "Depuis le Bosquet Sacre", 0x01A9 }, + { "From Goron City", "Vom Goronia", "Depuis le Village Goron", 0x04D6 }, + { "From Zora River", "Vom Zora-Fluss", "Depuis la Riviere Zora", 0x04DA }, + { "Bridge", "Bruecke", "Pont", 0x05E0 }, }}, - { " 5:Sacred Forest Meadow", Select_LoadGame, 3, { - { "From Lost Woods", 0x00FC }, - { "From Forest Temple", 0x0215 }, - { "Minuet of Forest Warp", 0x0600 }, + { " 5:Sacred Forest Meadow", " 5:Waldlichtung", " 5:Bosquet Sacre", Select_LoadGame, 3, { + { "From Lost Woods", "Von den Verlorenen Waeldern", "Depuis les Bois Perdus", 0x00FC }, + { "From Forest Temple", "Vom Waldtempel", "Depuis le Temple de la Foret", 0x0215 }, + { "Minuet of Forest Warp", "Menuett des Waldes Teleport", "Teleporteur du Menuet des Bois", 0x0600 }, }}, - { " 6:Castle Town Entrance", Select_LoadGame, 3, { - { "From Hyrule Field", 0x0276 }, - { "From Market", 0x0033 }, - { "From Pot House", 0x026E }, + { " 6:Castle Town Entrance", " 6:Eingang zum Marktplatz", " 6:Entree du Bourg d'Hyrule", Select_LoadGame, 3, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x0276 }, + { "From Market", "Vom Marktplatz", "Depuis la Place du Marche", 0x0033 }, + { "From Pot House", "Vom Wachposten", "Depuis la Maison des Jarres", 0x026E }, }}, - { " 7:Market", Select_LoadGame, 11, { - { "From Castle Town Entrance", 0x00B1 }, - { "From Shooting Gallery", 0x01CD }, - { "From Happy Mask Shop", 0x01D1 }, - { "From Treasure Box Minigame", 0x01D5 }, - { "From Castle", 0x025A }, - { "From Temple of Time", 0x025E }, - { "From Back Alley (Right)", 0x0262 }, - { "From Back Alley (Left)", 0x029E }, - { "From Potion Shop", 0x02A2 }, - { "From Bazaar Shop", 0x03B8 }, - { "From Bomchu Bowling Minigame", 0x03BC }, + { " 7:Market", " 7:Marktplatz", " 7:Place du Marche", Select_LoadGame, 11, { + { "From Castle Town Entrance", "Vom Eingang zum Marktplatz", "Depuis l'Entree du Bourg d'Hyrule", 0x00B1 }, + { "From Shooting Gallery", "Von der Schiessbude", "Depuis le Jeu d'adresse", 0x01CD }, + { "From Happy Mask Shop", "Vom Maskenhaendler", "Depuis la Foire aux Masques", 0x01D1 }, + { "From Treasure Box Minigame", "Von der Truhenlotterie", "Depuis le Bowling Teigneux", 0x01D5 }, + { "From Castle", "Vom Schloss", "Depuis le Chateau d'Hyrule", 0x025A }, + { "From Temple of Time", "Von der Zitadelle der Zeit", "Depuis le Temple du Temps", 0x025E }, + { "From Back Alley (Right)", "Von der Seitenstrasse (Rechts)", "Depuis la Ruelle (Droite)", 0x0262 }, + { "From Back Alley (Left)", "Von der Seitenstrasse (Links)", "Depuis la Ruelle (Gauche)", 0x029E }, + { "From Potion Shop", "Vom Magie-Laden", "Depuis l'Apothicaire", 0x02A2 }, + { "From Bazaar Shop", "Vom Basar", "Depuis le Bazar", 0x03B8 }, + { "From Bomchu Bowling Minigame", "Von der Minenbowlingbahn", "Depuis le Bowling Teigneux", 0x03BC }, }}, - { " 8:Castle Town Alley", Select_LoadGame, 5, { - { "From Market (Right)", 0x00AD }, - { "From Market (Left)", 0x029A }, - { "From Alley House", 0x0067 }, - { "From Dog House", 0x038C }, - { "From Bombchu Shop", 0x03C0 }, + { " 8:Castle Town Alley", " 8:Seitenstrasse", " 8:Ruelle du Bourg d'Hyrule", Select_LoadGame, 5, { + { "From Market (Right)", "Vom Marktplatz (Rechts)", "Depuis la Place du Marche (Droite)", 0x00AD }, + { "From Market (Left)", "Vom Marktplatz (Links)", "Depuis la Place du Marche (Gauche)", 0x029A }, + { "From Alley House", "Vom Seitenstrassenhaus", "Depuis la Maison de la Ruelle", 0x0067 }, + { "From Dog House", "Vom Haus der Hunde-Dame", "Depuis la Maison du Chien", 0x038C }, + { "From Bombchu Shop", "Vom Krabbelminen-Laden", "Depuis le Magasin de Missiles", 0x03C0 }, }}, - { " 9:Castle Town Buildings", Select_LoadGame, 10, { - { "Pot House", 0x007E }, - { "Shooting Gallery Minigame", 0x016D }, - { "Treasure Box Minigame", 0x0063 }, - { "Potion Shop", 0x0388 }, - { "Bombchu Bowling Minigame", 0x0507 }, - { "Bazaar Shop", 0x052C }, - { "Happy Mask Shop", 0x0530 }, - { "Bombchu Shop", 0x0528 }, - { "Dog House", 0x0398 }, - { "Alley House", 0x043B }, + { " 9:Castle Town Buildings", " 9:Marktplatz Gebaeude", " 9:Batiments du Bourg d'Hyrule", Select_LoadGame, 10, { + { "Pot House", "Wachposten", "Maison des Jarres", 0x007E }, + { "Shooting Gallery Minigame", "Schiessbude", "Jeu d'adresse", 0x016D }, + { "Treasure Box Minigame", "Truhenlotterie", "Chasse aux Tresors", 0x0063 }, + { "Potion Shop", "Magie-Laden", "Apothicaire", 0x0388 }, + { "Bombchu Bowling Minigame", "Minenbowlingbahn", "Bowling Teigneux", 0x0507 }, + { "Bazaar Shop", "Basar", "Bazar", 0x052C }, + { "Happy Mask Shop", "Maskenhaendler", "Foire aux Masques", 0x0530 }, + { "Bombchu Shop", "Krabbelminen-Laden", "Boutique de Missiles", 0x0528 }, + { "Dog House", "Haus der Hunde-Dame", "Maison du Chien", 0x0398 }, + { "Alley House", "Seitenstrassenhaus", "Maison de la Ruelle", 0x043B }, }}, - { "10:Temple of Time", Select_LoadGame, 5, { - { "From Outside", 0x053 }, - { "From Master Sword Pedestal", 0x02CA }, - { "Prelude of Light Warp", 0x05F4 }, - { "Outside Temple of Time - From Market", 0x0171 }, - { "Outside Temple of Time - From Temple of Time", 0x0472 }, + { "10:Temple of Time", "10:Zitadelle der Zeit", "10:Temple du Temps", Select_LoadGame, 5, { + { "From Outside", "Von draussen", "Depuis l'Entree", 0x053 }, + { "From Master Sword Pedestal", "Vom Master-Schwert Podest", "Depuis le Piedestal de l'Epee de Legende", 0x02CA }, + { "Prelude of Light Warp", "Kantate des Lichts Teleport", "Teleporteur du Prelude de la Lumiere", 0x05F4 }, + { "Outside Temple of Time - From Market", "Vor der Zitadelle der Zeit - Vom Marktplatz", "Exterieur du Temple - Depuis la Place du Marche", 0x0171 }, + { "Outside Temple of Time - From Temple of Time", "Vor der Zitadelle der Zeit - Von der Zitadelle der Zeit", "Exterieur du Temple - Depuis le Temple", 0x0472 }, }}, - { "11:Hyrule Castle", Select_LoadGame, 5, { - { "From Market", 0x0138 }, - { "From Castle Courtyard", 0x023D }, - { "From Great Fairy", 0x0340 }, - { "From Courtyard Guard Capture", 0x04FA }, - { "Great Fairy", 0x04C2 }, + { "11:Hyrule Castle", "11:Schloss Hyrule", "11:Chateau d'Hyrule", Select_LoadGame, 5, { + { "From Market", "Vom Marktplatz", "Depuis la Place du Marche", 0x0138 }, + { "From Castle Courtyard", "Vom Burghof", "Depuis la Cour du Chateau", 0x023D }, + { "From Great Fairy", "Von der Feen-Quelle", "Depuis la Grande Fee", 0x0340 }, + { "From Courtyard Guard Capture", "Von Wachen-Festnahme", "Depuis la capture d'un Garde de la Cour", 0x04FA }, + { "Great Fairy", "Feen-Quelle", "Grande Fee", 0x04C2 }, }}, - { "12:Hyrule Castle Courtyard", Select_LoadGame, 3, { - { "From Crawlspace", 0x007A }, - { "From Zelda", 0x0296 }, - { "Zeldas Courtyard", 0x0400 }, + { "12:Hyrule Castle Courtyard", "12:Burghof", "12:Cour du Chateau", Select_LoadGame, 3, { + { "From Crawlspace", "Vom Kriechtunnel", "Depuis l'Entree", 0x007A }, + { "From Zelda", "Von Zelda", "Depuis Zelda", 0x0296 }, + { "Zeldas Courtyard", "Zeldas Burghof", "Depuis la Cour de Zelda", 0x0400 }, }}, - { "13:Lon Lon Ranch", Select_LoadGame, 4, { - { "From Hyrule Field", 0x0157 }, - { "From Ranch House", 0x0378 }, - { "From Stables", 0x042F }, - { "Epona Song Cutscene", 0x02AE }, + { "13:Lon Lon Ranch", "13:Lon Lon-Farm", "13:Ranch Lon Lon", Select_LoadGame, 4, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x0157 }, + { "From Ranch House", "Vom Farmhaus", "Depuis la Maison du Ranch", 0x0378 }, + { "From Stables", "Vom Stall", "Depuis l'Etable", 0x042F }, + { "Epona Song Cutscene", "Eponas Song Cutscene", "Cinematique du Chant d'Epona", 0x02AE }, }}, - { "14:Lon Lon Ranch Buildings", Select_LoadGame, 3, { - { "Ranch House", 0x004F }, - { "Stables", 0x02F9 }, - { "Back Tower", 0x05D0 }, + { "14:Lon Lon Ranch Buildings", "14:Lon Lon-Farm Gebaeude", "14:Batiments du Ranch Lon Lon", Select_LoadGame, 3, { + { "Ranch House", "Farmhaus", "Maison du Ranch", 0x004F }, + { "Stables", "Stall", "Etable du Ranch", 0x02F9 }, + { "Back Tower", "Silo", "Silo du Ranch", 0x05D0 }, }}, - { "15:Kakariko Village", Select_LoadGame, 15, { - { "From Hyrule Field", 0x00DB }, - { "From Death Mountain", 0x0191 }, - { "From Graveyard", 0x0195 }, - { "From Bazaar", 0x0201 }, - { "From Bottom of Well", 0x02A6 }, - { "From Boss House", 0x0349 }, - { "From Potion Shop", 0x044B }, - { "From Potion Shop (Back Entrance)", 0x04FF }, - { "From Grannys Potion Shop", 0x034D }, - { "From Impas House", 0x0345 }, - { "From Impas House (Cow)", 0x05DC }, - { "From Windmill", 0x0351 }, - { "From Shooting Gallery", 0x0463 }, - { "From Skulltula House", 0x04EE }, - { "Owl Drop Spot from Death Mountain", 0x0554 }, + { "15:Kakariko Village", "15:Kakariko", "15:Village Cocorico", Select_LoadGame, 15, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x00DB }, + { "From Death Mountain", "Vom Todesberg", "Depuis le Mont du Peril", 0x0191 }, + { "From Graveyard", "Vom Friedhof", "Depuis le Cimetiere", 0x0195 }, + { "From Bazaar", "Vom Basar", "Depuis le Bazar", 0x0201 }, + { "From Bottom of Well", "Vom Grund des Brunnens", "Depuis le Puits", 0x02A6 }, + { "From Boss House", "Vom Haus des Bosses", "Depuis la Maison du Boss", 0x0349 }, + { "From Potion Shop", "Vom Magie-Laden", "Depuis l'Apothicaire", 0x044B }, + { "From Potion Shop (Back Entrance)", "Vom Magie-Laden (Hintereingang)", "Depuis l'Apothicaire (Entree Arriere)", 0x04FF }, + { "From Grannys Potion Shop", "Von Omas Magie-Laden", "Depuis l'Apothicaire (Vieille Femme)", 0x034D }, + { "From Impas House", "Von Impas Haus", "Depuis la Maison d'Impa", 0x0345 }, + { "From Impas House (Cow)", "Von Impas Haus (Kuh)", "Depuis la Maison d'Impa (Vache)", 0x05DC }, + { "From Windmill", "Von der Windmuehle", "Depuis le Moulin", 0x0351 }, + { "From Shooting Gallery", "Von der Schiessbude", "Depuis le Jeu d'adresse", 0x0463 }, + { "From Skulltula House", "Vom Skulltula Haus", "Depuis la Maison des Skulltulas", 0x04EE }, + { "Owl Drop Spot from Death Mountain", "Eulen-Absetzpunkt vom Todesberg", "Point de chute du Hibou depuis le Mont du Peril", 0x0554 }, }}, - { "16:Kakariko Buildings", Select_LoadGame, 9, { - { "Shooting Gallery Minigame", 0x003B }, - { "Grannys Potion Shop", 0x0072 }, - { "Bazaar Shop", 0x00B7 }, - { "Potion Shop", 0x0384 }, - { "Impas House", 0x039C }, - { "Impas House (Near Cow)", 0x05C8 }, - { "Boss House", 0x02FD }, - { "Windmill", 0x0453 }, - { "Skulltula House", 0x0550 }, + { "16:Kakariko Buildings", "16:Kakariko Gebaeude", "16:Batiments du Village Cocorico", Select_LoadGame, 9, { + { "Shooting Gallery Minigame", "Schiessbude", "Jeu d'adresse", 0x003B }, + { "Grannys Potion Shop", "Omas Magie-Laden", "Apothicaire (Vieille Femme)", 0x0072 }, + { "Bazaar Shop", "Basar", "Bazar", 0x00B7 }, + { "Potion Shop", "Magie-Laden", "Apothicaire", 0x0384 }, + { "Impas House", "Impas Haus", "Maison d'Impa", 0x039C }, + { "Impas House (Near Cow)", "Impas Haus (Kuh)", "Maison d'Impa (Vache)", 0x05C8 }, + { "Boss House", "Haus des Bosses", "Maison du Boss", 0x02FD }, + { "Windmill", "Windmuehle", "Moulin", 0x0453 }, + { "Skulltula House", "Skulltula Haus", "Maison des SKulltulas", 0x0550 }, }}, - { "17:Graveyard", Select_LoadGame, 9, { - { "From Kakariko", 0x00E4 }, - { "From Shadow Temple", 0x0205 }, - { "From Gravekeepers Hut", 0x0355 }, - { "From Dampes Grave", 0x0359 }, - { "From Shield Grave", 0x035D }, - { "From Redead Grave", 0x0361 }, - { "From Royal Familys Tomb", 0x050B }, - { "Inside Dampe's Hut", 0x030D }, - { "Nocturne of Shadow Warp", 0x0568 }, + { "17:Graveyard", "17:Friedhof", "17:Cimetiere", Select_LoadGame, 9, { + { "From Kakariko", "Von Kakariko", "Depuis l'Apothicaire", 0x00E4 }, + { "From Shadow Temple", "Vom Schattentempel", "Depuis le Temple de l'Ombre", 0x0205 }, + { "From Gravekeepers Hut", "Von der Huette des Totengraebers", "Depuis la Cabane du Fossoyeur", 0x0355 }, + { "From Dampes Grave", "Von Boris' Grab", "Depuis la Tombe d'Igor", 0x0359 }, + { "From Shield Grave", "Vom Schild-Grab", "Depuis la Tombe au Bouclier", 0x035D }, + { "From Redead Grave", "Vom Zombie-Grab", "Depuis la Tombe au Effrois", 0x0361 }, + { "From Royal Familys Tomb", "Vom Koenigsgrab", "Depuis la Tombe Royale", 0x050B }, + { "Inside Dampe's Hut", "Huette des Totengraebers", "A l'interieur de la Cabane du Fossoyeur", 0x030D }, + { "Nocturne of Shadow Warp", "Nocturne des Schattens Teleport", "Teleporteur du Nocturne de l'Ombre", 0x0568 }, }}, - { "18:Graves", Select_LoadGame, 5, { - { "Dampes Grave Minigame", 0x044F }, - { "Royal Familys Tomb", 0x002D }, - { "Royal Familys Tomb, Suns Song Cutscene", 0x0574 }, - { "Treasure Chest Grave", 0x004B }, - { "ReDead Grave", 0x031C }, + { "18:Graves", "18:Graeber", "18:Tombes", Select_LoadGame, 5, { + { "Dampes Grave Minigame", "Boris' Grab-Minispiel", "Tour du Cimetiere d'Igor", 0x044F }, + { "Royal Familys Tomb", "Koenigsgrab", "Tombe Royale", 0x002D }, + { "Royal Familys Tomb, Suns Song Cutscene", "Koenigsgrab, Hymne der Sonne Cutscene", "Tombe Royale, Cinematique du Chant du Soleil", 0x0574 }, + { "Treasure Chest Grave", "Schatzkisten Grab", "Tombe au Coffre", 0x004B }, + { "ReDead Grave", "Zombie Grab", "Tombe au Effrois", 0x031C }, }}, - { "19:Death Mountain Trail", Select_LoadGame, 6, { - { "From Kakariko Village", 0x013D }, - { "From Goron City", 0x01B9 }, - { "From Death Mountain Crater", 0x01BD }, - { "From Dodongos Cavern", 0x0242 }, - { "From Great Fairy", 0x045B }, - { "Great Fairy", 0x0315 }, + { "19:Death Mountain Trail", "19:Gebirgspfad", "19:Mont du Peril", Select_LoadGame, 6, { + { "From Kakariko Village", "Von Kakariko", "Depuis le Village Cocorico", 0x013D }, + { "From Goron City", "Von Goronia", "Depuis le Village Goron", 0x01B9 }, + { "From Death Mountain Crater", "Vom Todeskrater", "Depuis le Cratere du Peril", 0x01BD }, + { "From Dodongos Cavern", "Von Dodongos Hoehle", "Depuis la Caverne Dodongo", 0x0242 }, + { "From Great Fairy", "Von der Feen-Quelle", "Depuis la Grande Fee", 0x045B }, + { "Great Fairy", "Feen-Quelle", "Grande Fee", 0x0315 }, }}, - { "20:Goron City", Select_LoadGame, 5, { - { "From Death Mountain Trail", 0x014D }, - { "From Death Mountain Crater", 0x01C1 }, - { "From Goron City Shop", 0x03FC }, - { "From Lost Woods", 0x04E2 }, - { "Goron City Shop", 0x037C }, + { "20:Goron City", "20:Goronia", "20:Village Goron", Select_LoadGame, 5, { + { "From Death Mountain Trail", "Vom Gebirgspfad", "Depuis le Mont du Peril", 0x014D }, + { "From Death Mountain Crater", "Vom Todeskrater", "Depuis le Cratere du Peril", 0x01C1 }, + { "From Goron City Shop", "Vom Goronen-Laden", "Depuis la Boutique Goron", 0x03FC }, + { "From Lost Woods", "Von den Verlorenen Waeldern", "Depuis les Bois Perdus", 0x04E2 }, + { "Goron City Shop", "Goronen-Laden", "Boutique Goron", 0x037C }, }}, - { "21:Death Mountain Crater", Select_LoadGame, 6, { - { "From Death Mountain Trail", 0x0147 }, - { "From Goron City", 0x0246 }, - { "From Fire Temple", 0x024A }, - { "From Fairy Fountain", 0x0482 }, - { "Great Fairy", 0x04BE }, - { "Bolero of Fire Warp", 0x04F6 }, + { "21:Death Mountain Crater", "21:Todeskrater", "21:Cratere du Peril", Select_LoadGame, 6, { + { "From Death Mountain Trail", "Vom Gebirgspfad", "Depuis le Mont du Peril", 0x0147 }, + { "From Goron City", "Von Goronia", "Depuis le Village Goron", 0x0246 }, + { "From Fire Temple", "Vom Feuertempel", "Depuis le Temple du Feu", 0x024A }, + { "From Fairy Fountain", "Von der Feen-Quelle", "Depuis la Fontaine des Fees", 0x0482 }, + { "Great Fairy", "Feen-Quelle", "Depuis la Grande Fee", 0x04BE }, + { "Bolero of Fire Warp", "Bolero des Feuers Teleport", "Teleporteur du Bolero du Feu", 0x04F6 }, }}, - { "22:Zora River", Select_LoadGame, 3, { - { "From Hyrule Field", 0x00EA }, - { "From Zoras Domain", 0x019D }, - { "From Lost Woods", 0x01DD }, + { "22:Zora River", "22:Zora-Fluss", "22:Riviere Zora", Select_LoadGame, 3, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x00EA }, + { "From Zoras Domain", "Von Zoras Reich", "Depuis le Domaine Zora", 0x019D }, + { "From Lost Woods", "Von den Verlorenen Waeldern", "Depuis les Bois Perdus", 0x01DD }, }}, - { "23:Zoras Domain", Select_LoadGame, 5, { - { "From Zora River", 0x0108 }, - { "From Zoras Fountain", 0x01A1 }, - { "From Lake Hylia", 0x0328 }, - { "From Zora Shop", 0x03C4 }, - { "Zora Shop", 0x0380 }, + { "23:Zoras Domain", "23:Zoras Reich", "23:Domaine Zora", Select_LoadGame, 5, { + { "From Zora River", "Vom Zora-Fluss", "Depuis la Riviere Zora", 0x0108 }, + { "From Zoras Fountain", "Von Zoras Quelle", "Depuis la Fontaine Zora", 0x01A1 }, + { "From Lake Hylia", "Vom Hylia-See", "Depuis le Lac Hylia", 0x0328 }, + { "From Zora Shop", "Vom Zora-Laden", "Depuis la Boutique Zora", 0x03C4 }, + { "Zora Shop", "Zora-Laden", "Boutique Zora", 0x0380 }, }}, - { "24:Zoras Fountain", Select_LoadGame, 5, { - { "From Zoras Domain", 0x0225 }, - { "From Jabu Jabu", 0x0221 }, - { "From Ice Cavern", 0x03D4 }, - { "From Fairy Fountain", 0x0394 }, - { "Great Fairy", 0x0371 }, + { "24:Zoras Fountain", "24:Zoras Quelle", "24:Fontaine Zora", Select_LoadGame, 5, { + { "From Zoras Domain", "Von Zoras Reich", "Depuis le Domaine Zora", 0x0225 }, + { "From Jabu Jabu", "Von Jabu-Jabu", "Depuis Jabu-Jabu", 0x0221 }, + { "From Ice Cavern", "Von der Eishoehle", "Depuis la Caverne Polaire", 0x03D4 }, + { "From Fairy Fountain", "Von der Feen-Quelle", "Depuis la Fontaine des Fees", 0x0394 }, + { "Great Fairy", "Feen-Quelle", "Grande Fee", 0x0371 }, }}, - { "25:Lake Hylia", Select_LoadGame, 7, { - { "From Hyrule Field", 0x0102 }, - { "From Gerudo Valley", 0x0219 }, - { "From Water Temple", 0x021D }, - { "From Fishing Pond", 0x0309 }, - { "From Laboratory", 0x03CC }, - { "From Zoras Domain", 0x0560 }, - { "Serenade Of Water Warp", 0x0604 }, + { "25:Lake Hylia", "25:Hylia-See", "25:Lac Hylia", Select_LoadGame, 7, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x0102 }, + { "From Gerudo Valley", "Vom Gerudotal", "Depuis la Vallee Gerudo", 0x0219 }, + { "From Water Temple", "Vom Wassertempel", "Depuis le Temple de l'Eau", 0x021D }, + { "From Fishing Pond", "Vom Fischweiher", "Depuis l'Etang", 0x0309 }, + { "From Laboratory", "Vom Laboratorium", "Depuis le Laboratoire du Lac", 0x03CC }, + { "From Zoras Domain", "Von Zoras Reich", "Depuis le Domaine Zora", 0x0560 }, + { "Serenade Of Water Warp", "Serenade des Wassers Teleport", "Teleporteur de la Serenade de l'Eau", 0x0604 }, }}, - { "26:Lake Hylia Buildings", Select_LoadGame, 2, { - { "Laboratory", 0x0043 }, - { "Fishing Pond Minigame", 0x045F }, + { "26:Lake Hylia Buildings", "26:Hylia-See Gebaeude", "26:Batiments du Lac Hylia", Select_LoadGame, 2, { + { "Laboratory", "Laboratorium", "Laboratoire du Lac", 0x0043 }, + { "Fishing Pond Minigame", "Fischweiher", "Etang", 0x045F }, }}, - { "27:Gerudo Valley", Select_LoadGame, 5, { - { "From Hyrule Field", 0x0117 }, - { "From Gerudo Fortress", 0x022D }, - { "From Carpenter's Tent", 0x03D0 }, - { "Carpenter's Tent/ Running Man Minigame", 0x03A0 }, - { "Thrown out of Fortress", 0x01A5 }, + { "27:Gerudo Valley", "27:Gerudotal", "27:Vallee Gerudo", Select_LoadGame, 5, { + { "From Hyrule Field", "Von der Hylianischen Steppe", "Depuis la Plaine d'Hyrule", 0x0117 }, + { "From Gerudo Fortress", "Von der Gerudo-Festung", "Depuis la Forteresse Gerudo", 0x022D }, + { "From Carpenter's Tent", "Vom Zelt der Zimmerleute", "Depuis la Tente du Charpentier", 0x03D0 }, + { "Carpenter's Tent/ Running Man Minigame", "Zelt der Zimmerleute/ Rennlaeufer Minispiel", "Tente du Charpentier/ Marathonien", 0x03A0 }, + { "Thrown out of Fortress", "Aus der Festung geworfen", "Expulsé de la Forteresse", 0x01A5 }, }}, - { "28:Gerudo Fortress", Select_LoadGame, 18, { - { "From Gerudo Valley", 0x0129 }, - { "From Traning Grounds", 0x03A8 }, - { "From Haunted Wasteland", 0x03AC }, - { "Horseback Riding Minigame", 0x03B0 }, - { "Gerudo Fortress Jail", 0x03B4 }, - { "From Thieves Hideout (1)", 0x0231 }, - { "From Thieves Hideout (2)", 0x0235 }, - { "From Thieves Hideout (3)", 0x0239 }, - { "From Thieves Hideout (4)", 0x02AA }, - { "From Thieves Hideout (5)", 0x02BA }, - { "From Thieves Hideout (6)", 0x02BE }, - { "From Thieves Hideout (7)", 0x02C2 }, - { "From Thieves Hideout (8)", 0x02C6 }, - { "From Thieves Hideout (9)", 0x02D2 }, - { "From Thieves Hideout (10)", 0x02D6 }, - { "From Thieves Hideout (11)", 0x02DA }, - { "From Thieves Hideout (12)", 0x02DE }, - { "From Thieves Hideout (13)", 0x03A4 }, + { "28:Gerudo Fortress", "28:Gerudo-Festung", "28:Forteresse Gerudo", Select_LoadGame, 18, { + { "From Gerudo Valley", "Vom Gerudotal", "Depuis la Vallee Gerudo", 0x0129 }, + { "From Gerudo Training Grounds", "Von der Gerudo-Arena", "Depuis le Gymnase Gerudo", 0x03A8 }, + { "From Haunted Wasteland", "Von der Gespensterwueste", "Depuis le Desert Hante", 0x03AC }, + { "Horseback Riding Minigame", "Bogen zu Pferde Minispiel", "Archerie Montee", 0x03B0 }, + { "Gerudo Fortress Jail", "Gerudo-Festung Gefaengnis", "Prison de la Forteresse Gerudo", 0x03B4 }, + { "From Thieves Hideout (1)", "Vom Diebesversteck (1)", "Depuis le Repaire des Voleurs (1)", 0x0231 }, + { "From Thieves Hideout (2)", "Vom Diebesversteck (2)", "Depuis le Repaire des Voleurs (2)", 0x0235 }, + { "From Thieves Hideout (3)", "Vom Diebesversteck (3)", "Depuis le Repaire des Voleurs (3)", 0x0239 }, + { "From Thieves Hideout (4)", "Vom Diebesversteck (4)", "Depuis le Repaire des Voleurs (4)", 0x02AA }, + { "From Thieves Hideout (5)", "Vom Diebesversteck (5)", "Depuis le Repaire des Voleurs (5)", 0x02BA }, + { "From Thieves Hideout (6)", "Vom Diebesversteck (6)", "Depuis le Repaire des Voleurs (6)", 0x02BE }, + { "From Thieves Hideout (7)", "Vom Diebesversteck (7)", "Depuis le Repaire des Voleurs (7)", 0x02C2 }, + { "From Thieves Hideout (8)", "Vom Diebesversteck (8)", "Depuis le Repaire des Voleurs (8)", 0x02C6 }, + { "From Thieves Hideout (9)", "Vom Diebesversteck (9)", "Depuis le Repaire des Voleurs (9)", 0x02D2 }, + { "From Thieves Hideout (10)", "Vom Diebesversteck (10)", "Depuis le Repaire des Voleurs (10)", 0x02D6 }, + { "From Thieves Hideout (11)", "Vom Diebesversteck (11)", "Depuis le Repaire des Voleurs (11)", 0x02DA }, + { "From Thieves Hideout (12)", "Vom Diebesversteck (12)", "Depuis le Repaire des Voleurs (12)", 0x02DE }, + { "From Thieves Hideout (13)", "Vom Diebesversteck (13)", "Depuis le Repaire des Voleurs (13)", 0x03A4 }, }}, - { "29:Thieves Hideout", Select_LoadGame, 13, { - { "From Gerudo Fortress (1)", 0x0486 }, - { "From Gerudo Fortress (2)", 0x048A }, - { "From Gerudo Fortress (3)", 0x048E }, - { "From Gerudo Fortress (4)", 0x0492 }, - { "From Gerudo Fortress (5)", 0x0496 }, - { "From Gerudo Fortress (6)", 0x049A }, - { "From Gerudo Fortress (7)", 0x049E }, - { "From Gerudo Fortress (8)", 0x04A2 }, - { "From Gerudo Fortress (9)", 0x04A6 }, - { "From Gerudo Fortress (10)", 0x04AA }, - { "From Gerudo Fortress (11)", 0x04AE }, - { "From Gerudo Fortress (12)", 0x04B2 }, - { "From Gerudo Fortress (13)", 0x0570 }, + { "29:Thieves Hideout", "29:Diebesversteck", "29:Repaire des Voleurs", Select_LoadGame, 13, { + { "From Gerudo Fortress (1)", "Von der Gerudo-Festung (1)", "Depuis la Forteresse Gerudo (1)", 0x0486 }, + { "From Gerudo Fortress (2)", "Von der Gerudo-Festung (2)", "Depuis la Forteresse Gerudo (2)", 0x048A }, + { "From Gerudo Fortress (3)", "Von der Gerudo-Festung (3)", "Depuis la Forteresse Gerudo (3)", 0x048E }, + { "From Gerudo Fortress (4)", "Von der Gerudo-Festung (4)", "Depuis la Forteresse Gerudo (4)", 0x0492 }, + { "From Gerudo Fortress (5)", "Von der Gerudo-Festung (5)", "Depuis la Forteresse Gerudo (5)", 0x0496 }, + { "From Gerudo Fortress (6)", "Von der Gerudo-Festung (6)", "Depuis la Forteresse Gerudo (6)", 0x049A }, + { "From Gerudo Fortress (7)", "Von der Gerudo-Festung (7)", "Depuis la Forteresse Gerudo (7)", 0x049E }, + { "From Gerudo Fortress (8)", "Von der Gerudo-Festung (8)", "Depuis la Forteresse Gerudo (8)", 0x04A2 }, + { "From Gerudo Fortress (9)", "Von der Gerudo-Festung (9)", "Depuis la Forteresse Gerudo (9)", 0x04A6 }, + { "From Gerudo Fortress (10)", "Von der Gerudo-Festung (10)", "Depuis la Forteresse Gerudo (10)", 0x04AA }, + { "From Gerudo Fortress (11)", "Von der Gerudo-Festung (11)", "Depuis la Forteresse Gerudo (11)", 0x04AE }, + { "From Gerudo Fortress (12)", "Von der Gerudo-Festung (12)", "Depuis la Forteresse Gerudo (12)", 0x04B2 }, + { "From Gerudo Fortress (13)", "Von der Gerudo-Festung (13)", "Depuis la Forteresse Gerudo (13)", 0x0570 }, }}, - { "30:Haunted Wasteland", Select_LoadGame, 2, { - { "From Gerudo Fortress", 0x0130 }, - { "From Desert Colossus", 0x0365 }, + { "30:Haunted Wasteland", "30:Geisterwueste", "30:Desert Hante", Select_LoadGame, 2, { + { "From Gerudo Fortress", "Von der Gerudo-Festung", "Depuis la Forteresse Gerudo", 0x0130 }, + { "From Desert Colossus", "Vom Wuestenkoloss", "Depuis le Colosse du Desert", 0x0365 }, }}, - { "31:Desert Colossus", Select_LoadGame, 7, { - { "From Haunted Wasteland", 0x0123 }, - { "From Spirit Temple", 0x01E1 }, - { "From Spirit Temple (Left Hand)", 0x01E5 }, - { "From Spirit Temple (Right Hand)", 0x01E9 }, - { "From Fairy Fountain", 0x057C }, - { "Great Fairy", 0x0588 }, - { "Requiem of Spirit Warp", 0x01F1 }, + { "31:Desert Colossus", "31:Wuestenkoloss", "31:Colosse du Desert", Select_LoadGame, 7, { + { "From Haunted Wasteland", "Von der Geisterwueste", "Depuis le Desert Hante", 0x0123 }, + { "From Spirit Temple", "Vom Geistertempel", "Depuis le Temple de l'Esprit", 0x01E1 }, + { "From Spirit Temple (Left Hand)", "Vom Geistertempel (Linke Hand)", "Depuis le Temple de l'Esprit (Main Gauche)", 0x01E5 }, + { "From Spirit Temple (Right Hand)", "Vom Geistertempel (Rechte Hand)", "Depuis le Temple de l'Esprit (Main Droite)", 0x01E9 }, + { "From Fairy Fountain", "Von der Feen-Quelle", "Depuis la Fontaine des Fees", 0x057C }, + { "Great Fairy", "Feen-Quelle", "Grande Fee", 0x0588 }, + { "Requiem of Spirit Warp", "Requiem der Geister Teleport", "Teleporteur du Requiem de l'Esprit", 0x01F1 }, }}, - { "32:Deku Tree", Select_LoadGame, 3, { - { "Entrance", 0x0001 }, - { "From Gohma Fight", 0x0252 }, - { "Gohma Fight", 0x040F }, + { "32:Deku Tree", "32:Deku-Baum", "32:Arbre Mojo", Select_LoadGame, 3, { + { "Entrance", "Eingang", "Entree", 0x0001 }, + { "From Gohma's Lair", "Vom Gohma Kampf", "Depuis le Repaire de Gohma", 0x0252 }, + { "Gohma's Lair", "Gohma Kampf", "Repaire de Gohma", 0x040F }, }}, - { "33:Dodongos Cavern", Select_LoadGame, 3, { - { "Entrance", 0x0004 }, - { "From King Dodongo", 0x00C5 }, - { "King Dodongo", 0x040B }, + { "33:Dodongos Cavern", "33:Dodongos Hoehle", "33:Caverne Dodongo", Select_LoadGame, 3, { + { "Entrance", "Eingang", "Entree", 0x0004 }, + { "From King Dodongo", "Von King Dodongo", "Depuis le Repaire du Roi Dodongo", 0x00C5 }, + { "King Dodongo's Lair", "King Dodongo Kampf", "Repaire du Roi Dodongo", 0x040B }, }}, - { "34:Jabu Jabu", Select_LoadGame, 2, { - { "Entrance", 0x0028 }, - { "Barinade Fight", 0x0301 }, + { "34:Jabu Jabu", "34:Jabu-Jabu", "34:Jabu-Jabu", Select_LoadGame, 2, { + { "Entrance", "Eingang", "Entree", 0x0028 }, + { "Barinade's Lair", "Barinade Kampf", "Repaire de Barinade", 0x0301 }, }}, - { "35:Forest Temple", Select_LoadGame, 4, { - { "Entrance", 0x0169 }, - { "Crushing Room", 0x0584 }, - { "Before Phantom Ganon", 0x024E }, - { "Phantom Ganon Fight", 0x000C }, + { "35:Forest Temple", "35:Waldtempel", "35:Temple de la Foret", Select_LoadGame, 4, { + { "Entrance", "Eingang", "Entree", 0x0169 }, + { "Crushing Room", "Der Fallende Decke Raum", "Salle de Broyage", 0x0584 }, + { "Before Phantom Ganon", "Vor Phantom-Ganon", "Avant Ganon Spectral", 0x024E }, + { "Phantom Ganon's Lair", "Phantom-Ganon Kampf", "Repaire de Ganon Spectral", 0x000C }, }}, - { "36:Fire Temple", Select_LoadGame, 3, { - { "Entrance", 0x0165 }, - { "Before Volvagia", 0x0175 }, - { "Volvagia", 0x0305 }, + { "36:Fire Temple", "36:Feuertempel", "36:Temple du Feu", Select_LoadGame, 3, { + { "Entrance", "Eingang", "Entrance", 0x0165 }, + { "Before Volvagia", "Vor Volvagia", "Avant Volvagia", 0x0175 }, + { "Volvagia's Lair", "Volvagia Kampf", "Repaire de Volvagia", 0x0305 }, }}, - { "37:Water Temple", Select_LoadGame, 2, { - { "Entrance", 0x0010 }, - { "Barinade", 0x0417 }, + { "37:Water Temple", "37:Wassertempel", "37:Temple de l'Eau", Select_LoadGame, 2, { + { "Entrance", "Eingang", "Entree", 0x0010 }, + { "Morpha's Lair", "Morpha Kampf", "Repaire de Morpha", 0x0417 }, }}, - { "38:Shadow Temple", Select_LoadGame, 3, { - { "Entrance", 0x0037 }, - { "Outside Bongo Bongo", 0x02B2 }, - { "Bongo Bongo", 0x0413 }, + { "38:Shadow Temple", "38:Schattentempel", "38:Temple de l'Ombre", Select_LoadGame, 3, { + { "Entrance", "Eingang", "Entree", 0x0037 }, + { "Outside Bongo Bongo", "Vor Bongo Bongo", "Avant Bongo Bongo", 0x02B2 }, + { "Bongo Bongo's Lair", "Bongo Bongo Kampf", "Repaire de Bongo Bongo", 0x0413 }, }}, - { "39:Spirit Temple", Select_LoadGame, 6, { - { "Entrance", 0x0082 }, - { "From Left Hand", 0x03F0 }, - { "From Right Hand", 0x03F4 }, - { "Before Twinrova", 0x02F5 }, - { "Naboora Fight", 0x008D }, - { "Twinrova", 0x05EC }, + { "39:Spirit Temple", "39:Geistertempel", "39:Temple de l'Esprit", Select_LoadGame, 6, { + { "Entrance", "Eingang", "Entree", 0x0082 }, + { "From Left Hand", "Von der linken Hand", "Depuis la Main Gauche", 0x03F0 }, + { "From Right Hand", "Von der rechten Hand", "Depuis la Main Droite", 0x03F4 }, + { "Before Twinrova", "Vor den Killa Ohmaz", "Avant le Duo Malefique", 0x02F5 }, + { "Nabooru Fight", "Naboru Kampf", "Combat contre Nabooru", 0x008D }, + { "Twinrova's Lair", "Killa Ohmaz Kampf", "Repaire du Duo Malefique", 0x05EC }, }}, - { "40:Ganons Castle", Select_LoadGame, 9, { - { "Entrance", 0x0467 }, - { "From Tower", 0x0534 }, - { "Stairs to Lair - From Castle", 0x041B }, - { "Stairs to Lair - From Ganondorf's Lair", 0x0427 }, - { "Ganondorf's Lair", 0x041F }, - { "Ganondorf Defeated", 0x01C9 }, - { "Ganondorf Defeated (2)", 0x04BA }, - { "Ganon Battle", 0x0517 }, - { "Ganon Death Cutscene", 0x043F }, + { "40:Ganons Castle", "40:Ganons Schloss", "40:Chateau de Ganon", Select_LoadGame, 9, { + { "Entrance", "Eingang", "Entree", 0x0467 }, + { "From Tower", "Vom Tower", "Depuis la Tour", 0x0534 }, + { "Stairs to Lair - From Castle", "Stufen zum Verliess - Vom Schloss", "Escaliers vers Repaire - Depuis le Chateau", 0x041B }, + { "Stairs to Lair - From Ganondorf's Lair", "Stufen zum Verliess - Von Ganondorfs Verliess", "Escaliers vers Repaire - Depuis le Repaire de Ganondorf", 0x0427 }, + { "Ganondorf's Lair", "Ganondorfs Verliess", "Repaire de Ganondorf", 0x041F }, + { "Ganondorf Defeated", "Ganondorf Besiegt", "Ganondorf Vaincu", 0x01C9 }, + { "Ganondorf Defeated (2)", "Ganondorf Besiegt (2)", "Ganondorf Vaincu (2)", 0x04BA }, + { "Ganon's Lair", "Ganon Kampf", "Repaire de Ganon", 0x0517 }, + { "Ganon Death Cutscene", "Ganon Todes Cutscene", "Cinematique de la Mort de Ganon", 0x043F }, }}, - { "41:Bottom of the Well", Select_LoadGame, 1, { - { "Entrance", 0x0098 }, + { "41:Bottom of the Well", "41:Grund des Brunnens", "41:Puits", Select_LoadGame, 1, { + { "Entrance", "Eingang", "Entree", 0x0098 }, }}, - { "42:Ice Cavern", Select_LoadGame, 1, { - { "Entrance", 0x0088 }, + { "42:Ice Cavern", "42:Eishoehle", "42:Caverne Polaire", Select_LoadGame, 1, { + { "Entrance", "Eingang", "Entree", 0x0088 }, }}, - { "43:Gerudo Training Grounds", Select_LoadGame, 1, { - { "Entrance", 0x0008 }, + { "43:Gerudo Training Grounds", "43:Gerudo-Arena", "43:Gymnase Gerudo", Select_LoadGame, 1, { + { "Entrance", "Eingang", "Entree", 0x0008 }, }}, - { "44:Warps", Select_LoadGame, 6, { - { "Prelude of Light Warp", 0x05F4 }, - { "Minuet of Forest Warp", 0x0600 }, - { "Bolero of Fire Warp", 0x04F6 }, - { "Serenade Of Water Warp", 0x0604 }, - { "Nocturne of Shadow Warp", 0x0568 }, - { "Requiem of Spirit Warp", 0x01F1 }, + { "44:Warps", "44:Teleportpunkte", "44:Teleporteurs", Select_LoadGame, 6, { + { "Prelude of Light Warp", "Kantate des Lichts Teleport", "Teleporteur du Prelude de la Lumiere", 0x05F4 }, + { "Minuet of Forest Warp", "Menuett des Waldes Teleport", "Teleporteur du Menuet des Bois", 0x0600 }, + { "Bolero of Fire Warp", "Bolero des Feuers Teleport", "Teleporteur du Bolero du Feu", 0x04F6 }, + { "Serenade Of Water Warp", "Serenade des Wassers Teleport", "Teleporteur de la Serenade de l'Eau", 0x0604 }, + { "Nocturne of Shadow Warp", "Nocturne des Schattens Teleport", "Teleporteur du Nocturne de l'Ombre", 0x0568 }, + { "Requiem of Spirit Warp", "Requiem der Geister Teleport", "Teleporteur du Requiem de l'Esprit", 0x01F1 }, }}, - { "45:Shops", Select_LoadGame, 9, { - { "Kokiri Shop", 0x00C1 }, - { "Potion Shop (Market)", 0x0388 }, - { "Bazaar Shop (Market)", 0x052C }, - { "Happy Mask Shop", 0x0530 }, - { "Bombchu Shop", 0x0528 }, - { "Bazaar Shop (Kakariko)", 0x00B7 }, - { "Potion Shop (Kakariko)", 0x0384 }, - { "Goron City Shop", 0x037C }, - { "Zora Shop", 0x0380 }, + { "45:Shops", "45:Laeden", "45:Boutiques", Select_LoadGame, 9, { + { "Kokiri Shop", "Kokiri-Laden", "Boutique Kokiri", 0x00C1 }, + { "Potion Shop (Market)", "Magie-Laden (Marktplatz)", "Apothicaire (Place du Marche)", 0x0388 }, + { "Bazaar Shop (Market)", "Basar (Marktplatz)", "Bazar (Place du Marche)", 0x052C }, + { "Happy Mask Shop", "Maskenhaendler", "Foire aux Masques", 0x0530 }, + { "Bombchu Shop", "Krabbelminen-Laden", "Boutique de Missiles", 0x0528 }, + { "Bazaar Shop (Kakariko)", "Basar (Kakariko)", "Bazar (Village Cocorico)", 0x00B7 }, + { "Potion Shop (Kakariko)", "Magie-Laden (Kakariko)", "Apothicaire (Village Cocorico)", 0x0384 }, + { "Goron City Shop", "Goronen-Laden", "Boutique Goron", 0x037C }, + { "Zora Shop", "Zora-Laden", "Boutique Zora", 0x0380 }, }}, - { "46:Great Fairies", Select_LoadGame, 6, { - { "Hyrule Castle (Child)", 0x0578 }, - { "Hyrule Castle (Adult)", 0x04C2 }, - { "Death Mountain Trail", 0x0315 }, - { "Death Mountain Crater", 0x04BE }, - { "Zoras Fountain", 0x0371 }, - { "Desert Colossus", 0x0588 }, + { "46:Great Fairies", "46:Feen-Quellen", "46:Grandes Fees", Select_LoadGame, 6, { + { "Hyrule Castle (Child)", "Schloss Hyrule (Kind)", "Chateau d'Hyrule (Enfant)", 0x0578 }, + { "Hyrule Castle (Adult)", "Schloss Hyrule (Erwachsener)", "Chateau d'Hyrule (Adult)", 0x04C2 }, + { "Death Mountain Trail", "Gebirgspfad", "Mont du Peril", 0x0315 }, + { "Death Mountain Crater", "Todeskrater", "Cratere du Peril", 0x04BE }, + { "Zoras Fountain", "Zoras Quelle", "Fontaine Zora", 0x0371 }, + { "Desert Colossus", "Wuestenkoloss", "Colosse du Desert", 0x0588 }, }}, - { "47:Chest Grottos", Select_Grotto_LoadGame, 11, { - { "Kokiri Forest (Song of Storms)", 0x00 }, - { "Lost Woods", 0x01 }, - { "Sacred Forest Meadow", 0x02 }, - { "Hyrule Field (Near Market)", 0x03 }, - { "Hyrule Field (Open Near Lake)", 0x04 }, - { "Hyrule Field (SE Boulder)", 0x05 }, - { "Kakariko (Open)", 0x06 }, - { "Kakariko (Redead)", 0x07 }, - { "Death Mountain Trail (Song of Storms)", 0x08 }, - { "Death Mountain Crater", 0x09 }, - { "Zora River (Open)", 0x0A }, + { "47:Chest Grottos", "47:Truhen Grotten", "47:Grottes a Coffres", Select_Grotto_LoadGame, 11, { + { "Kokiri Forest (Song of Storms)", "Kokiri-Wald (Hymne des Sturms)", "Foret Kokiri (Chant des Tempetes)", 0x00 }, + { "Lost Woods", "Verlorene Waelder", "Bois Perdus", 0x01 }, + { "Sacred Forest Meadow", "Waldlichtung", "Bosquet Sacre", 0x02 }, + { "Hyrule Field (Near Market)", "Hylianische Steppe (Nahe Marktplatz)", "Plaine d'Hyrule (Pres de la Place du Marche)", 0x03 }, + { "Hyrule Field (Open Near Lake)", "Hylianische Steppe (Offen, beim Hylia-See)", "Plaine d'Hyrule (Deja ouverte pres du Lac)", 0x04 }, + { "Hyrule Field (SE Boulder)", "Hylianische Steppe (Felsen, S-O)", "Plaine d'Hyrule (Rocher a Gantelets)", 0x05 }, + { "Kakariko (Open)", "Kakariko (Offen)", "Village Cocorico (Deja Ouverte)", 0x06 }, + { "Kakariko (Redead)", "Kakariko (Zombies)", "Village Cocorico (Effrois)", 0x07 }, + { "Death Mountain Trail (Song of Storms)", "Gebirgspfad (Hymne des Sturms)", "Mont du Peril (Chant des Tempetes)", 0x08 }, + { "Death Mountain Crater", "Todeskrater", "Cratere du Peril", 0x09 }, + { "Zora River (Open)", "Zora-Fluss (Offen)", "Riviere Zora (Deja Ouverte)", 0x0A }, }}, - { "48:Scrub Grottos", Select_Grotto_LoadGame, 10, { - { "Hyrule Field (Near Lake)", 0x0B }, - { "Death Mountain Crater", 0x0C }, - { "Goron City", 0x0D }, - { "Lon Lon Ranch", 0x0E }, - { "Lake Hylia", 0x0F }, - { "Lost Woods", 0x10 }, - { "Zora River (Song of Storms)", 0x11 }, - { "Sacred Forest Meadow (Song of Storms)", 0x12 }, - { "Gerudo Valley (Song of Storms)", 0x13 }, - { "Desert Colossus", 0x14 }, + { "48:Scrub Grottos", "48:Laubkerl Grotten", "48:Grottes des Pestes Marchandes", Select_Grotto_LoadGame, 10, { + { "Hyrule Field (Near Lake)", "Hylianische Steppe (beim Hylia-See)", "Plaine d'Hyrule (Pres du Lac)", 0x0B }, + { "Death Mountain Crater", "Todeskrater", "Cratere du Peril", 0x0C }, + { "Goron City", "Goronia", "Village Goron", 0x0D }, + { "Lon Lon Ranch", "Lon Lon-Farm", "Ranch Lon Lon", 0x0E }, + { "Lake Hylia", "Hylia-See", "Lac Hylia", 0x0F }, + { "Lost Woods", "Verlorene Waelder", "Bois Perdus", 0x10 }, + { "Zora River (Song of Storms)", "Zora-Fluss (Hymne des Sturms)", "Rivere Zora (Chant des Tempetes)", 0x11 }, + { "Sacred Forest Meadow (Song of Storms)", "Waldlichtung (Hymne des Sturms)", "Bosquet Scare (Chant des Tempetes)", 0x12 }, + { "Gerudo Valley (Song of Storms)", "Gerudotal (Hymne des Sturms)", "Vallee Gerudo (Chant des Tempetes)", 0x13 }, + { "Desert Colossus", "Wuestenkoloss", "Colosse du Desert", 0x14 }, }}, - { "49:Other Grottos", Select_Grotto_LoadGame, 7, { - { "Scrub Theatre", 0x15 }, - { "Spider Grotto (Hyrule Field)", 0x16 }, - { "Spider Grotto (Hyrule Castle)", 0x17 }, - { "Cow Grotto (Hyrule Field)", 0x18 }, - { "Cow Grotto (Death Mountain Trail)", 0x19 }, - { "Flooded Grotto (Gerudo Valley)", 0x1A }, - { "Flooded Grotto (Hyrule Field)", 0x1B }, + { "49:Other Grottos", "49:Andere Grotten", "49:Autres Grottes", Select_Grotto_LoadGame, 7, { + { "Scrub Theatre", "Waldbuehne", "Theatre Mojo", 0x15 }, + { "Spider Grotto (Hyrule Field)", "Spinnen-Grotte (Hylianische Steppe)", "Spider Araignee (Plaine d'Hyrule)", 0x16 }, + { "Spider Grotto (Hyrule Castle)", "Spinnen-Grotte (Schloss Hyrule)", "Grotte Araignee (Chateau d'Hyrule)", 0x17 }, + { "Cow Grotto (Hyrule Field)", "Kuh-Grotte (Hylianische Steppe)", "Grotte a Vache (Plaine d'Hyrule)", 0x18 }, + { "Cow Grotto (Death Mountain Trail)", "Kuh-Grotte (Gebirgspfad)", "Grotte a Vache (Chemin du Peril)", 0x19 }, + { "Flooded Grotto (Gerudo Valley)", "Geflutete Grotte (Gerudotal)", "Grotte Inondée (Vallee Gerudo)", 0x1A }, + { "Flooded Grotto (Hyrule Field)", "Geflutete Grotte (Hylianische Steppe)", "Grotte Inondée (Plaine d'Hyrule)", 0x1B }, }}, - { "50:Debug (Use with caution)", Select_LoadGame, 10, { - { "Test Room", 0x0520 }, - { "SRD Map", 0x0018 }, - { "Test Map", 0x0094 }, - { "Treasure Chest Warp", 0x0024 }, - { "Stalfos Miniboss Room", 0x001C }, - { "Stalfos Boss Room", 0x001C }, - { "Dark Link Room", 0x0047 }, - { "Shooting Gallery Duplicate", 0x02EA }, - { "Depth Test", 0x00B6 }, - { "Hyrule Garden Game (Broken)", 0x0076 }, + { "50:Debug (Use with caution)", "50:Debug (Mit Vorsicht benutzen)", "50:Debug (A utiliser avec prudence)", Select_LoadGame, 10, { + { "Test Room", "Test Raum", "Salle de Test", 0x0520 }, + { "SRD Map", "SRD Karte", "Carte SRD", 0x0018 }, + { "Test Map", "Test Karte", "Carte de Test", 0x0094 }, + { "Treasure Chest Warp", "Schatzkisten Teleport", "Salle de Test - Objets", 0x0024 }, + { "Stalfos Miniboss Room", "Stalfos-Ritter Miniboss Raum", "Salle du Minoboss Stalfos", 0x001C }, + { "Stalfos Boss Room", "Stalfos-Ritter Boss Raum", "Salle de Boss Stalfos", 0x001C }, + { "Dark Link Room", "Schwarzer Link Raum", "Salle de Dark Link", 0x0047 }, + { "Shooting Gallery Duplicate", "Schiessbude (Duplikat)", "Jeu d'Adresse (Duplicata)", 0x02EA }, + { "Depth Test", "Tiefen Test", "Test de Profondeur", 0x00B6 }, + { "Hyrule Garden Game (Broken)", "Burghof - Wachen-Minispiel (Kaputt)", "Cour du chateau (Non Fonctionnel)", 0x0076 }, }}, }; @@ -1034,7 +1035,23 @@ void Select_PrintMenu(SelectContext* this, GfxPrint* printer) { GfxPrint_SetColor(printer, 200, 200, 55, 255); } - name = this->scenes[scene].name; + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + name = this->scenes[scene].englishName; + break; + case LANGUAGE_GER: + name = this->scenes[scene].germanName; + break; + case LANGUAGE_FRA: + name = this->scenes[scene].frenchName; + break; + } + } else { + name = this->scenes[scene].japaneseName; + } + //name = this->scenes[scene].name; if (name == NULL) { name = "**Null**"; } @@ -1043,7 +1060,14 @@ void Select_PrintMenu(SelectContext* this, GfxPrint* printer) { }; GfxPrint_SetColor(printer, 155, 55, 150, 255); - GfxPrint_SetPos(printer, 20, 26); + + // Small position hack of the OPT=X text since german Link's Age overlap if translated + if (CVarGetInteger("gDebugWarpScreenTranslation", 0) && gSaveContext.language == LANGUAGE_GER) { + GfxPrint_SetPos(printer, 26, 26); + } else { + GfxPrint_SetPos(printer, 20, 26); + } + GfxPrint_Printf(printer, "OPT=%d", this->opt); } @@ -1066,8 +1090,23 @@ void Better_Select_PrintMenu(SelectContext* this, GfxPrint* printer) { } else { GfxPrint_SetColor(printer, 175, 175, 175, 255); } - - name = this->betterScenes[scene].name; + + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + name = this->betterScenes[scene].englishName; + break; + case LANGUAGE_GER: + name = this->betterScenes[scene].germanName; + break; + case LANGUAGE_FRA: + name = this->betterScenes[scene].frenchName; + break; + } + } else { + name = this->betterScenes[scene].englishName; + } if (name == NULL) { name = "**Null**"; } @@ -1077,34 +1116,39 @@ void Better_Select_PrintMenu(SelectContext* this, GfxPrint* printer) { GfxPrint_SetColor(printer, 205, 100, 200, 255); GfxPrint_SetPos(printer, 3, 26); - GfxPrint_Printf(printer, "%s", this->betterScenes[this->currentScene].entrancePairs[this->pageDownIndex].name); + + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + GfxPrint_Printf(printer, "%s", this->betterScenes[this->currentScene].entrancePairs[this->pageDownIndex].englishName); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "%s", this->betterScenes[this->currentScene].entrancePairs[this->pageDownIndex].germanName); + break; + case LANGUAGE_FRA: + GfxPrint_Printf(printer, "%s", this->betterScenes[this->currentScene].entrancePairs[this->pageDownIndex].frenchName); + break; + } + } else { + GfxPrint_Printf(printer, "%s", this->betterScenes[this->currentScene].entrancePairs[this->pageDownIndex].englishName); + } } -static const char* sLoadingMessages[] = { - // "Please wait a minute" - GFXP_HIRAGANA "シバラクオマチクダサイ", - // "Hold on a sec" - GFXP_HIRAGANA "チョット マッテネ", - // "Wait a moment" - GFXP_KATAKANA "ウェイト ア モーメント", - // "Loading" - GFXP_KATAKANA "ロード" GFXP_HIRAGANA "チュウ", - // "Now working" - GFXP_HIRAGANA "ナウ ワーキング", - // "Now creating" - GFXP_HIRAGANA "イマ ツクッテマス", - // "It's not broken" - GFXP_HIRAGANA "コショウジャナイヨ", - // "Coffee Break" - GFXP_KATAKANA "コーヒー ブレイク", - // "Please set B side" - GFXP_KATAKANA "Bメンヲセットシテクダサイ", - // "Be patient, now" - GFXP_HIRAGANA "ジット" GFXP_KATAKANA "ガマン" GFXP_HIRAGANA "ノ" GFXP_KATAKANA "コ" GFXP_HIRAGANA "デアッタ", - // "Please wait just a minute" - GFXP_HIRAGANA "イマシバラクオマチクダサイ", - // "Don't worry, don't worry. Take a break, take a break." - GFXP_HIRAGANA "アワテナイアワテナイ。ヒトヤスミヒトヤスミ。", +static SceneSelectLoadingMessages sLoadingMessages[] = { + { GFXP_HIRAGANA "シバラクオマチクダサイ", "Please wait a minute", "Bitte warte eine Minute", "Veuillez patienter une minute" }, + { GFXP_HIRAGANA "チョット マッテネ", "Hold on a sec", "Warte mal 'ne Sekunde" "Une seconde, ça arrive" }, + { GFXP_KATAKANA "ウェイト ア モーメント", "Wait a moment", "Warte einen Moment", "Patientez un instant" }, + { GFXP_KATAKANA "ロード" GFXP_HIRAGANA "チュウ", "Loading", "Ladevorgang", "Chargement" }, + { GFXP_HIRAGANA "ナウ ワーキング", "Now working", "Verarbeite", "Au travail" }, + { GFXP_HIRAGANA "イマ ツクッテマス", "Now creating", "Erstelle...", "En cours de creation..." }, + { GFXP_HIRAGANA "コショウジャナイヨ", "It's not broken", "Es ist nicht kaputt", "C'est pas casse!" }, + { GFXP_KATAKANA "コーヒー ブレイク", "Coffee Break", "Kaffee-Pause", "Pause Cafe" }, + { GFXP_KATAKANA "Bメンヲセットシテクダサイ", "Please set B side", "Please set B side", "Please set B side" }, + { GFXP_HIRAGANA "ジット" GFXP_KATAKANA "ガマン" GFXP_HIRAGANA "ノ" GFXP_KATAKANA "コ" GFXP_HIRAGANA "デアッタ", "Be patient, now", "Übe dich in Geduld", "Veuillez patientez" }, + { GFXP_HIRAGANA "イマシバラクオマチクダサイ", "Please wait just a minute", "Bitte warte noch eine Minute", "Patientez un peu" }, + { GFXP_HIRAGANA "アワテナイアワテナイ。ヒトヤスミヒトヤスミ。", "Don't panic, don't panic. Take a break, take a break.", "Keine Panik! Nimm dir eine Auszeit", "Pas de panique. Prenez une pause." }, + { "Enough! My ship sails in the morning!", "Enough! My ship sails in the morning!", "Enough! My ship sails in the morning!", "Enough! My ship sails in the morning!" }, }; void Select_PrintLoadingMessage(SelectContext* this, GfxPrint* printer) { @@ -1113,82 +1157,159 @@ void Select_PrintLoadingMessage(SelectContext* this, GfxPrint* printer) { GfxPrint_SetPos(printer, 10, 15); GfxPrint_SetColor(printer, 255, 255, 255, 255); randomMsg = Rand_ZeroOne() * ARRAY_COUNT(sLoadingMessages); - GfxPrint_Printf(printer, "%s", sLoadingMessages[randomMsg]); + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + GfxPrint_Printf(printer, "%s", sLoadingMessages[randomMsg].englishMessage); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "%s", sLoadingMessages[randomMsg].germanMessage); + break; + case LANGUAGE_FRA: + GfxPrint_Printf(printer, "%s", sLoadingMessages[randomMsg].frenchMessage); + break; + } + } else { + GfxPrint_Printf(printer, "%s", sLoadingMessages[randomMsg].japaneseMessage); + } } -static const char* sAgeLabels[] = { - GFXP_HIRAGANA "17(ワカモノ)", // "17(young)" - GFXP_HIRAGANA "5(ワカスギ)", // "5(very young)" +static SceneSelectAgeLabels sAgeLabels[] = { + { GFXP_HIRAGANA "17(ワカモノ)", "17(Adult)", "17(Erwachsener)", "17(Adulte)" }, // "17(young) + { GFXP_HIRAGANA "5(ワカスギ)", "5(Child)", "5(Kind)", "5(Enfant)" }, // "5(very young) }; -static const char* sBetterAgeLabels[] = { - "Adult", - "Child", + +static BetterSceneSelectAgeLabels sBetterAgeLabels[] = { + { "Adult", "Erwachsener", "Adulte" }, + { "Child", "Kind", "Enfant" }, }; void Select_PrintAgeSetting(SelectContext* this, GfxPrint* printer, s32 age) { GfxPrint_SetPos(printer, 4, 26); GfxPrint_SetColor(printer, 255, 255, 55, 255); - GfxPrint_Printf(printer, "Age:%s", sAgeLabels[age]); + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + GfxPrint_Printf(printer, "Age:%s", sAgeLabels[age].englishAge); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "Alter:%s", sAgeLabels[age].germanAge); + break; + case LANGUAGE_FRA: + GfxPrint_Printf(printer, "Age:%s", sAgeLabels[age].frenchAge); + break; + } + } else { + GfxPrint_Printf(printer, "Age:%s", sAgeLabels[age].japaneseAge); + } } void Better_Select_PrintAgeSetting(SelectContext* this, GfxPrint* printer, s32 age) { GfxPrint_SetPos(printer, 25, 25); GfxPrint_SetColor(printer, 100, 100, 100, 255); - GfxPrint_Printf(printer, "(B)Age:"); + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + case LANGUAGE_FRA: + default: + GfxPrint_Printf(printer, "(B)Age:"); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "(B)Alter:"); + break; + } + } else { + GfxPrint_Printf(printer, "(B)Age:"); + } + GfxPrint_SetColor(printer, 55, 200, 50, 255); - GfxPrint_Printf(printer, "%s", sBetterAgeLabels[age]); + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + GfxPrint_Printf(printer, "%s", sBetterAgeLabels[age].englishAge); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "%s", sBetterAgeLabels[age].germanAge); + break; + case LANGUAGE_FRA: + GfxPrint_Printf(printer, "%s", sBetterAgeLabels[age].frenchAge); + break; + } + } else { + GfxPrint_Printf(printer, "%s", sBetterAgeLabels[age].englishAge); + } } void Select_PrintCutsceneSetting(SelectContext* this, GfxPrint* printer, u16 csIndex) { + char* cutsceneLabels[13][4] = { + { GFXP_HIRAGANA " ヨル " GFXP_KATAKANA "ゴロン", "Day", "Nacht", "Jour" }, + { GFXP_HIRAGANA "オヒル " GFXP_KATAKANA "ジャラ", "Night", "Tag", "Nuit" }, + { "デモ00", "Demo00", "Demo00", "Demo00" }, + { "デモ01", "Demo01", "Demo01", "Demo01" }, + { "デモ02", "Demo02", "Demo02", "Demo02" }, + { "デモ03", "Demo03", "Demo03", "Demo03" }, + { "デモ04", "Demo04", "Demo04", "Demo04" }, + { "デモ05", "Demo05", "Demo05", "Demo05" }, + { "デモ06", "Demo06", "Demo06", "Demo06" }, + { "デモ07", "Demo07", "Demo07", "Demo07" }, + { "デモ08", "Demo08", "Demo08", "Demo08" }, + { "デモ09", "Demo09", "Demo09", "Demo09" }, + { "デモ0A", "Demo0A", "Demo0A", "Demo0A" }, + }; + char* label; + int lang = CVarGetInteger("gDebugWarpScreenTranslation", 0) ? gSaveContext.language + 1 : 0; GfxPrint_SetPos(printer, 4, 25); GfxPrint_SetColor(printer, 255, 255, 55, 255); switch (csIndex) { case 0: - label = GFXP_HIRAGANA " ヨル " GFXP_KATAKANA "ゴロン"; + label = cutsceneLabels[1][lang]; gSaveContext.dayTime = 0; break; case 0x8000: // clang-format off - gSaveContext.dayTime = 0x8000; label = GFXP_HIRAGANA "オヒル " GFXP_KATAKANA "ジャラ"; + gSaveContext.dayTime = 0x8000; label = cutsceneLabels[0][lang]; // clang-format on break; case 0xFFF0: // clang-format off - gSaveContext.dayTime = 0x8000; label = "デモ00"; + gSaveContext.dayTime = 0x8000; label = cutsceneLabels[2][lang]; // clang-format on break; case 0xFFF1: - label = "デモ01"; + label = cutsceneLabels[3][lang]; break; case 0xFFF2: - label = "デモ02"; + label = cutsceneLabels[4][lang]; break; case 0xFFF3: - label = "デモ03"; + label = cutsceneLabels[5][lang]; break; case 0xFFF4: - label = "デモ04"; + label = cutsceneLabels[6][lang]; break; case 0xFFF5: - label = "デモ05"; + label = cutsceneLabels[7][lang]; break; case 0xFFF6: - label = "デモ06"; + label = cutsceneLabels[8][lang]; break; case 0xFFF7: - label = "デモ07"; + label = cutsceneLabels[9][lang]; break; case 0xFFF8: - label = "デモ08"; + label = cutsceneLabels[10][lang]; break; case 0xFFF9: - label = "デモ09"; + label = cutsceneLabels[11][lang]; break; case 0xFFFA: - label = "デモ0A"; + label = cutsceneLabels[12][lang]; break; }; @@ -1203,11 +1324,57 @@ void Better_Select_PrintTimeSetting(SelectContext* this, GfxPrint* printer) { GfxPrint_SetColor(printer, 100, 100, 100, 255); if (gSaveContext.dayTime > 0xC000 || gSaveContext.dayTime < 0x4555) { - label = "Night"; + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + label = "Night"; + break; + case LANGUAGE_GER: + label = "Nacht"; + break; + case LANGUAGE_FRA: + label = "Nuit"; + break; + } + } else { + label = "Night"; + } } else { - label = "Day"; + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + label = "Day"; + break; + case LANGUAGE_GER: + label = "Tag"; + break; + case LANGUAGE_FRA: + label = "Jour"; + break; + } + } else { + label = "Day"; + } } - GfxPrint_Printf(printer, "(Z/R)Time:"); + if (CVarGetInteger("gDebugWarpScreenTranslation", 0)) { + switch (gSaveContext.language) { + case LANGUAGE_ENG: + default: + GfxPrint_Printf(printer, "(Z/R)Time:"); + break; + case LANGUAGE_GER: + GfxPrint_Printf(printer, "(Z/R)Zeit:"); + break; + case LANGUAGE_FRA: + GfxPrint_Printf(printer, "(Z/R)Temps:"); + break; + } + } else { + GfxPrint_Printf(printer, "(Z/R)Time:"); + } + GfxPrint_SetColor(printer, 200, 200, 55, 255); GfxPrint_Printf(printer, "%s", label); }