Fix TOT_MASTER_SWORD when the master sword is stated with but not shuffled. (#5705)
* Fix TOT_MASTER_SWORD when the master sword is stated with but not shuffled. * remove RC_MASTER_SWORD_PEDESTAL
This commit is contained in:
@@ -170,7 +170,7 @@ void Context::GenerateLocationPool() {
|
||||
// TODO: Exclude checks for some of the older shuffles from the pool too i.e. Frog Songs, Scrubs, etc.)
|
||||
if (location.GetRandomizerCheck() == RC_UNKNOWN_CHECK ||
|
||||
location.GetRandomizerCheck() == RC_TRIFORCE_COMPLETED || // already in pool
|
||||
(location.GetRandomizerCheck() == RC_MASTER_SWORD_PEDESTAL &&
|
||||
(location.GetRandomizerCheck() == RC_TOT_MASTER_SWORD &&
|
||||
mOptions[RSK_SHUFFLE_MASTER_SWORD].Is(RO_GENERIC_OFF)) ||
|
||||
(location.GetRandomizerCheck() == RC_KAK_100_GOLD_SKULLTULA_REWARD &&
|
||||
mOptions[RSK_SHUFFLE_100_GS_REWARD].Is(RO_GENERIC_OFF)) ||
|
||||
|
||||
@@ -884,7 +884,7 @@ void RandomizerOnVanillaBehaviorHandler(GIVanillaBehavior id, bool* should, va_l
|
||||
break;
|
||||
}
|
||||
case VB_GIVE_ITEM_MASTER_SWORD:
|
||||
if (RAND_GET_OPTION(RSK_SHUFFLE_MASTER_SWORD)) {
|
||||
if (RAND_GET_OPTION(RSK_SHUFFLE_MASTER_SWORD) || RAND_GET_OPTION(RSK_STARTING_MASTER_SWORD)) {
|
||||
*should = false;
|
||||
} else {
|
||||
*should = true;
|
||||
|
||||
@@ -2609,7 +2609,6 @@ typedef enum {
|
||||
|
||||
RC_PIERRE,
|
||||
RC_DELIVER_RUTOS_LETTER,
|
||||
RC_MASTER_SWORD_PEDESTAL,
|
||||
RC_KF_DEKU_TREE_LEFT_GOSSIP_STONE,
|
||||
RC_KF_DEKU_TREE_RIGHT_GOSSIP_STONE,
|
||||
RC_KF_GOSSIP_STONE,
|
||||
@@ -4902,7 +4901,6 @@ typedef enum {
|
||||
RHT_GANONS_CASTLE_MQ_DEKU_SCRUB_RIGHT,
|
||||
RHT_GANONS_TOWER_BOSS_KEY_CHEST,
|
||||
RHT_DELIVER_RUTOS_LETTER,
|
||||
RHT_MASTER_SWORD_PEDESTAL,
|
||||
// Beehives
|
||||
RHT_BEEHIVE_CHEST_GROTTO,
|
||||
RHT_BEEHIVE_COW_GROTTO,
|
||||
|
||||
@@ -2571,7 +2571,7 @@ void Context::FinalizeSettings(const std::set<RandomizerCheck>& excludedLocation
|
||||
}
|
||||
if (!mOptions[RSK_SHUFFLE_MASTER_SWORD]) {
|
||||
if (mOptions[RSK_STARTING_MASTER_SWORD]) {
|
||||
this->GetItemLocation(RC_MASTER_SWORD_PEDESTAL)->SetExcludedOption(1);
|
||||
this->GetItemLocation(RC_TOT_MASTER_SWORD)->SetExcludedOption(1);
|
||||
}
|
||||
}
|
||||
if (!mOptions[RSK_SHUFFLE_OCARINA]) {
|
||||
|
||||
Reference in New Issue
Block a user