diff options
| author | Garrett Cox <garrettjcox@gmail.com> | 2024-11-11 10:26:35 -0600 |
|---|---|---|
| committer | Garrett Cox <garrettjcox@gmail.com> | 2024-11-11 10:26:35 -0600 |
| commit | f96d211b3039f0b980341e1810df531becc70e9d (patch) | |
| tree | 90170f218c008a6e60758220a01be89aa5b7c9a3 | |
| parent | 1a95366dfe378d032e251cbf30d226bda232f8e9 (diff) | |
Fix an issue where all checks were marked as shuffled in glitchless and warppoint being broken in rando
| -rw-r--r-- | mm/2s2h/DeveloperTools/WarpPoint.cpp | 1 | ||||
| -rw-r--r-- | mm/2s2h/Rando/Logic/GlitchlessLogic.cpp | 6 |
2 files changed, 5 insertions, 2 deletions
diff --git a/mm/2s2h/DeveloperTools/WarpPoint.cpp b/mm/2s2h/DeveloperTools/WarpPoint.cpp index 8c46654ee..827e2181a 100644 --- a/mm/2s2h/DeveloperTools/WarpPoint.cpp +++ b/mm/2s2h/DeveloperTools/WarpPoint.cpp @@ -51,6 +51,7 @@ void Warp() { // These two lines allow randomizer to be used with BootToWarpPoint. Not sure how reliable this is, might remove GameInteractor_ExecuteOnSaveInit(gSaveContext.fileNum); GameInteractor_ExecuteOnSaveLoad(gSaveContext.fileNum); + gSaveContext.save.entrance = entrance; } else { // The else case, and the rest of this function is primarly relevant code copied from Play_SetRespawnData and // func_80169EFC, minus the parts that copy scene flags to scene we are warping to (this is obviously diff --git a/mm/2s2h/Rando/Logic/GlitchlessLogic.cpp b/mm/2s2h/Rando/Logic/GlitchlessLogic.cpp index 2d3194dfd..9a2eacf9a 100644 --- a/mm/2s2h/Rando/Logic/GlitchlessLogic.cpp +++ b/mm/2s2h/Rando/Logic/GlitchlessLogic.cpp @@ -179,8 +179,10 @@ void ApplyGlitchlessLogicToSaveContext() { memcpy(&gSaveContext, &copiedSaveContext, sizeof(SaveContext)); for (auto& [randoCheckId, randoPoolEntry] : randoCheckPool) { - RANDO_SAVE_CHECKS[randoCheckId].randoItemId = randoPoolEntry.placedItemId; - RANDO_SAVE_CHECKS[randoCheckId].shuffled = true; + if (randoPoolEntry.shuffled) { + RANDO_SAVE_CHECKS[randoCheckId].randoItemId = randoPoolEntry.placedItemId; + RANDO_SAVE_CHECKS[randoCheckId].shuffled = true; + } } SPDLOG_INFO("Successfully placed all items in glitchless logic"); |
