Add 1 new pot to the item pool

This commit is contained in:
aMannus
2023-12-14 16:00:42 +01:00
parent 0628cb990d
commit b803a04b16
7 changed files with 13 additions and 1 deletions
@@ -1361,4 +1361,8 @@ void HintTable_Init_Exclude_Overworld() {
//obscure text
Text{"a #pot in a room# holds", /*french*/"a #pot in a room# holds", /*spanish*/"a #pot in a room# holds"},
});
hintTable[RHT_SHUFFLE_POTS_MARKET_GUARD_HOUSE_2] = HintText::Exclude({
//obscure text
Text{"a #pot in a room# holds", /*french*/"a #pot in a room# holds", /*spanish*/"a #pot in a room# holds"},
});
}
@@ -577,6 +577,7 @@ static void PlaceVanillaCowMilk() {
static void PlaceVanillaPotContents() {
auto ctx = Rando::Context::GetInstance();
ctx->PlaceItemInLocation(RC_MARKET_GUARD_HOUSE_CHILD_POT_1, RG_GREEN_RUPEE, false, true);
ctx->PlaceItemInLocation(RC_MARKET_GUARD_HOUSE_CHILD_POT_2, RG_GREEN_RUPEE, false, true);
}
static void SetScarceItemPool() {
@@ -171,6 +171,7 @@ void AreaTable_Init_CastleTown() {
LocationAccess(RC_MARKET_10_BIG_POES, {[]{return IsAdult && BigPoeKill;}}),
LocationAccess(RC_MARKET_GS_GUARD_HOUSE, {[]{return IsChild;}}),
LocationAccess(RC_MARKET_GUARD_HOUSE_CHILD_POT_1, {[]{return CanBreakPots();}}),
LocationAccess(RC_MARKET_GUARD_HOUSE_CHILD_POT_2, {[]{return CanBreakPots();}}),
}, {
//Exits
Entrance(RR_MARKET_ENTRANCE, {[]{return true;}}),
@@ -209,6 +209,7 @@ std::vector<RandomizerCheck> Rando::StaticData::overworldLocations = {
RC_MARKET_TREASURE_CHEST_GAME_ITEM_4,
RC_MARKET_TREASURE_CHEST_GAME_ITEM_5,
RC_MARKET_GUARD_HOUSE_CHILD_POT_1,
RC_MARKET_GUARD_HOUSE_CHILD_POT_2,
// Market Shops
RC_MARKET_BOMBCHU_SHOP_ITEM_1,
@@ -1293,8 +1294,9 @@ void Rando::StaticData::InitLocationTable() {
locationTable[RC_GV_COW] = Location::Base(RC_GV_COW, RCQUEST_BOTH, RCTYPE_COW, RCAREA_GERUDO_VALLEY, ACTOR_EN_COW, SCENE_GERUDO_VALLEY, 0x00, 0x15, "Cow", "GV Cow", RHT_GV_COW, RG_MILK, { Category::cCow }, SpoilerCollectionCheck::Cow(0x5A, 0x15), SpoilerCollectionCheckGroup::GROUP_GERUDO_VALLEY);
locationTable[RC_JABU_JABUS_BELLY_MQ_COW] = Location::Base(RC_JABU_JABUS_BELLY_MQ_COW, RCQUEST_MQ, RCTYPE_COW, RCAREA_JABU_JABUS_BELLY, ACTOR_EN_COW, SCENE_JABU_JABU, 0x00, 0x15, "MQ Cow", "Jabu Jabus Belly MQ Cow", RHT_JABU_JABUS_BELLY_MQ_COW, RG_MILK, { Category::cCow }, SpoilerCollectionCheck::Cow(0x02, 0x15), SpoilerCollectionCheckGroup::GROUP_DUNGEON_JABUJABUS_BELLY);
// Pots Randomizer Check Randomizer Check Quest Type Area Actor ID Scene ID Params Flags Short Name Spoiler Name Hint Text Key Vanilla Item Categories Spoiler Collection Check Collection Check Group
// Pots Randomizer Check Randomizer Check Quest Type Area Actor ID Scene ID Params Flags Short Name Spoiler Name Hint Text Key Vanilla Item Categories Spoiler Collection Check Collection Check Group
locationTable[RC_MARKET_GUARD_HOUSE_CHILD_POT_1] = Location::Base(RC_MARKET_GUARD_HOUSE_CHILD_POT_1, RCQUEST_BOTH, RCTYPE_POT, RCAREA_MARKET, ACTOR_OBJ_TSUBO, SCENE_MARKET_GUARD_HOUSE, THREE_ACTOR_PARAMS(-80, 0, -7), 0x00, "Guard House Child Pot 1", "MK Guard House Child Pot 1", RHT_SHUFFLE_POTS_MARKET_GUARD_HOUSE_1, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4D, 0x00), SpoilerCollectionCheckGroup::GROUP_HYRULE_CASTLE);
locationTable[RC_MARKET_GUARD_HOUSE_CHILD_POT_2] = Location::Base(RC_MARKET_GUARD_HOUSE_CHILD_POT_2, RCQUEST_BOTH, RCTYPE_POT, RCAREA_MARKET, ACTOR_OBJ_TSUBO, SCENE_MARKET_GUARD_HOUSE, THREE_ACTOR_PARAMS(-65, 0, -45), 0x00, "Guard House Child Pot 2", "MK Guard House Child Pot 2", RHT_SHUFFLE_POTS_MARKET_GUARD_HOUSE_2, RG_GREEN_RUPEE, { Category::cPot }, SpoilerCollectionCheck::Pot(0x4D, 0x00), SpoilerCollectionCheckGroup::GROUP_HYRULE_CASTLE);
/*-------------------------------
--- SHOPS ---
@@ -1403,6 +1403,7 @@ std::map<RandomizerCheck, RandomizerInf> rcToRandomizerInf = {
{ RC_MARKET_10_BIG_POES, RAND_INF_10_BIG_POES },
{ RC_KAK_100_GOLD_SKULLTULA_REWARD, RAND_INF_KAK_100_GOLD_SKULLTULA_REWARD },
{ RC_MARKET_GUARD_HOUSE_CHILD_POT_1, RAND_INF_SHUFFLE_POTS_MARKET_GUARD_HOUSE_CHILD_1 },
{ RC_MARKET_GUARD_HOUSE_CHILD_POT_2, RAND_INF_SHUFFLE_POTS_MARKET_GUARD_HOUSE_CHILD_2 },
};
Rando::Location* Randomizer::GetCheckObjectFromActor(s16 actorId, s16 sceneNum, s32 actorParams = 0x00) {
@@ -748,6 +748,7 @@ typedef enum {
RC_MARKET_BOMBCHU_SHOP_ITEM_7,
RC_MARKET_BOMBCHU_SHOP_ITEM_8,
RC_MARKET_GUARD_HOUSE_CHILD_POT_1,
RC_MARKET_GUARD_HOUSE_CHILD_POT_2,
RC_TOT_LIGHT_ARROWS_CUTSCENE,
RC_TOT_MASTER_SWORD,
RC_HC_MALON_EGG,
@@ -3281,6 +3282,7 @@ typedef enum {
RHT_GRANNY_DIALOG,
// Shuffle Pots
RHT_SHUFFLE_POTS_MARKET_GUARD_HOUSE_1,
RHT_SHUFFLE_POTS_MARKET_GUARD_HOUSE_2,
RHT_MAX
} RandomizerHintTextKey;
@@ -171,6 +171,7 @@ typedef enum {
RAND_INF_GANON_SOUL,
RAND_INF_SHUFFLE_POTS_MARKET_GUARD_HOUSE_CHILD_1,
RAND_INF_SHUFFLE_POTS_MARKET_GUARD_HOUSE_CHILD_2,
// If you add anything to this list, you need to update the size of randomizerInf in z64save.h to be ceil(RAND_INF_MAX / 16)