From 6f8207d3bba7b2e514c6d4bb5793672caccba59e Mon Sep 17 00:00:00 2001 From: inspectredc <78732756+inspectredc@users.noreply.github.com> Date: Tue, 11 Apr 2023 13:15:47 +0100 Subject: [PATCH] Fix: Switch Age No Longer Reloads Start Room (#2679) --- soh/soh/Enhancements/mods.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/soh/soh/Enhancements/mods.cpp b/soh/soh/Enhancements/mods.cpp index 3034be65e..6e6c3c138 100644 --- a/soh/soh/Enhancements/mods.cpp +++ b/soh/soh/Enhancements/mods.cpp @@ -181,9 +181,11 @@ void RegisterSwitchAge() { gSaveContext.nextTransitionType == 255) { GET_PLAYER(gPlayState)->actor.shape.rot.y = playerYaw; GET_PLAYER(gPlayState)->actor.world.pos = playerPos; - func_8009728C(gPlayState, roomCtx, roomNum); //load original room - //func_800973FC(gPlayState, &gPlayState->roomCtx); // commit to room load? - func_80097534(gPlayState, roomCtx); // load map for new room (unloading the previous room) + if (roomNum != roomCtx->curRoom.num) { + func_8009728C(gPlayState, roomCtx, roomNum); //load original room + //func_800973FC(gPlayState, &gPlayState->roomCtx); // commit to room load? + func_80097534(gPlayState, roomCtx); // load map for new room (unloading the previous room) + } warped = false; CVarSetInteger("gSwitchAge", 0); }