Move processing for RAND_INF_WEIRD_EGG to trade item processing so it happens whenever you get the egg. (#5382)

Remove RSK check for garden entrance because access is still handled by `CanUse(RG_WEIRD_EGG)`.
This commit is contained in:
Malkierian 2025-04-11 12:49:34 -07:00 committed by GitHub
parent 698fca8862
commit f0f2157a4c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 4 additions and 5 deletions

View file

@ -245,10 +245,6 @@ void RandomizerOnFlagSetHandler(int16_t flagType, int16_t flag) {
Flags_SetRandomizerInf(RAND_INF_ZELDAS_LETTER);
}
if (flagType == FLAG_EVENT_CHECK_INF && flag == EVENTCHKINF_OBTAINED_POCKET_EGG) {
Flags_SetRandomizerInf(RAND_INF_WEIRD_EGG);
}
RandomizerCheck rc = GetRandomizerCheckFromFlag(flagType, flag);
if (rc == RC_UNKNOWN_CHECK)
return;

View file

@ -34,7 +34,7 @@ void RegionTable_Init_CastleGrounds() {
}, {
//Exits
Entrance(RR_CASTLE_GROUNDS, []{return true;}),
Entrance(RR_HC_GARDEN, []{return logic->CanUse(RG_WEIRD_EGG) || !ctx->GetOption(RSK_SHUFFLE_WEIRD_EGG) || (ctx->GetTrickOption(RT_DAMAGE_BOOST_SIMPLE) && logic->HasExplosives() && logic->CanJumpslash());}),
Entrance(RR_HC_GARDEN, []{return logic->CanUse(RG_WEIRD_EGG) || (ctx->GetTrickOption(RT_DAMAGE_BOOST_SIMPLE) && logic->HasExplosives() && logic->CanJumpslash());}),
Entrance(RR_HC_GREAT_FAIRY_FOUNTAIN, []{return logic->BlastOrSmash();}),
Entrance(RR_HC_STORMS_GROTTO, []{return logic->CanOpenStormsGrotto();}),
});

View file

@ -2434,6 +2434,9 @@ u8 Item_Give(PlayState* play, u8 item) {
}
} else {
Flags_SetRandomizerInf(item - ITEM_WEIRD_EGG + RAND_INF_CHILD_TRADES_HAS_WEIRD_EGG);
if (item == ITEM_WEIRD_EGG) {
Flags_SetRandomizerInf(RAND_INF_WEIRD_EGG);
}
}
}