diff --git a/soh/soh/Enhancements/randomizer/randomizer_check_tracker.cpp b/soh/soh/Enhancements/randomizer/randomizer_check_tracker.cpp index a3fe14fb7..d9dce55c2 100644 --- a/soh/soh/Enhancements/randomizer/randomizer_check_tracker.cpp +++ b/soh/soh/Enhancements/randomizer/randomizer_check_tracker.cpp @@ -1533,50 +1533,50 @@ bool IsCheckShuffled(RandomizerCheck rc) { auto identity = OTRGlobals::Instance->gRandomizer->IdentifyShopItem(loc->GetScene(), loc->GetActorParams() + 1); } if (IS_RANDO && OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_LOGIC_RULES) != RO_LOGIC_VANILLA) { - return (loc->GetArea() != RCAREA_INVALID) && // don't show Invalid locations - (loc->GetRCType() != RCTYPE_GOSSIP_STONE) && // TODO: Don't show hints until tracker supports them - (loc->GetRCType() != RCTYPE_STATIC_HINT) && // TODO: Don't show hints until tracker supports them - (loc->GetRCType() != RCTYPE_CHEST_GAME) && // don't show non final reward chest game checks until we - // support shuffling them - (rc != RC_HC_ZELDAS_LETTER) && // don't show zeldas letter until we support shuffling it - (rc != RC_LINKS_POCKET || showLinksPocket) && - OTRGlobals::Instance->gRandoContext->IsQuestOfLocationActive(rc) && - (loc->GetRCType() != RCTYPE_SHOP || - (showShops && - OTRGlobals::Instance->gRandomizer->IdentifyShopItem(loc->GetScene(), loc->GetActorParams() + 1) - .enGirlAShopItem == 50)) && - (rc != RC_TRIFORCE_COMPLETED) && (rc != RC_GANON) && - (loc->GetRCType() != RCTYPE_SCRUB || showScrubs || - (showMajorScrubs && - (rc == RC_LW_DEKU_SCRUB_NEAR_BRIDGE || // The 3 scrubs that are always randomized - rc == RC_HF_DEKU_SCRUB_GROTTO || rc == RC_LW_DEKU_SCRUB_GROTTO_FRONT))) && - (loc->GetRCType() != RCTYPE_MERCHANT || showMerchants) && - (loc->GetRCType() != RCTYPE_SONG_LOCATION || showSongs) && - (loc->GetRCType() != RCTYPE_BEEHIVE || showBeehives) && - (loc->GetRCType() != RCTYPE_OCARINA || showOcarinas) && - (loc->GetRCType() != RCTYPE_SKULL_TOKEN || alwaysShowGS || - (showOverworldTokens && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || - (showDungeonTokens && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_POT || - (showOverworldPots && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || - (showDungeonPots && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_GRASS || - (showOverworldGrass && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || - (showDungeonGrass && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_CRATE || - (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || - (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_NLCRATE || - (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea()) && - OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_LOGIC_RULES) == RO_LOGIC_NO_LOGIC) || - (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_SMALL_CRATE || - (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || - (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && - (loc->GetRCType() != RCTYPE_TREE || showTrees) && (loc->GetRCType() != RCTYPE_COW || showCows) && - (loc->GetRCType() != RCTYPE_NLTREE || - (showTrees && - OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_LOGIC_RULES) == RO_LOGIC_NO_LOGIC)) && + return (loc->GetArea() != RCAREA_INVALID) && // don't show Invalid locations + (loc->GetRCType() != RCTYPE_GOSSIP_STONE) && // TODO: Don't show hints until tracker supports them + (loc->GetRCType() != RCTYPE_STATIC_HINT) && // TODO: Don't show hints until tracker supports them + (loc->GetRCType() != RCTYPE_CHEST_GAME) && // don't show non final reward chest game checks until we + // support shuffling them + (rc != RC_HC_ZELDAS_LETTER) && // don't show zeldas letter until we support shuffling it + (rc != RC_LINKS_POCKET || showLinksPocket) && + OTRGlobals::Instance->gRandoContext->IsQuestOfLocationActive(rc) && + (loc->GetRCType() != RCTYPE_SHOP || + (showShops && + OTRGlobals::Instance->gRandomizer->IdentifyShopItem(loc->GetScene(), loc->GetActorParams() + 1) + .enGirlAShopItem == 50)) && + (rc != RC_TRIFORCE_COMPLETED) && (rc != RC_GANON) && + (loc->GetRCType() != RCTYPE_SCRUB || showScrubs || + (showMajorScrubs && (rc == RC_LW_DEKU_SCRUB_NEAR_BRIDGE || // The 3 scrubs that are always randomized + rc == RC_HF_DEKU_SCRUB_GROTTO || rc == RC_LW_DEKU_SCRUB_GROTTO_FRONT))) && + (loc->GetRCType() != RCTYPE_MERCHANT || showMerchants) && + (loc->GetRCType() != RCTYPE_SONG_LOCATION || showSongs) && + (loc->GetRCType() != RCTYPE_BEEHIVE || showBeehives) && + (loc->GetRCType() != RCTYPE_OCARINA || showOcarinas) && + (loc->GetRCType() != RCTYPE_SKULL_TOKEN || alwaysShowGS || + (showOverworldTokens && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || + (showDungeonTokens && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_POT || + (showOverworldPots && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || + (showDungeonPots && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_GRASS || + (showOverworldGrass && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || + (showDungeonGrass && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_CRATE || + (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || + (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_NLCRATE || + (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea()) && + OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_LOGIC_RULES) == RO_LOGIC_NO_LOGIC) || + (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_SMALL_CRATE || + (showOverworldCrates && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) || + (showDungeonCrates && RandomizerCheckObjects::AreaIsDungeon(loc->GetArea()))) && + (loc->GetRCType() != RCTYPE_TREE || showTrees) && + (loc->GetRCType() != RCTYPE_NLTREE || + (showTrees && + OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_LOGIC_RULES) == RO_LOGIC_NO_LOGIC)) && + (loc->GetRCType() != RCTYPE_COW || showCows) && (loc->GetRCType() != RCTYPE_FISH || OTRGlobals::Instance->gRandoContext->GetFishsanity()->GetFishLocationIncluded(loc)) && (loc->GetRCType() != RCTYPE_FREESTANDING ||