diff --git a/soh/include/z64save.h b/soh/include/z64save.h index 08ee53c4dab..a7e7ca652c7 100644 --- a/soh/include/z64save.h +++ b/soh/include/z64save.h @@ -365,25 +365,25 @@ typedef enum { * SaveContext.eventChkInf */ -#define EVENTCHKINF_02 0x02 +#define EVENTCHKINF_FIRST_SPOKE_TO_MIDO 0x02 #define EVENTCHKINF_03 0x03 #define EVENTCHKINF_SHOWED_MIDO_SWORD_SHIELD 0x04 -#define EVENTCHKINF_05 0x05 +#define EVENTCHKINF_DEKU_TREE_OPENED_MOUTH 0x05 #define EVENTCHKINF_OBTAINED_KOKIRI_EMERALD_DEKU_TREE_DEAD 0x07 #define EVENTCHKINF_09 0x09 #define EVENTCHKINF_0A 0x0A #define EVENTCHKINF_0B 0x0B -#define EVENTCHKINF_0C 0x0C +#define EVENTCHKINF_MET_DEKU_TREE 0x0C #define EVENTCHKINF_0F 0x0F -#define EVENTCHKINF_10 0x10 -#define EVENTCHKINF_11 0x11 -#define EVENTCHKINF_12 0x12 +#define EVENTCHKINF_SPOKE_TO_CHILD_MALON_AT_CASTLE_OR_MARKET 0x10 +#define EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS 0x11 +#define EVENTCHKINF_OBTAINED_POCKET_EGG 0x12 #define EVENTCHKINF_TALON_WOKEN_IN_CASTLE 0x13 #define EVENTCHKINF_TALON_RETURNED_FROM_CASTLE 0x14 -#define EVENTCHKINF_15 0x15 -#define EVENTCHKINF_16 0x16 +#define EVENTCHKINF_SPOKE_TO_CHILD_MALON_AT_RANCH 0x15 +#define EVENTCHKINF_INVITED_TO_SING_WITH_CHILD_MALON 0x16 #define EVENTCHKINF_EPONA_OBTAINED 0x18 -#define EVENTCHKINF_1B 0x1B +#define EVENTCHKINF_RENTED_HORSE_FROM_INGO 0x1B #define EVENTCHKINF_SPOKE_TO_MIDO_AFTER_DEKU_TREES_DEATH 0x1C #define EVENTCHKINF_1D 0x1D #define EVENTCHKINF_1E 0x1E @@ -405,7 +405,7 @@ typedef enum { #define EVENTCHKINF_38 0x38 #define EVENTCHKINF_39 0x39 #define EVENTCHKINF_3A 0x3A -#define EVENTCHKINF_3B 0x3B +#define EVENTCHKINF_BEGAN_NABOORU_BATTLE 0x3B #define EVENTCHKINF_3C 0x3C // 0x40 @@ -417,21 +417,21 @@ typedef enum { #define EVENTCHKINF_41 0x41 #define EVENTCHKINF_42 0x42 #define EVENTCHKINF_43 0x43 -#define EVENTCHKINF_45 0x45 +#define EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL 0x45 #define EVENTCHKINF_48 0x48 #define EVENTCHKINF_49 0x49 #define EVENTCHKINF_4A 0x4A -#define EVENTCHKINF_4B 0x4B +#define EVENTCHKINF_OPENED_THE_DOOR_OF_TIME 0x4B #define EVENTCHKINF_4C 0x4C #define EVENTCHKINF_4D 0x4D #define EVENTCHKINF_4E 0x4E -#define EVENTCHKINF_4F 0x4F +#define EVENTCHKINF_ENTERED_MASTER_SWORD_CHAMBER 0x4F #define EVENTCHKINF_50 0x50 #define EVENTCHKINF_51 0x51 #define EVENTCHKINF_52 0x52 #define EVENTCHKINF_54 0x54 #define EVENTCHKINF_55 0x55 -#define EVENTCHKINF_59 0x59 +#define EVENTCHKINF_LEARNED_ZELDAS_LULLABY 0x59 #define EVENTCHKINF_5A 0x5A #define EVENTCHKINF_5B 0x5B #define EVENTCHKINF_5C 0x5C @@ -449,21 +449,21 @@ typedef enum { #define EVENTCHKINF_6E 0x6E #define EVENTCHKINF_6F 0x6F -#define EVENTCHKINF_70 0x70 -#define EVENTCHKINF_71 0x71 -#define EVENTCHKINF_72 0x72 -#define EVENTCHKINF_73 0x73 -#define EVENTCHKINF_74 0x74 -#define EVENTCHKINF_75 0x75 -#define EVENTCHKINF_76 0x76 -#define EVENTCHKINF_77 0x77 -#define EVENTCHKINF_78 0x78 +#define EVENTCHKINF_BEGAN_GOHMA_BATTLE 0x70 +#define EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE 0x71 +#define EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE 0x72 +#define EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE 0x73 +#define EVENTCHKINF_BEGAN_MORPHA_BATTLE 0x74 +#define EVENTCHKINF_BEGAN_TWINROVA_BATTLE 0x75 +#define EVENTCHKINF_BEGAN_BARINA_BATTLE 0x76 +#define EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE 0x77 +#define EVENTCHKINF_BEGAN_GANONDORF_BATTLE 0x78 #define EVENTCHKINF_80 0x80 #define EVENTCHKINF_82 0x82 #define EVENTCHKINF_8C 0x8C #define EVENTCHKINF_8D 0x8D #define EVENTCHKINF_8E 0x8E -#define EVENTCHKINF_8F 0x8F +#define EVENTCHKINF_PAID_BACK_BUNNY_HOOD_FEE 0x8F // 0x90-0x93 // carpenters freed from the gerudo @@ -479,45 +479,45 @@ typedef enum { #define GET_EVENTCHKINF_CARPENTERS_FREE_ALL() \ CHECK_FLAG_ALL(gSaveContext.eventChkInf[EVENTCHKINF_CARPENTERS_FREE_INDEX], EVENTCHKINF_CARPENTERS_FREE_MASK_ALL) -#define EVENTCHKINF_94 0x94 +#define EVENTCHKINF_SPOKE_TO_NABOORU_IN_SPIRIT_TEMPLE 0x94 #define EVENTCHKINF_95 0x95 #define EVENTCHKINF_96 0x96 #define EVENTCHKINF_9C 0x9C -#define EVENTCHKINF_A0 0xA0 -#define EVENTCHKINF_A1 0xA1 -#define EVENTCHKINF_A3 0xA3 -#define EVENTCHKINF_A4 0xA4 -#define EVENTCHKINF_A5 0xA5 -#define EVENTCHKINF_A6 0xA6 -#define EVENTCHKINF_A7 0xA7 -#define EVENTCHKINF_A8 0xA8 +#define EVENTCHKINF_ENTERED_HYRULE_FIELD 0xA0 +#define EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_TRAIL 0xA1 +#define EVENTCHKINF_ENTERED_KAKARIKO_VILLAGE 0xA3 +#define EVENTCHKINF_ENTERED_ZORAS_DOMAIN 0xA4 +#define EVENTCHKINF_ENTERED_HYRULE_CASTLE 0xA5 +#define EVENTCHKINF_ENTERED_GORON_CITY 0xA6 +#define EVENTCHKINF_ENTERED_TEMPLE_OF_TIME 0xA7 +#define EVENTCHKINF_ENTERED_DEKU_TREE 0xA8 #define EVENTCHKINF_A9 0xA9 #define EVENTCHKINF_AA 0xAA #define EVENTCHKINF_AC 0xAC #define EVENTCHKINF_AD 0xAD -#define EVENTCHKINF_B0 0xB0 -#define EVENTCHKINF_B1 0xB1 -#define EVENTCHKINF_B2 0xB2 -#define EVENTCHKINF_B3 0xB3 -#define EVENTCHKINF_B4 0xB4 -#define EVENTCHKINF_B5 0xB5 -#define EVENTCHKINF_B6 0xB6 -#define EVENTCHKINF_B7 0xB7 -#define EVENTCHKINF_B8 0xB8 -#define EVENTCHKINF_B9 0xB9 -#define EVENTCHKINF_BA 0xBA +#define EVENTCHKINF_ENTERED_DODONGOS_CAVERN 0xB0 +#define EVENTCHKINF_ENTERED_LAKE_HYLIA 0xB1 +#define EVENTCHKINF_ENTERED_GERUDO_VALLEY 0xB2 +#define EVENTCHKINF_ENTERED_GERUDOS_FORTRESS 0xB3 +#define EVENTCHKINF_ENTERED_LON_LON_RANCH 0xB4 +#define EVENTCHKINF_ENTERED_JABU_JABUS_BELLY 0xB5 +#define EVENTCHKINF_ENTERED_GRAVEYARD 0xB6 +#define EVENTCHKINF_ENTERED_ZORAS_FOUNTAIN 0xB7 +#define EVENTCHKINF_ENTERED_DESERT_COLOSSUS 0xB8 +#define EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER 0xB9 +#define EVENTCHKINF_ENTERED_GANONS_CASTLE_EXTERIOR 0xBA #define EVENTCHKINF_BB 0xBB #define EVENTCHKINF_BC 0xBC #define EVENTCHKINF_BD 0xBD #define EVENTCHKINF_BE 0xBE #define EVENTCHKINF_BF 0xBF -#define EVENTCHKINF_C0 0xC0 +#define EVENTCHKINF_NABOORU_ORDERED_TO_FIGHT_BY_TWINROVA 0xC0 #define EVENTCHKINF_C1 0xC1 #define EVENTCHKINF_C3 0xC3 -#define EVENTCHKINF_C4 0xC4 -#define EVENTCHKINF_C5 0xC5 +#define EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS 0xC4 +#define EVENTCHKINF_SHEIK_SPAWNED_AT_MASTER_SWORD_PEDESTAL 0xC5 #define EVENTCHKINF_C6 0xC6 -#define EVENTCHKINF_C7 0xC7 +#define EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO 0xC7 #define EVENTCHKINF_C8 0xC8 #define EVENTCHKINF_C9 0xC9 @@ -617,7 +617,7 @@ typedef enum { * SaveContext.infTable */ -#define INFTABLE_00 0x00 +#define INFTABLE_GREETED_BY_SARIA 0x00 #define INFTABLE_01 0x01 #define INFTABLE_03 0x03 #define INFTABLE_05 0x05 @@ -646,24 +646,24 @@ typedef enum { #define INFTABLE_6A 0x6A #define INFTABLE_6C 0x6C #define INFTABLE_71 0x71 -#define INFTABLE_76 0x76 -#define INFTABLE_77 0x77 +#define INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD 0x76 +#define INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK 0x77 #define INFTABLE_TALKED_TO_TALON_IN_RANCH_HOUSE 0x7E -#define INFTABLE_84 0x84 -#define INFTABLE_85 0x85 -#define INFTABLE_8B 0x8B +#define INFTABLE_MET_CHILD_MALON_AT_CASTLE_OR_MARKET 0x84 +#define INFTABLE_CHILD_MALON_SAID_EPONA_WAS_AFRAID_OF_YOU 0x85 +#define INFTABLE_ENTERED_HYRULE_CASTLE 0x8B #define INFTABLE_8C 0x8C #define INFTABLE_8D 0x8D #define INFTABLE_8E 0x8E #define INFTABLE_94 0x94 #define INFTABLE_97 0x97 -#define INFTABLE_9A 0x9A +#define INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT 0x9A #define INFTABLE_A2 0xA2 #define INFTABLE_AB 0xAB #define INFTABLE_B0 0xB0 #define INFTABLE_B1 0xB1 #define INFTABLE_B4 0xB4 -#define INFTABLE_B6 0xB6 +#define INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET 0xB6 #define INFTABLE_B7 0xB7 #define INFTABLE_B8 0xB8 #define INFTABLE_B9 0xB9 @@ -705,7 +705,7 @@ typedef enum { #define INFTABLE_SPOKE_TO_GORON_LINK 0x10E #define INFTABLE_10F 0x10F #define INFTABLE_113 0x113 -#define INFTABLE_11A 0x11A +#define INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE 0x11A #define INFTABLE_11E 0x11E #define INFTABLE_124 0x124 #define INFTABLE_129 0x129 @@ -713,10 +713,10 @@ typedef enum { #define INFTABLE_138 0x138 #define INFTABLE_139 0x139 #define INFTABLE_140 0x140 -#define INFTABLE_141 0x141 -#define INFTABLE_142 0x142 +#define INFTABLE_RUTO_IN_JJ_MEET_RUTO 0x141 +#define INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME 0x142 #define INFTABLE_143 0x143 -#define INFTABLE_144 0x144 +#define INFTABLE_RUTO_IN_JJ_WANTS_TO_BE_TOSSED_TO_SAPPHIRE 0x144 #define INFTABLE_145 0x145 #define INFTABLE_146 0x146 #define INFTABLE_147 0x147 @@ -739,7 +739,7 @@ typedef enum { #define INFTABLE_191 0x191 #define INFTABLE_192 0x192 #define INFTABLE_193 0x193 -#define INFTABLE_195 0x195 +#define INFTABLE_SPOKE_TO_KAEPORA_IN_LAKE_HYLIA 0x195 #define INFTABLE_196 0x196 #define INFTABLE_197 0x197 #define INFTABLE_198 0x198 diff --git a/soh/soh/Enhancements/randomizer/savefile.cpp b/soh/soh/Enhancements/randomizer/savefile.cpp index d286017a8eb..4b546e1f013 100644 --- a/soh/soh/Enhancements/randomizer/savefile.cpp +++ b/soh/soh/Enhancements/randomizer/savefile.cpp @@ -2,7 +2,6 @@ #include "soh/OTRGlobals.h" #include "soh/Enhancements/game-interactor/GameInteractor.h" - extern "C" { #include #include "variables.h" @@ -214,68 +213,68 @@ extern "C" void Randomizer_InitSaveFile() { gSaveContext.pendingIceTrapCount = 0; // Set Cutscene flags and texts to skip them - Flags_SetInfTable(INFTABLE_00); // greeted by saria - Flags_SetEventChkInf(EVENTCHKINF_02); // spoke to mido - Flags_SetEventChkInf(EVENTCHKINF_0C); // met deku tree - Flags_SetEventChkInf(EVENTCHKINF_05); // deku tree opened mouth - Flags_SetInfTable(INFTABLE_195); // spoke to kaepora in lake hylia - Flags_SetEventChkInf(EVENTCHKINF_4F); // entered master sword chamber - Flags_SetEventChkInf(EVENTCHKINF_45); // master sword pulled - Flags_SetEventChkInf(EVENTCHKINF_C5); // sheik at tot pedestal - Flags_SetEventChkInf(EVENTCHKINF_C4); // returned to tot with medallions - Flags_SetEventChkInf(EVENTCHKINF_1B); // Rented horse from ingo - Flags_SetInfTable(INFTABLE_B6); // spoke to poe collector in ruined market - Flags_SetEventChkInf(EVENTCHKINF_C7); // watched ganon's castle collapse / caught by gerudo - Flags_SetEventChkInf(EVENTCHKINF_94); // spoke to nabooru as child - - Flags_SetInfTable(INFTABLE_84); // met malon in castle or market - Flags_SetEventChkInf(EVENTCHKINF_10); // spoke to malon in castle or market - Flags_SetEventChkInf(EVENTCHKINF_12); // spoke to ingo before talon returns - Flags_SetEventChkInf(EVENTCHKINF_15); // spoke to child malon at ranch - Flags_SetEventChkInf(EVENTCHKINF_16); // invited to sing with child malon - Flags_SetInfTable(INFTABLE_85); // child malon said epona was afraid of you - Flags_SetInfTable(INFTABLE_9A); // spoke to ingo once as adult + Flags_SetInfTable(INFTABLE_GREETED_BY_SARIA); + Flags_SetEventChkInf(EVENTCHKINF_FIRST_SPOKE_TO_MIDO); + Flags_SetEventChkInf(EVENTCHKINF_MET_DEKU_TREE); + Flags_SetEventChkInf(EVENTCHKINF_DEKU_TREE_OPENED_MOUTH); + Flags_SetInfTable(INFTABLE_SPOKE_TO_KAEPORA_IN_LAKE_HYLIA); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_MASTER_SWORD_CHAMBER); + Flags_SetEventChkInf(EVENTCHKINF_PULLED_MASTER_SWORD_FROM_PEDESTAL); + Flags_SetEventChkInf(EVENTCHKINF_SHEIK_SPAWNED_AT_MASTER_SWORD_PEDESTAL); + Flags_SetEventChkInf(EVENTCHKINF_RETURNED_TO_TEMPLE_OF_TIME_WITH_ALL_MEDALLIONS); + Flags_SetEventChkInf(EVENTCHKINF_RENTED_HORSE_FROM_INGO); + Flags_SetInfTable(INFTABLE_SPOKE_TO_POE_COLLECTOR_IN_RUINED_MARKET); + Flags_SetEventChkInf(EVENTCHKINF_WATCHED_GANONS_CASTLE_COLLAPSE_CAUGHT_BY_GERUDO); + Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_NABOORU_IN_SPIRIT_TEMPLE); + + Flags_SetInfTable(INFTABLE_MET_CHILD_MALON_AT_CASTLE_OR_MARKET); + Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_CHILD_MALON_AT_CASTLE_OR_MARKET); + Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_INGO_AT_RANCH_BEFORE_TALON_RETURNS); + Flags_SetEventChkInf(EVENTCHKINF_SPOKE_TO_CHILD_MALON_AT_RANCH); + Flags_SetEventChkInf(EVENTCHKINF_INVITED_TO_SING_WITH_CHILD_MALON); + Flags_SetInfTable(INFTABLE_CHILD_MALON_SAID_EPONA_WAS_AFRAID_OF_YOU); + Flags_SetInfTable(INFTABLE_SPOKE_TO_INGO_ONCE_AS_ADULT); // Ruto already met in jabu and spawns down the hole immediately - Flags_SetInfTable(INFTABLE_141); // Meet ruto - Flags_SetInfTable(INFTABLE_142); // talk to ruto first time - Flags_SetInfTable(INFTABLE_144); // ruto asked to be thrown at sapphire stone + Flags_SetInfTable(INFTABLE_RUTO_IN_JJ_MEET_RUTO); + Flags_SetInfTable(INFTABLE_RUTO_IN_JJ_TALK_FIRST_TIME); + Flags_SetInfTable(INFTABLE_RUTO_IN_JJ_WANTS_TO_BE_TOSSED_TO_SAPPHIRE); // Skip cutscenes before Nabooru fight - Flags_SetEventChkInf(EVENTCHKINF_3B); // began nabooru battle - Flags_SetEventChkInf(EVENTCHKINF_C0); // nabooru ordered to fight + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_NABOORU_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_NABOORU_ORDERED_TO_FIGHT_BY_TWINROVA); // Skip boss cutscenes - Flags_SetEventChkInf(EVENTCHKINF_70); // gohma - Flags_SetEventChkInf(EVENTCHKINF_71); // dodongo - Flags_SetEventChkInf(EVENTCHKINF_72); // phantom ganon - Flags_SetEventChkInf(EVENTCHKINF_73); // volvagia - Flags_SetEventChkInf(EVENTCHKINF_74); // morpha - Flags_SetEventChkInf(EVENTCHKINF_75); // twinrova - Flags_SetEventChkInf(EVENTCHKINF_76); // barinade - Flags_SetEventChkInf(EVENTCHKINF_77); // bongo bongo + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_GOHMA_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_KING_DODONGO_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_PHANTOM_GANON_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_VOLVAGIA_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_MORPHA_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_TWINROVA_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_BARINA_BATTLE); + Flags_SetEventChkInf(EVENTCHKINF_BEGAN_BONGO_BONGO_BATTLE); // Entered areas - Flags_SetEventChkInf(EVENTCHKINF_A0); // entered hyrule field - Flags_SetEventChkInf(EVENTCHKINF_A1); // entered death mountain trail - Flags_SetEventChkInf(EVENTCHKINF_A3); // entered kakariko village - Flags_SetEventChkInf(EVENTCHKINF_A4); // entered zora's domain - Flags_SetEventChkInf(EVENTCHKINF_A5); // entered hyrule castle - Flags_SetEventChkInf(EVENTCHKINF_A6); // entered goron city - Flags_SetEventChkInf(EVENTCHKINF_A7); // entered temple of time - Flags_SetEventChkInf(EVENTCHKINF_A8); // entered deku tree - Flags_SetEventChkInf(EVENTCHKINF_B0); // entered dodongo's cavern - Flags_SetEventChkInf(EVENTCHKINF_B1); // entered lake hylia - Flags_SetEventChkInf(EVENTCHKINF_B2); // entered gerudo valley - Flags_SetEventChkInf(EVENTCHKINF_B3); // entered gerudo's fortress - Flags_SetEventChkInf(EVENTCHKINF_B4); // entered lon lon ranch - Flags_SetEventChkInf(EVENTCHKINF_B5); // entered jabu-jabu's belly - Flags_SetEventChkInf(EVENTCHKINF_B6); // entered graveyard - Flags_SetEventChkInf(EVENTCHKINF_B7); // entered zora's fountain - Flags_SetEventChkInf(EVENTCHKINF_B8); // entered desert colossus - Flags_SetEventChkInf(EVENTCHKINF_B9); // entered death mountain crater - Flags_SetEventChkInf(EVENTCHKINF_BA); // entered ganon's castle (exterior) - Flags_SetInfTable(INFTABLE_8B); // entered hyrule castle + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_HYRULE_FIELD); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_TRAIL); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_KAKARIKO_VILLAGE); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_ZORAS_DOMAIN); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_HYRULE_CASTLE); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GORON_CITY); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_TEMPLE_OF_TIME); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DEKU_TREE); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DODONGOS_CAVERN); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_LAKE_HYLIA); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GERUDO_VALLEY); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GERUDOS_FORTRESS); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_LON_LON_RANCH); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_JABU_JABUS_BELLY); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GRAVEYARD); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_ZORAS_FOUNTAIN); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DESERT_COLOSSUS); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_DEATH_MOUNTAIN_CRATER); + Flags_SetEventChkInf(EVENTCHKINF_ENTERED_GANONS_CASTLE_EXTERIOR); + Flags_SetInfTable(INFTABLE_ENTERED_HYRULE_CASTLE); // skip the z target talk instructions by the kokiri shop gSaveContext.sceneFlags[SCENE_SPOT04].swch |= (1 << 0x1F); @@ -292,7 +291,7 @@ extern "C" void Randomizer_InitSaveFile() { gSaveContext.sceneFlags[SCENE_SPOT15].swch |= (1 << 0x5); // hyrule castle kaepora if (!Randomizer_GetSettingValue(RSK_ENABLE_GLITCH_CUTSCENES)) { - Flags_SetInfTable(INFTABLE_11A); // Darunia in Fire Temple + Flags_SetInfTable(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE); // Darunia in Fire Temple } // Give Link's pocket item @@ -336,15 +335,15 @@ extern "C" void Randomizer_InitSaveFile() { StartingItemGive(getItemEntry); // malon/talon back at ranch - Flags_SetEventChkInf(EVENTCHKINF_12); // obtained pocket egg + Flags_SetEventChkInf(EVENTCHKINF_OBTAINED_POCKET_EGG); Flags_SetEventChkInf(EVENTCHKINF_TALON_WOKEN_IN_CASTLE); Flags_SetEventChkInf(EVENTCHKINF_TALON_RETURNED_FROM_CASTLE); - // Set "Got Zelda's Letter" flag. Also ensures Saria is back at SFM. TODO: Is this flag used for anything else? + // Set "Got Zelda's Letter" flag. Also ensures Saria is back at SFM. Flags_SetEventChkInf(EVENTCHKINF_OBTAINED_ZELDAS_LETTER); // Got item from impa - Flags_SetEventChkInf(EVENTCHKINF_59); // learned zelda's lullaby + Flags_SetEventChkInf(EVENTCHKINF_LEARNED_ZELDAS_LULLABY); gSaveContext.sceneFlags[SCENE_SPOT15].swch |= (1 << 0x4); // move milk crates in hyrule castle to moat @@ -388,12 +387,12 @@ extern "C" void Randomizer_InitSaveFile() { int doorOfTime = Randomizer_GetSettingValue(RSK_DOOR_OF_TIME); switch (doorOfTime) { case RO_DOOROFTIME_OPEN: - Flags_SetEventChkInf(EVENTCHKINF_4B); // opened the door of time + Flags_SetEventChkInf(EVENTCHKINF_OPENED_THE_DOOR_OF_TIME); break; } if (Randomizer_GetSettingValue(RSK_KAK_GATE) == RO_KAK_GATE_OPEN) { - Flags_SetInfTable(INFTABLE_76); // show zelda's letter to gate gaurd + Flags_SetInfTable(INFTABLE_SHOWED_ZELDAS_LETTER_TO_GATE_GUARD); } if (Randomizer_GetSettingValue(RSK_GERUDO_FORTRESS) == RO_GF_FAST || @@ -429,13 +428,13 @@ extern "C" void Randomizer_InitSaveFile() { // complete mask quest if (Randomizer_GetSettingValue(RSK_COMPLETE_MASK_QUEST)) { - Flags_SetInfTable(INFTABLE_77); // Soldier Wears Keaton Mask + Flags_SetInfTable(INFTABLE_GATE_GUARD_PUT_ON_KEATON_MASK); + Flags_SetEventChkInf(EVENTCHKINF_PAID_BACK_BUNNY_HOOD_FEE); gSaveContext.itemGetInf[3] |= 0x100; // Sold Keaton Mask gSaveContext.itemGetInf[3] |= 0x200; // Sold Skull Mask gSaveContext.itemGetInf[3] |= 0x400; // Sold Spooky Mask gSaveContext.itemGetInf[3] |= 0x800; // bunny hood related gSaveContext.itemGetInf[3] |= 0x8000; // Obtained Mask of Truth - Flags_SetEventChkInf(EVENTCHKINF_8F); // sold all masks } SetStartingItems();