From c238f074502c3db5b1821e91ba3fbb05f00a15d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philip=20Dub=C3=A9?= <159546+serprex@users.noreply.github.com> Date: Mon, 22 Jun 2026 15:42:56 +0000 Subject: [PATCH] fix regression, lost boss souls from HasItem (#6798) --- soh/soh/Enhancements/randomizer/logic.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/soh/soh/Enhancements/randomizer/logic.cpp b/soh/soh/Enhancements/randomizer/logic.cpp index e51d4943e4..30daebc8ab 100644 --- a/soh/soh/Enhancements/randomizer/logic.cpp +++ b/soh/soh/Enhancements/randomizer/logic.cpp @@ -188,6 +188,19 @@ bool Logic::HasItem(RandomizerGet itemName) { case RG_SKELETON_KEY: case RG_RUTOS_LETTER: return CheckRandoInf(StaticData::RandoGetToRandInf.at(itemName)); + // Boss Souls + case RG_GOHMA_SOUL: + case RG_KING_DODONGO_SOUL: + case RG_BARINADE_SOUL: + case RG_PHANTOM_GANON_SOUL: + case RG_VOLVAGIA_SOUL: + case RG_MORPHA_SOUL: + case RG_BONGO_BONGO_SOUL: + case RG_TWINROVA_SOUL: + return !ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS) || CheckRandoInf(StaticData::RandoGetToRandInf.at(itemName)); + case RG_GANON_SOUL: + return !ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS).Is(RO_BOSS_SOULS_ON_PLUS_GANON) || + CheckRandoInf(StaticData::RandoGetToRandInf.at(itemName)); // Overworld Keys case RG_GUARD_HOUSE_KEY: case RG_MARKET_BAZAAR_KEY: