diff options
| author | Eblo <7004497+Eblo@users.noreply.github.com> | 2026-04-03 17:21:46 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-03 17:21:46 -0400 |
| commit | 20b09fe5bec303586b8cecf39324827729ef615d (patch) | |
| tree | 775872c4605501a5e8cec99af6e0d8070e610981 | |
| parent | 71d89aa56870471d9a3460762c51a9efbfa00316 (diff) | |
Fix mundane shuffles and ice arrows in GBC (#1618)
| -rw-r--r-- | mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp | 8 | ||||
| -rw-r--r-- | mm/2s2h/Rando/ActorBehavior/ObjTree.cpp | 8 | ||||
| -rw-r--r-- | mm/2s2h/Rando/Logic/Regions/West.cpp | 4 |
3 files changed, 16 insertions, 4 deletions
diff --git a/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp b/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp index 93b7444f6..51b21f497 100644 --- a/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp +++ b/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp @@ -45,11 +45,17 @@ std::map<s8, std::tuple<s16, RandoCheckId>> cowGrottoMap = { // For lone grass actors spawned directly by the scene std::map<std::tuple<s16, s16, s16>, RandoCheckId> enKusaMap = { + // Great Bay Coast (pre-temple clear) { { SCENE_30GYOSON, 0, 110 }, RC_GREAT_BAY_COAST_GRASS_01 }, { { SCENE_30GYOSON, 0, 111 }, RC_GREAT_BAY_COAST_GRASS_02 }, { { SCENE_30GYOSON, 0, 112 }, RC_GREAT_BAY_COAST_GRASS_03 }, { { SCENE_30GYOSON, 0, 113 }, RC_GREAT_BAY_COAST_GRASS_04 }, - { { SCENE_30GYOSON, 0, 114 }, RC_GREAT_BAY_COAST_GRASS_05 }, + // Great Bay Coast (post-temple clear) + { { SCENE_30GYOSON, 0, 117 }, RC_GREAT_BAY_COAST_GRASS_01 }, + { { SCENE_30GYOSON, 0, 115 }, RC_GREAT_BAY_COAST_GRASS_02 }, + { { SCENE_30GYOSON, 0, 118 }, RC_GREAT_BAY_COAST_GRASS_03 }, + { { SCENE_30GYOSON, 0, 116 }, RC_GREAT_BAY_COAST_GRASS_04 }, + { { SCENE_30GYOSON, 0, 114 }, RC_GREAT_BAY_COAST_GRASS_05 }, // Exists in both states // Laundry Pool { { SCENE_ALLEY, 0, 13 }, RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_01 }, { { SCENE_ALLEY, 0, 14 }, RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_02 }, diff --git a/mm/2s2h/Rando/ActorBehavior/ObjTree.cpp b/mm/2s2h/Rando/ActorBehavior/ObjTree.cpp index e5fc513d5..acd6de6dc 100644 --- a/mm/2s2h/Rando/ActorBehavior/ObjTree.cpp +++ b/mm/2s2h/Rando/ActorBehavior/ObjTree.cpp @@ -31,12 +31,18 @@ std::map<std::tuple<s16, s16, s16>, RandoCheckId> treeActorIdMap = { { { SCENE_GORONRACE, 0, 67 }, RC_GORON_RACETRACK_TREE_09 }, { { SCENE_GORONRACE, 0, 68 }, RC_GORON_RACETRACK_TREE_10 }, - // Great Bay Coast + // Great Bay Coast (pre-temple clear) { { SCENE_30GYOSON, 0, 10 }, RC_GREAT_BAY_COAST_TREE_01 }, { { SCENE_30GYOSON, 0, 11 }, RC_GREAT_BAY_COAST_TREE_02 }, { { SCENE_30GYOSON, 0, 12 }, RC_GREAT_BAY_COAST_TREE_03 }, { { SCENE_30GYOSON, 0, 13 }, RC_GREAT_BAY_COAST_TREE_04 }, + // Great Bay Coast (post-temple clear) + { { SCENE_30GYOSON, 0, 31 }, RC_GREAT_BAY_COAST_TREE_01 }, + { { SCENE_30GYOSON, 0, 33 }, RC_GREAT_BAY_COAST_TREE_02 }, + { { SCENE_30GYOSON, 0, 34 }, RC_GREAT_BAY_COAST_TREE_03 }, + { { SCENE_30GYOSON, 0, 32 }, RC_GREAT_BAY_COAST_TREE_04 }, + // Path to Mountain Village { { SCENE_13HUBUKINOMITI, 0, 14 }, RC_PATH_TO_MOUNTAIN_VILLAGE_TREE_01 }, { { SCENE_13HUBUKINOMITI, 0, 15 }, RC_PATH_TO_MOUNTAIN_VILLAGE_TREE_02 }, diff --git a/mm/2s2h/Rando/Logic/Regions/West.cpp b/mm/2s2h/Rando/Logic/Regions/West.cpp index 6ff244133..893e8ed67 100644 --- a/mm/2s2h/Rando/Logic/Regions/West.cpp +++ b/mm/2s2h/Rando/Logic/Regions/West.cpp @@ -177,7 +177,7 @@ static RegisterShipInitFunc initFunc([]() { }; Regions[RR_GREAT_BAY_COAST_MINIGAME_PLATFORMS] = RandoRegion{ .sceneId = SCENE_30GYOSON, .checks = { - CHECK(RC_GREAT_BAY_COAST_FISHERMAN_MINIGAME, RANDO_EVENTS[RE_CLEARED_GREAT_BAY_TEMPLE] && (HAS_ITEM(ITEM_HOOKSHOT) || CAN_USE_MAGIC_ARROW(ICE)) && (BETWEEN(TIME_DAY1_AM_07_00, TIME_NIGHT1_AM_04_00) || BETWEEN(TIME_DAY2_AM_07_00, TIME_NIGHT2_AM_04_00) || BETWEEN(TIME_DAY3_AM_07_00, TIME_NIGHT3_AM_04_00))), + CHECK(RC_GREAT_BAY_COAST_FISHERMAN_MINIGAME, RANDO_EVENTS[RE_CLEARED_GREAT_BAY_TEMPLE] && (HAS_ITEM(ITEM_HOOKSHOT)) && (BETWEEN(TIME_DAY1_AM_07_00, TIME_NIGHT1_AM_04_00) || BETWEEN(TIME_DAY2_AM_07_00, TIME_NIGHT2_AM_04_00) || BETWEEN(TIME_DAY3_AM_07_00, TIME_NIGHT3_AM_04_00))), CHECK(RC_GREAT_BAY_COAST_TREE_01, true), }, .connections = { @@ -200,7 +200,7 @@ static RegisterShipInitFunc initFunc([]() { }, .connections = { CONNECTION(RR_GREAT_BAY_COAST, CAN_USE_ABILITY(SWIM)), - CONNECTION(RR_GREAT_BAY_COAST_MINIGAME_PLATFORMS, RANDO_EVENTS[RE_CLEARED_GREAT_BAY_TEMPLE] && (HAS_ITEM(ITEM_HOOKSHOT) || CAN_USE_MAGIC_ARROW(ICE))), + CONNECTION(RR_GREAT_BAY_COAST_MINIGAME_PLATFORMS, RANDO_EVENTS[RE_CLEARED_GREAT_BAY_TEMPLE] && (HAS_ITEM(ITEM_HOOKSHOT))), }, }; Regions[RR_GREAT_BAY_GREAT_FAIRY_FOUNTAIN] = RandoRegion{ .sceneId = SCENE_YOUSEI_IZUMI, |
