diff --git a/soh/soh/Enhancements/randomizer/randomizer_entrance.c b/soh/soh/Enhancements/randomizer/randomizer_entrance.c index 0154cd99fe..f1a70ab9ce 100644 --- a/soh/soh/Enhancements/randomizer/randomizer_entrance.c +++ b/soh/soh/Enhancements/randomizer/randomizer_entrance.c @@ -700,17 +700,18 @@ void Entrance_OverrideSpawnScene(s32 sceneNum, s32 spawn) { modifiedLinkActorEntry.rot = gPlayState->linkActorEntry->rot; modifiedLinkActorEntry.params = gPlayState->linkActorEntry->params; - if (Randomizer_GetSettingValue(RSK_SHUFFLE_DUNGEON_ENTRANCES) == RO_DUNGEON_ENTRANCE_SHUFFLE_ON_PLUS_GANON) { - // Move Ganon's Castle exit spawn to be on the small ledge near the castle and not over the void - // to prevent Link from falling if the bridge isn't spawned - if (sceneNum == SCENE_OUTSIDE_GANONS_CASTLE && spawn == 1) { - modifiedLinkActorEntry.pos.x = 0xFEA8; - modifiedLinkActorEntry.pos.y = 0x065C; - modifiedLinkActorEntry.pos.z = 0x0290; - modifiedLinkActorEntry.rot.y = 0x0700; - modifiedLinkActorEntry.params = 0x0DFF; // stationary spawn - gPlayState->linkActorEntry = &modifiedLinkActorEntry; - } + // Move Ganon's Castle exit spawn to be on the small ledge near the castle and not over the void + // to prevent Link from falling if the bridge isn't spawned + if (sceneNum == SCENE_OUTSIDE_GANONS_CASTLE && spawn == 1 && + (Randomizer_GetSettingValue(RSK_SHUFFLE_DUNGEON_ENTRANCES) == RO_DUNGEON_ENTRANCE_SHUFFLE_ON_PLUS_GANON || + Randomizer_GetSettingValue(RSK_SHUFFLE_BOSS_ENTRANCES) != RO_BOSS_ROOM_ENTRANCE_SHUFFLE_OFF || + Randomizer_GetSettingValue(RSK_SHUFFLE_GANONS_TOWER_ENTRANCE))) { + modifiedLinkActorEntry.pos.x = 0xFEA8; + modifiedLinkActorEntry.pos.y = 0x065C; + modifiedLinkActorEntry.pos.z = 0x0290; + modifiedLinkActorEntry.rot.y = 0x0700; + modifiedLinkActorEntry.params = 0x0DFF; // stationary spawn + gPlayState->linkActorEntry = &modifiedLinkActorEntry; } if (Randomizer_GetSettingValue(RSK_SHUFFLE_BOSS_ENTRANCES) != RO_BOSS_ROOM_ENTRANCE_SHUFFLE_OFF) {