mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-18 14:22:17 -05:00
Fix dungeon/overworld only settings
This commit is contained in:
parent
a61594d796
commit
ff2df9c772
@ -1567,7 +1567,7 @@ void Rando::StaticData::InitLocationTable() {
|
||||
locationTable[RC_LLR_RAIN_SHED_POT_3] = Location::Base(RC_LLR_RAIN_SHED_POT_3, RCQUEST_BOTH, RCTYPE_POT, RCAREA_LON_LON_RANCH, ACTOR_OBJ_TSUBO, SCENE_LON_LON_RANCH, TWO_ACTOR_PARAMS(872, 219), 0x4f03, "Rain Shed Pot 3", "LLR Rain Shed Pot 3", RHT_LLR_RAIN_SHED_POT_3, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x63, 0x00), SpoilerCollectionCheckGroup::GROUP_LON_LON_RANCH);
|
||||
locationTable[RC_LLR_TALONS_HOUSE_POT_1] = Location::Base(RC_LLR_TALONS_HOUSE_POT_1, RCQUEST_BOTH, RCTYPE_POT, RCAREA_LON_LON_RANCH, ACTOR_OBJ_TSUBO, SCENE_LON_LON_BUILDINGS, TWO_ACTOR_PARAMS(1255, 47), 0x5700, "Talons House Pot 1", "LLR Talons House Pot 1", RHT_LLR_TALONS_HOUSE_POT_1, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4C, 0x00), SpoilerCollectionCheckGroup::GROUP_LON_LON_RANCH);
|
||||
locationTable[RC_LLR_TALONS_HOUSE_POT_2] = Location::Base(RC_LLR_TALONS_HOUSE_POT_2, RCQUEST_BOTH, RCTYPE_POT, RCAREA_LON_LON_RANCH, ACTOR_OBJ_TSUBO, SCENE_LON_LON_BUILDINGS, TWO_ACTOR_PARAMS(1256, -51), 0x5501, "Talons House Pot 2", "LLR Talons House Pot 2", RHT_LLR_TALONS_HOUSE_POT_2, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4C, 0x00), SpoilerCollectionCheckGroup::GROUP_LON_LON_RANCH);
|
||||
locationTable[RC_LLR_TALONS_HOUSE_POT_3] = Location::Base(RC_LLR_TALONS_HOUSE_POT_3, RCQUEST_BOTH, RCTYPE_POT, RCAREA_LON_LON_RANCH, ACTOR_OBJ_TSUBO, SCENE_LON_LON_BUILDINGS, TWO_ACTOR_PARAMS(156, -78), 0x5301, "Talons House Pot 3", "LLR Talons House Pot 3", RHT_LLR_TALONS_HOUSE_POT_3, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4C, 0x00), SpoilerCollectionCheckGroup::GROUP_LON_LON_RANCH);
|
||||
locationTable[RC_LLR_TALONS_HOUSE_POT_3] = Location::Base(RC_LLR_TALONS_HOUSE_POT_3, RCQUEST_BOTH, RCTYPE_POT, RCAREA_LON_LON_RANCH, ACTOR_OBJ_TSUBO, SCENE_LON_LON_BUILDINGS, TWO_ACTOR_PARAMS(1256, -78), 0x5301, "Talons House Pot 3", "LLR Talons House Pot 3", RHT_LLR_TALONS_HOUSE_POT_3, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4C, 0x00), SpoilerCollectionCheckGroup::GROUP_LON_LON_RANCH);
|
||||
locationTable[RC_HF_COW_GROTTO_POT_1] = Location::Base(RC_HF_COW_GROTTO_POT_1, RCQUEST_BOTH, RCTYPE_POT, RCAREA_HYRULE_FIELD, ACTOR_OBJ_TSUBO, SCENE_GROTTOS, TWO_ACTOR_PARAMS(3410, -223), 0x430f, "Cow Grotto Pot 1", "HF Cow Grotto Pot 1", RHT_HF_COW_GROTTO_POT_1, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x3E, 0x00), SpoilerCollectionCheckGroup::GROUP_HYRULE_FIELD);
|
||||
locationTable[RC_HF_COW_GROTTO_POT_2] = Location::Base(RC_HF_COW_GROTTO_POT_2, RCQUEST_BOTH, RCTYPE_POT, RCAREA_HYRULE_FIELD, ACTOR_OBJ_TSUBO, SCENE_GROTTOS, TWO_ACTOR_PARAMS(3390, -258), 0x410e, "Cow Grotto Pot 2", "HF Cow Grotto Pot 2", RHT_HF_COW_GROTTO_POT_2, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x3E, 0x00), SpoilerCollectionCheckGroup::GROUP_HYRULE_FIELD);
|
||||
locationTable[RC_HC_STORMS_GROTTO_POT_1] = Location::Base(RC_HC_STORMS_GROTTO_POT_1, RCQUEST_BOTH, RCTYPE_POT, RCAREA_HYRULE_CASTLE, ACTOR_OBJ_TSUBO, SCENE_GROTTOS, TWO_ACTOR_PARAMS(1843, 1014), 0x4502, "Storms Grotto Pot 1", "HC Storms Grotto Pot 1", RHT_HC_STORMS_GROTTO_POT_1, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x3E, 0x00), SpoilerCollectionCheckGroup::GROUP_HYRULE_CASTLE);
|
||||
|
@ -85,9 +85,20 @@ static InitChainEntry sInitChain[] = {
|
||||
};
|
||||
|
||||
s8 ObjTsubo_HoldsRandomizedItem(ObjTsubo* this, PlayState* play) {
|
||||
return Randomizer_GetSettingValue(RSK_SHUFFLE_POTS) &&
|
||||
!Flags_GetRandomizerInf(this->potIdentity.randomizerInf) &&
|
||||
this->potIdentity.randomizerCheck != RC_UNKNOWN_CHECK;
|
||||
uint8_t isDungeon = play->sceneNum < SCENE_GANONS_TOWER_COLLAPSE_INTERIOR ||
|
||||
(play->sceneNum > SCENE_TREASURE_BOX_SHOP && play->sceneNum < SCENE_GANONS_TOWER_COLLAPSE_EXTERIOR);
|
||||
uint8_t potSetting = Randomizer_GetSettingValue(RSK_SHUFFLE_POTS);
|
||||
|
||||
// Don't pull randomized item if pot isn't randomized or is already checked
|
||||
if (!IS_RANDO || !potSetting ||
|
||||
(potSetting == RO_SHUFFLE_POTS_OVERWORLD && isDungeon) ||
|
||||
(potSetting == RO_SHUFFLE_POTS_DUNGEONS && !isDungeon) ||
|
||||
Flags_GetRandomizerInf(this->potIdentity.randomizerInf) ||
|
||||
this->potIdentity.randomizerCheck == RC_UNKNOWN_CHECK) {
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjTsubo_SpawnCollectible(ObjTsubo* this, PlayState* play) {
|
||||
|
Loading…
Reference in New Issue
Block a user