summaryrefslogtreecommitdiff
path: root/soh
diff options
context:
space:
mode:
authorPhilip Dubé <159546+serprex@users.noreply.github.com>2026-05-29 02:24:54 +0000
committerGitHub <noreply@github.com>2026-05-29 02:24:54 +0000
commit5bccc8a340915722d05b007ab58cb4d15bd320cd (patch)
treead5bdd455a7987e0b70f6a0d0f9d99a3f498d836 /soh
parentdc4b27d65a8e09623110127a3478f0917250449e (diff)
avoid ganon's castle blue warp dropping Link in lava (#6647)
Diffstat (limited to 'soh')
-rw-r--r--soh/soh/Enhancements/randomizer/randomizer_entrance.c23
1 files changed, 12 insertions, 11 deletions
diff --git a/soh/soh/Enhancements/randomizer/randomizer_entrance.c b/soh/soh/Enhancements/randomizer/randomizer_entrance.c
index 0154cd99f..f1a70ab9c 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) {