Rando: Shuffle Beehives (Rando V3) (#3763)

* Shuffle Beehives

* Address review

* Fix build
This commit is contained in:
Pepe20129 2024-01-14 19:16:32 +01:00 committed by GitHub
commit 080038c39e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 505 additions and 83 deletions

View file

@ -59,6 +59,7 @@ bool showDungeonTokens;
bool showBeans;
bool showScrubs;
bool showMerchants;
bool showBeehives;
bool showCows;
bool showAdultTrade;
bool showKokiriSword;
@ -1091,6 +1092,9 @@ void LoadSettings() {
showMerchants = IS_RANDO ?
OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_MERCHANTS) != RO_SHUFFLE_MERCHANTS_OFF
: true;
showBeehives = IS_RANDO ?
OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_BEEHIVES) == RO_GENERIC_YES
: false;
showCows = IS_RANDO ?
OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_COWS) == RO_GENERIC_YES
: false;
@ -1208,6 +1212,7 @@ bool IsVisibleInCheckTracker(RandomizerCheck rc) {
rc == RC_LW_DEKU_SCRUB_GROTTO_FRONT
) &&
(loc->GetRCType() != RCTYPE_MERCHANT || showMerchants) &&
(loc->GetRCType() != RCTYPE_BEEHIVE || showBeehives) &&
(loc->GetRCType() != RCTYPE_OCARINA || showOcarinas) &&
(loc->GetRCType() != RCTYPE_SKULL_TOKEN || alwaysShowGS ||
(showOverworldTokens && RandomizerCheckObjects::AreaIsOverworld(loc->GetArea())) ||