diff --git a/soh/soh/Enhancements/randomizer/location_access/overworld/sacred_forest_meadow.cpp b/soh/soh/Enhancements/randomizer/location_access/overworld/sacred_forest_meadow.cpp index 11f0194231..de5206f9d9 100644 --- a/soh/soh/Enhancements/randomizer/location_access/overworld/sacred_forest_meadow.cpp +++ b/soh/soh/Enhancements/randomizer/location_access/overworld/sacred_forest_meadow.cpp @@ -5,13 +5,16 @@ using namespace Rando; void RegionTable_Init_SacredForestMeadow() { // clang-format off - areaTable[RR_SFM_ENTRYWAY] = Region("SFM Entryway", SCENE_SACRED_FOREST_MEADOW, {}, { + areaTable[RR_SFM_ENTRYWAY] = Region("SFM Entryway", SCENE_SACRED_FOREST_MEADOW, { + //Events + EVENT_ACCESS(LOGIC_OPEN_SFM_GATE, logic->IsChild && logic->CanKillEnemy(RE_WOLFOS)), + }, { //Locations LOCATION(RC_SFM_WONDER_ENTRANCE, true), }, { //Exits ENTRANCE(RR_LW_BEYOND_MIDO, true), - ENTRANCE(RR_SACRED_FOREST_MEADOW, logic->IsAdult || logic->CanKillEnemy(RE_WOLFOS)), + ENTRANCE(RR_SACRED_FOREST_MEADOW, logic->IsAdult || logic->Get(LOGIC_OPEN_SFM_GATE)), ENTRANCE(RR_SFM_WOLFOS_GROTTO, logic->CanOpenBombGrotto()), }); @@ -52,7 +55,7 @@ void RegionTable_Init_SacredForestMeadow() { }, { //Exits ENTRANCE(RR_FOREST_TEMPLE_ENTRYWAY, logic->CanUse(RG_HOOKSHOT)), - ENTRANCE(RR_SFM_ENTRYWAY, true), + ENTRANCE(RR_SFM_ENTRYWAY, logic->IsAdult || logic->Get(LOGIC_OPEN_SFM_GATE)), // adult can jump up, but it's a trick. being hit directly by club moblin while wearing hover boots also works, but relies on coming from LW ENTRANCE(RR_SFM_ABOVE_MAZE, logic->CanClimbLadder() || (logic->IsAdult && logic->CanGroundJump())), ENTRANCE(RR_SFM_STORMS_GROTTO, logic->CanOpenStormsGrotto()), diff --git a/soh/soh/Enhancements/randomizer/randomizerEnums/LogicVal.h b/soh/soh/Enhancements/randomizer/randomizerEnums/LogicVal.h index fc35b4bca5..5626983a8c 100644 --- a/soh/soh/Enhancements/randomizer/randomizerEnums/LogicVal.h +++ b/soh/soh/Enhancements/randomizer/randomizerEnums/LogicVal.h @@ -208,6 +208,7 @@ RANDO_ENUM_ITEM(LOGIC_COULD_PLAY_BOWLING) RANDO_ENUM_ITEM(LOGIC_BIG_POE_KILL) RANDO_ENUM_ITEM(LOGIC_BUILD_RAINBOW_BRIDGE) RANDO_ENUM_ITEM(LOGIC_SHOWED_MIDO_SWORD_AND_SHIELD) +RANDO_ENUM_ITEM(LOGIC_OPEN_SFM_GATE) RANDO_ENUM_ITEM(LOGIC_TH_COULD_FREE_1_TORCH_CARPENTER) RANDO_ENUM_ITEM(LOGIC_TH_COULD_FREE_DOUBLE_CELL_CARPENTER) RANDO_ENUM_ITEM(LOGIC_TH_COULD_FREE_DEAD_END_CARPENTER)