diff --git a/soh/soh/Enhancements/randomizer/3drando/fill.cpp b/soh/soh/Enhancements/randomizer/3drando/fill.cpp index 20ea61f15..7d166ef80 100644 --- a/soh/soh/Enhancements/randomizer/3drando/fill.cpp +++ b/soh/soh/Enhancements/randomizer/3drando/fill.cpp @@ -295,8 +295,8 @@ std::vector GetAccessibleLocations(const std::vector& allowe if (mode == SearchMode::GeneratePlaythrough && exit.IsShuffled() && !exit.IsAddedToPool() && !noRandomEntrances) { entranceSphere.push_back(&exit); exit.AddToPool(); - // Don't list a coupled entrance from both directions - if (exit.GetReplacement()->GetReverse() != nullptr && !Settings::DecoupleEntrances) { + // Don't list a two-way coupled entrance from both directions + if (exit.GetReverse() != nullptr && exit.GetReplacement()->GetReverse() != nullptr && !Settings::DecoupleEntrances) { exit.GetReplacement()->GetReverse()->AddToPool(); } }