mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-10 11:35:19 -05:00
Add obtainability checks correctly
This commit is contained in:
parent
0277db578f
commit
d1dac2a2ee
@ -156,7 +156,7 @@ namespace Settings {
|
|||||||
Option ShuffleRewards = Option::U8 ("Shuffle Dungeon Rewards",{"End of dungeons", "Any dungeon", "Overworld", "Anywhere"}, {shuffleRewardsEndOfDungeon, shuffleRewardsAnyDungeon, shuffleRewardsOverworld, shuffleRewardsAnywhere});
|
Option ShuffleRewards = Option::U8 ("Shuffle Dungeon Rewards",{"End of dungeons", "Any dungeon", "Overworld", "Anywhere"}, {shuffleRewardsEndOfDungeon, shuffleRewardsAnyDungeon, shuffleRewardsOverworld, shuffleRewardsAnywhere});
|
||||||
Option LinksPocketItem = Option::U8 ("Link's Pocket", {"Dungeon Reward", "Advancement", "Anything", "Nothing"}, {linksPocketDungeonReward, linksPocketAdvancement, linksPocketAnything, linksPocketNothing});
|
Option LinksPocketItem = Option::U8 ("Link's Pocket", {"Dungeon Reward", "Advancement", "Anything", "Nothing"}, {linksPocketDungeonReward, linksPocketAdvancement, linksPocketAnything, linksPocketNothing});
|
||||||
Option ShuffleSongs = Option::U8 ("Shuffle Songs", {"Song locations", "Dungeon rewards", "Anywhere"}, {songsSongLocations, songsDungeonRewards, songsAllLocations});
|
Option ShuffleSongs = Option::U8 ("Shuffle Songs", {"Song locations", "Dungeon rewards", "Anywhere"}, {songsSongLocations, songsDungeonRewards, songsAllLocations});
|
||||||
Option Shopsanity = Option::U8 ("Shopsanity", {MultiVecOpts({{"Off"}, NumOpts(0, 4), {"Random"}})}, {shopsOff, shopsZero, shopsOne, shopsTwo, shopsThree, shopsFour, shopsRandom});
|
Option Shopsanity = Option::U8 ("Shopsanity", {"Off","0 Items","1 Item","2 Items","3 Items","4 Items","Random"}, {shopsOff, shopsZero, shopsOne, shopsTwo, shopsThree, shopsFour, shopsRandom});
|
||||||
Option Tokensanity = Option::U8 ("Tokensanity", {"Off", "Dungeons", "Overworld", "All Tokens"}, {tokensOff, tokensDungeon, tokensOverworld, tokensAllTokens});
|
Option Tokensanity = Option::U8 ("Tokensanity", {"Off", "Dungeons", "Overworld", "All Tokens"}, {tokensOff, tokensDungeon, tokensOverworld, tokensAllTokens});
|
||||||
Option Scrubsanity = Option::U8 ("Scrub Shuffle", {"Off", "Affordable", "Expensive", "Random Prices"}, {scrubsOff, scrubsAffordable, scrubsExpensive, scrubsRandomPrices});
|
Option Scrubsanity = Option::U8 ("Scrub Shuffle", {"Off", "Affordable", "Expensive", "Random Prices"}, {scrubsOff, scrubsAffordable, scrubsExpensive, scrubsRandomPrices});
|
||||||
Option ShuffleCows = Option::Bool("Shuffle Cows", {"Off", "On"}, {shuffleCowsDesc});
|
Option ShuffleCows = Option::Bool("Shuffle Cows", {"Off", "On"}, {shuffleCowsDesc});
|
||||||
|
@ -910,15 +910,15 @@ void Randomizer::ParseRandomizerSettingsFile(const char* spoilerFileName) {
|
|||||||
case RSK_SHOPSANITY:
|
case RSK_SHOPSANITY:
|
||||||
if(it.value() == "Off") {
|
if(it.value() == "Off") {
|
||||||
gSaveContext.randoSettings[index].value = 0;
|
gSaveContext.randoSettings[index].value = 0;
|
||||||
} else if(it.value() == "0") {
|
} else if(it.value() == "0 Items") {
|
||||||
gSaveContext.randoSettings[index].value = 1;
|
gSaveContext.randoSettings[index].value = 1;
|
||||||
} else if(it.value() == "1") {
|
} else if(it.value() == "1 Item") {
|
||||||
gSaveContext.randoSettings[index].value = 2;
|
gSaveContext.randoSettings[index].value = 2;
|
||||||
} else if(it.value() == "2") {
|
} else if(it.value() == "2 Items") {
|
||||||
gSaveContext.randoSettings[index].value = 3;
|
gSaveContext.randoSettings[index].value = 3;
|
||||||
} else if(it.value() == "3") {
|
} else if(it.value() == "3 Items") {
|
||||||
gSaveContext.randoSettings[index].value = 4;
|
gSaveContext.randoSettings[index].value = 4;
|
||||||
} else if(it.value() == "4") {
|
} else if(it.value() == "4 Items") {
|
||||||
gSaveContext.randoSettings[index].value = 5;
|
gSaveContext.randoSettings[index].value = 5;
|
||||||
} else if(it.value() == "Random") {
|
} else if(it.value() == "Random") {
|
||||||
gSaveContext.randoSettings[index].value = 6;
|
gSaveContext.randoSettings[index].value = 6;
|
||||||
@ -2510,7 +2510,7 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
struct ShopItemIdentity shopItemIdentity;
|
struct ShopItemIdentity shopItemIdentity;
|
||||||
|
|
||||||
shopItemIdentity.randomizerCheck = RC_UNKNOWN_CHECK;
|
shopItemIdentity.randomizerCheck = RC_UNKNOWN_CHECK;
|
||||||
shopItemIdentity.getItemId = GI_NONE;
|
shopItemIdentity.ogItemId = GI_NONE;
|
||||||
shopItemIdentity.itemPrice = -1;
|
shopItemIdentity.itemPrice = -1;
|
||||||
shopItemIdentity.isShuffled = GetRandoSettingValue(RSK_SHOPSANITY) > 0;
|
shopItemIdentity.isShuffled = GetRandoSettingValue(RSK_SHOPSANITY) > 0;
|
||||||
|
|
||||||
@ -2521,42 +2521,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x0C:
|
case 0x0C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_SHIELD_HYLIAN;
|
shopItemIdentity.ogItemId = GI_SHIELD_HYLIAN;
|
||||||
break;
|
break;
|
||||||
case 0x2F:
|
case 0x2F:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_5;
|
shopItemIdentity.ogItemId = GI_BOMBS_5;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x10:
|
case 0x10:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_HEART;
|
shopItemIdentity.ogItemId = GI_HEART;
|
||||||
break;
|
break;
|
||||||
case 0x2C:
|
case 0x2C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_SMALL;
|
shopItemIdentity.ogItemId = GI_ARROWS_SMALL;
|
||||||
break;
|
break;
|
||||||
case 0x02:
|
case 0x02:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_LARGE;
|
shopItemIdentity.ogItemId = GI_ARROWS_LARGE;
|
||||||
break;
|
break;
|
||||||
case 0x05:
|
case 0x05:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_STICKS_1;
|
shopItemIdentity.ogItemId = GI_STICKS_1;
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_BAZAAR_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_KAK_BAZAAR_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_MEDIUM;
|
shopItemIdentity.ogItemId = GI_ARROWS_MEDIUM;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -2564,42 +2564,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x0C:
|
case 0x0C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_SHIELD_HYLIAN;
|
shopItemIdentity.ogItemId = GI_SHIELD_HYLIAN;
|
||||||
break;
|
break;
|
||||||
case 0x2F:
|
case 0x2F:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_5;
|
shopItemIdentity.ogItemId = GI_BOMBS_5;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x10:
|
case 0x10:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_HEART;
|
shopItemIdentity.ogItemId = GI_HEART;
|
||||||
break;
|
break;
|
||||||
case 0x2C:
|
case 0x2C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_SMALL;
|
shopItemIdentity.ogItemId = GI_ARROWS_SMALL;
|
||||||
break;
|
break;
|
||||||
case 0x02:
|
case 0x02:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_LARGE;
|
shopItemIdentity.ogItemId = GI_ARROWS_LARGE;
|
||||||
break;
|
break;
|
||||||
case 0x05:
|
case 0x05:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_STICKS_1;
|
shopItemIdentity.ogItemId = GI_STICKS_1;
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BAZAAR_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BAZAAR_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_MEDIUM;
|
shopItemIdentity.ogItemId = GI_ARROWS_MEDIUM;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2609,42 +2609,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x0D:
|
case 0x0D:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_SHIELD_DEKU;
|
shopItemIdentity.ogItemId = GI_SHIELD_DEKU;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x04:
|
case 0x04:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_10;
|
shopItemIdentity.ogItemId = GI_NUTS_10;
|
||||||
break;
|
break;
|
||||||
case 0x05:
|
case 0x05:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_STICKS_1;
|
shopItemIdentity.ogItemId = GI_STICKS_1;
|
||||||
break;
|
break;
|
||||||
case 0x1D:
|
case 0x1D:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_SEEDS_30;
|
shopItemIdentity.ogItemId = GI_SEEDS_30;
|
||||||
break;
|
break;
|
||||||
case 0x2C:
|
case 0x2C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_SMALL;
|
shopItemIdentity.ogItemId = GI_ARROWS_SMALL;
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_MEDIUM;
|
shopItemIdentity.ogItemId = GI_ARROWS_MEDIUM;
|
||||||
break;
|
break;
|
||||||
case 0x10:
|
case 0x10:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KF_SHOP_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_KF_SHOP_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_HEART;
|
shopItemIdentity.ogItemId = GI_HEART;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2653,43 +2653,43 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x03:
|
case 0x03:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_5;
|
shopItemIdentity.ogItemId = GI_BOMBS_5;
|
||||||
break;
|
break;
|
||||||
case 0x06:
|
case 0x06:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_10;
|
shopItemIdentity.ogItemId = GI_BOMBS_10;
|
||||||
break;
|
break;
|
||||||
case 0x2D:
|
case 0x2D:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_20;
|
shopItemIdentity.ogItemId = GI_BOMBS_20;
|
||||||
break;
|
break;
|
||||||
case 0x2E:
|
case 0x2E:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_BOMBS_30;
|
shopItemIdentity.ogItemId = GI_BOMBS_30;
|
||||||
break;
|
break;
|
||||||
case 0x0E:
|
case 0x0E:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_TUNIC_GORON;
|
shopItemIdentity.ogItemId = GI_TUNIC_GORON;
|
||||||
break;
|
break;
|
||||||
case 0x10:
|
case 0x10:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_HEART;
|
shopItemIdentity.ogItemId = GI_HEART;
|
||||||
break;
|
break;
|
||||||
case 0x30:
|
case 0x30:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_POTION_RED;
|
shopItemIdentity.ogItemId = GI_POTION_RED;
|
||||||
break;
|
break;
|
||||||
// TODO: Not a huge issue because shopsanity won't use this slot, but it has the same actorParam as another
|
// TODO: Not a huge issue because shopsanity won't use this slot, but it has the same actorParam as another
|
||||||
// case 0x10:
|
// case 0x10:
|
||||||
// shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_8;
|
// shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_GC_SHOP_ITEM_8;
|
||||||
// shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_8;
|
// shopItemIdentity.randomizerCheck = RC_GC_SHOP_ITEM_8;
|
||||||
// shopItemIdentity.getItemId = GI_HEART;
|
// shopItemIdentity.ogItemId = GI_HEART;
|
||||||
// break;
|
// break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2698,42 +2698,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x0F:
|
case 0x0F:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_TUNIC_ZORA;
|
shopItemIdentity.ogItemId = GI_TUNIC_ZORA;
|
||||||
break;
|
break;
|
||||||
case 0x2C:
|
case 0x2C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_SMALL;
|
shopItemIdentity.ogItemId = GI_ARROWS_SMALL;
|
||||||
break;
|
break;
|
||||||
case 0x10:
|
case 0x10:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_HEART;
|
shopItemIdentity.ogItemId = GI_HEART;
|
||||||
break;
|
break;
|
||||||
case 0x01:
|
case 0x01:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_MEDIUM;
|
shopItemIdentity.ogItemId = GI_ARROWS_MEDIUM;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x02:
|
case 0x02:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_ARROWS_LARGE;
|
shopItemIdentity.ogItemId = GI_ARROWS_LARGE;
|
||||||
break;
|
break;
|
||||||
case 0x07:
|
case 0x07:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_FISH;
|
shopItemIdentity.ogItemId = GI_FISH;
|
||||||
break;
|
break;
|
||||||
case 0x31:
|
case 0x31:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_ZD_SHOP_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_ZD_SHOP_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_POTION_RED;
|
shopItemIdentity.ogItemId = GI_POTION_RED;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2742,42 +2742,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x09:
|
case 0x09:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_POTION_GREEN;
|
shopItemIdentity.ogItemId = GI_POTION_GREEN;
|
||||||
break;
|
break;
|
||||||
case 0x27:
|
case 0x27:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BLUE_FIRE;
|
shopItemIdentity.ogItemId = GI_BLUE_FIRE;
|
||||||
break;
|
break;
|
||||||
case 0x08:
|
case 0x08:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_POTION_RED;
|
shopItemIdentity.ogItemId = GI_POTION_RED;
|
||||||
break;
|
break;
|
||||||
case 0x2B:
|
case 0x2B:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_FAIRY;
|
shopItemIdentity.ogItemId = GI_FAIRY;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x28:
|
case 0x28:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_BUGS;
|
shopItemIdentity.ogItemId = GI_BUGS;
|
||||||
break;
|
break;
|
||||||
case 0x2A:
|
case 0x2A:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_POE;
|
shopItemIdentity.ogItemId = GI_POE;
|
||||||
break;
|
break;
|
||||||
case 0x07:
|
case 0x07:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_KAK_POTION_SHOP_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_KAK_POTION_SHOP_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_FISH;
|
shopItemIdentity.ogItemId = GI_FISH;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2786,42 +2786,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x09:
|
case 0x09:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_POTION_GREEN;
|
shopItemIdentity.ogItemId = GI_POTION_GREEN;
|
||||||
break;
|
break;
|
||||||
case 0x27:
|
case 0x27:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BLUE_FIRE;
|
shopItemIdentity.ogItemId = GI_BLUE_FIRE;
|
||||||
break;
|
break;
|
||||||
case 0x08:
|
case 0x08:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_POTION_RED;
|
shopItemIdentity.ogItemId = GI_POTION_RED;
|
||||||
break;
|
break;
|
||||||
case 0x2B:
|
case 0x2B:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_FAIRY;
|
shopItemIdentity.ogItemId = GI_FAIRY;
|
||||||
break;
|
break;
|
||||||
case 0x00:
|
case 0x00:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_NUTS_5_2;
|
shopItemIdentity.ogItemId = GI_NUTS_5_2;
|
||||||
break;
|
break;
|
||||||
case 0x28:
|
case 0x28:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_BUGS;
|
shopItemIdentity.ogItemId = GI_BUGS;
|
||||||
break;
|
break;
|
||||||
case 0x2A:
|
case 0x2A:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_POE;
|
shopItemIdentity.ogItemId = GI_POE;
|
||||||
break;
|
break;
|
||||||
case 0x07:
|
case 0x07:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_POTION_SHOP_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_MARKET_POTION_SHOP_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_FISH;
|
shopItemIdentity.ogItemId = GI_FISH;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -2830,42 +2830,42 @@ ShopItemIdentity Randomizer::IdentifyShopItem(s32 sceneNum, s32 actorParams) {
|
|||||||
case 0x18:
|
case 0x18:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_1;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_1;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_1;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_1;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_10;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_10;
|
||||||
break;
|
break;
|
||||||
case 0x1C:
|
case 0x1C:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_2;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_2;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_2;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_2;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_10;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_10;
|
||||||
break;
|
break;
|
||||||
case 0x19:
|
case 0x19:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_3;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_3;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_3;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_3;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_10;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_10;
|
||||||
break;
|
break;
|
||||||
case 0x15:
|
case 0x15:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_4;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_4;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_4;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_4;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_10;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_10;
|
||||||
break;
|
break;
|
||||||
case 0x1A:
|
case 0x1A:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_5;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_5;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_5;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_5;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_20;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_20;
|
||||||
break;
|
break;
|
||||||
case 0x16:
|
case 0x16:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_6;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_6;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_6;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_6;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_20;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_20;
|
||||||
break;
|
break;
|
||||||
case 0x1B:
|
case 0x1B:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_7;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_7;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_7;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_7;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_20;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_20;
|
||||||
break;
|
break;
|
||||||
case 0x17:
|
case 0x17:
|
||||||
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_8;
|
shopItemIdentity.randomizerInf = RAND_INF_SHOP_ITEMS_MARKET_BOMBCHU_SHOP_ITEM_8;
|
||||||
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_8;
|
shopItemIdentity.randomizerCheck = RC_MARKET_BOMBCHU_SHOP_ITEM_8;
|
||||||
shopItemIdentity.getItemId = GI_BOMBCHUS_20;
|
shopItemIdentity.ogItemId = GI_BOMBCHUS_20;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -4003,7 +4003,7 @@ void DrawRandoEditor(bool& open) {
|
|||||||
const char* randoLinksPocket[4] = { "Dungeon Reward", "Advancement", "Anything", "Nothing" };
|
const char* randoLinksPocket[4] = { "Dungeon Reward", "Advancement", "Anything", "Nothing" };
|
||||||
const char* randoShuffleSongs[3] = { "Song Locations", "Dungeon Rewards", "Anywhere" };
|
const char* randoShuffleSongs[3] = { "Song Locations", "Dungeon Rewards", "Anywhere" };
|
||||||
const char* randoShuffleTokens[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
const char* randoShuffleTokens[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
||||||
const char* randoShopsanity[7] = { "Off", "0", "1", "2", "3", "4", "Random" };
|
const char* randoShopsanity[7] = { "Off", "0 Items", "1 Item", "2 Items", "3 Items", "4 Items", "Random" };
|
||||||
const char* randoTokensanity[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
const char* randoTokensanity[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
||||||
const char* randoShuffleScrubs[4] = { "Off", "Affordable", "Expensive", "Random Prices" };
|
const char* randoShuffleScrubs[4] = { "Off", "Affordable", "Expensive", "Random Prices" };
|
||||||
const char* randoShuffleCows[2] = { "Off", "On" };
|
const char* randoShuffleCows[2] = { "Off", "On" };
|
||||||
@ -4435,9 +4435,9 @@ void DrawRandoEditor(bool& open) {
|
|||||||
InsertHelpHoverText(
|
InsertHelpHoverText(
|
||||||
"Off - All shop items will be the same as vanilla.\n"
|
"Off - All shop items will be the same as vanilla.\n"
|
||||||
"\n"
|
"\n"
|
||||||
"0 - Vanilla shop items will be shuffled among different shops.\n"
|
"0 Items - Vanilla shop items will be shuffled among different shops.\n"
|
||||||
"\n"
|
"\n"
|
||||||
"1-4 - Vanilla shop items will be shuffled among different shops, and each shop will contain 1-4 non-vanilla shop items.\n"
|
"1-4 Items - Vanilla shop items will be shuffled among different shops, and each shop will contain 1-4 non-vanilla shop items.\n"
|
||||||
"\n"
|
"\n"
|
||||||
"Random - Vanilla shop items will be shuffled among different shops, and each shop will contain a random number of non-vanilla shop items.\n"
|
"Random - Vanilla shop items will be shuffled among different shops, and each shop will contain a random number of non-vanilla shop items.\n"
|
||||||
);
|
);
|
||||||
|
@ -1041,7 +1041,7 @@ typedef struct ScrubIdentity {
|
|||||||
typedef struct ShopItemIdentity {
|
typedef struct ShopItemIdentity {
|
||||||
RandomizerInf randomizerInf;
|
RandomizerInf randomizerInf;
|
||||||
RandomizerCheck randomizerCheck;
|
RandomizerCheck randomizerCheck;
|
||||||
GetItemID getItemId;
|
GetItemID ogItemId;
|
||||||
int32_t itemPrice;
|
int32_t itemPrice;
|
||||||
bool isShuffled;
|
bool isShuffled;
|
||||||
} ShopItemIdentity;
|
} ShopItemIdentity;
|
||||||
|
@ -1674,6 +1674,22 @@ extern "C" GetItemEntry Randomizer_GetItemFromKnownCheck(RandomizerCheck randomi
|
|||||||
return ItemTable_RetrieveEntry(getItemModIndex, itemID);
|
return ItemTable_RetrieveEntry(getItemModIndex, itemID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" GetItemEntry Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(RandomizerCheck randomizerCheck, GetItemID ogId) {
|
||||||
|
s16 getItemModIndex;
|
||||||
|
if (OTRGlobals::Instance->gRandomizer->CheckContainsVanillaItem(randomizerCheck)) {
|
||||||
|
getItemModIndex = MOD_NONE;
|
||||||
|
} else {
|
||||||
|
getItemModIndex = MOD_RANDOMIZER;
|
||||||
|
}
|
||||||
|
s16 itemID = OTRGlobals::Instance->gRandomizer->GetItemIdFromKnownCheck(randomizerCheck, ogId);
|
||||||
|
|
||||||
|
return ItemTable_RetrieveEntry(getItemModIndex, itemID);
|
||||||
|
}
|
||||||
|
|
||||||
|
extern "C" ItemObtainability Randomizer_GetItemObtainabilityFromRandomizerCheck(RandomizerCheck randomizerCheck) {
|
||||||
|
return OTRGlobals::Instance->gRandomizer->GetItemObtainabilityFromRandomizerCheck(randomizerCheck);
|
||||||
|
}
|
||||||
|
|
||||||
extern "C" bool Randomizer_ItemIsIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId) {
|
extern "C" bool Randomizer_ItemIsIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId) {
|
||||||
return gSaveContext.n64ddFlag && Randomizer_GetItemFromKnownCheck(randomizerCheck, ogId).getItemId == RG_ICE_TRAP;
|
return gSaveContext.n64ddFlag && Randomizer_GetItemFromKnownCheck(randomizerCheck, ogId).getItemId == RG_ICE_TRAP;
|
||||||
}
|
}
|
||||||
|
@ -107,6 +107,8 @@ void Randomizer_LoadItemLocations(const char* spoilerFileName, bool silent);
|
|||||||
bool Randomizer_IsTrialRequired(RandomizerInf trial);
|
bool Randomizer_IsTrialRequired(RandomizerInf trial);
|
||||||
GetItemEntry Randomizer_GetItemFromActor(s16 actorId, s16 sceneNum, s16 actorParams, GetItemID ogId);
|
GetItemEntry Randomizer_GetItemFromActor(s16 actorId, s16 sceneNum, s16 actorParams, GetItemID ogId);
|
||||||
GetItemEntry Randomizer_GetItemFromKnownCheck(RandomizerCheck randomizerCheck, GetItemID ogId);
|
GetItemEntry Randomizer_GetItemFromKnownCheck(RandomizerCheck randomizerCheck, GetItemID ogId);
|
||||||
|
GetItemEntry Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(RandomizerCheck randomizerCheck, GetItemID ogId);
|
||||||
|
ItemObtainability Randomizer_GetItemObtainabilityFromRandomizerCheck(RandomizerCheck randomizerCheck);
|
||||||
bool Randomizer_ObtainedFreestandingIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId, Actor* actor);
|
bool Randomizer_ObtainedFreestandingIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId, Actor* actor);
|
||||||
bool Randomizer_ItemIsIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId);
|
bool Randomizer_ItemIsIceTrap(RandomizerCheck randomizerCheck, GetItemID ogId);
|
||||||
int CustomMessage_RetrieveIfExists(GlobalContext* globalCtx);
|
int CustomMessage_RetrieveIfExists(GlobalContext* globalCtx);
|
||||||
|
@ -393,7 +393,7 @@ void EnGirlA_InitItem(EnGirlA* this, GlobalContext* globalCtx) {
|
|||||||
} else {
|
} else {
|
||||||
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
||||||
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
||||||
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.getItemId);
|
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.ogItemId);
|
||||||
|
|
||||||
if (Object_IsLoaded(&globalCtx->objectCtx, getItemEntry.objectId)) {
|
if (Object_IsLoaded(&globalCtx->objectCtx, getItemEntry.objectId)) {
|
||||||
this->objBankIndex = Object_GetIndex(&globalCtx->objectCtx, getItemEntry.objectId);
|
this->objBankIndex = Object_GetIndex(&globalCtx->objectCtx, getItemEntry.objectId);
|
||||||
@ -740,19 +740,31 @@ s32 EnGirlA_CanBuy_Fairy(GlobalContext* globalCtx, EnGirlA* this) {
|
|||||||
|
|
||||||
s32 EnGirlA_CanBuy_Randomizer(GlobalContext* globalCtx, EnGirlA* this) {
|
s32 EnGirlA_CanBuy_Randomizer(GlobalContext* globalCtx, EnGirlA* this) {
|
||||||
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
||||||
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.getItemId);
|
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.ogItemId);
|
||||||
// TOOD: Call some some sort of Randomizer equivalent Item_CheckObtainability method to determine if they can buy
|
ItemObtainability itemObtainability = Randomizer_GetItemObtainabilityFromRandomizerCheck(shopItemIdentity.randomizerCheck);
|
||||||
|
|
||||||
if (gSaveContext.rupees < shopItemIdentity.itemPrice) {
|
if (itemObtainability == CANT_OBTAIN_NEED_EMPTY_BOTTLE) {
|
||||||
return CANBUY_RESULT_NEED_RUPEES;
|
return CANBUY_RESULT_NEED_BOTTLE;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (itemObtainability == CANT_OBTAIN_NEED_UPGRADE) {
|
||||||
|
return CANBUY_RESULT_CANT_GET_NOW_5;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TOOD: We should put a sold out sign instead of preventing them from buying again
|
// TOOD: We should put a sold out sign instead of preventing them from buying again
|
||||||
// TODO: Need to allow repeated buys for some items
|
// TODO: Need to allow repeated buys for some items
|
||||||
if (Flags_GetRandomizerInf(shopItemIdentity.randomizerInf)) {
|
if (
|
||||||
|
Flags_GetRandomizerInf(shopItemIdentity.randomizerInf) ||
|
||||||
|
itemObtainability == CANT_OBTAIN_ALREADY_HAVE ||
|
||||||
|
itemObtainability == CANT_OBTAIN_MISC
|
||||||
|
) {
|
||||||
return CANBUY_RESULT_CANT_GET_NOW;
|
return CANBUY_RESULT_CANT_GET_NOW;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (gSaveContext.rupees < shopItemIdentity.itemPrice) {
|
||||||
|
return CANBUY_RESULT_NEED_RUPEES;
|
||||||
|
}
|
||||||
|
|
||||||
return CANBUY_RESULT_SUCCESS_FANFARE;
|
return CANBUY_RESULT_SUCCESS_FANFARE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -886,7 +898,7 @@ void EnGirlA_ItemGive_BottledItem(GlobalContext* globalCtx, EnGirlA* this) {
|
|||||||
// This is called when EnGirlA_CanBuy_Randomizer returns CANBUY_RESULT_SUCCESS
|
// This is called when EnGirlA_CanBuy_Randomizer returns CANBUY_RESULT_SUCCESS
|
||||||
void EnGirlA_ItemGive_Randomizer(GlobalContext* globalCtx, EnGirlA* this) {
|
void EnGirlA_ItemGive_Randomizer(GlobalContext* globalCtx, EnGirlA* this) {
|
||||||
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
||||||
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.getItemId);
|
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.ogItemId);
|
||||||
|
|
||||||
if (getItemEntry.modIndex == MOD_NONE) {
|
if (getItemEntry.modIndex == MOD_NONE) {
|
||||||
Item_Give(globalCtx, getItemEntry.itemId);
|
Item_Give(globalCtx, getItemEntry.itemId);
|
||||||
@ -1070,7 +1082,7 @@ void EnGirlA_InitializeItemAction(EnGirlA* this, GlobalContext* globalCtx) {
|
|||||||
if (gSaveContext.n64ddFlag && Randomizer_GetSettingValue(RSK_SHOPSANITY)) {
|
if (gSaveContext.n64ddFlag && Randomizer_GetSettingValue(RSK_SHOPSANITY)) {
|
||||||
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->actor.params);
|
||||||
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
||||||
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.getItemId);
|
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheckWithoutObtainabilityCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.ogItemId);
|
||||||
itemEntry->objID = getItemEntry.objectId;
|
itemEntry->objID = getItemEntry.objectId;
|
||||||
itemEntry->giDrawId = getItemEntry.gid;
|
itemEntry->giDrawId = getItemEntry.gid;
|
||||||
itemEntry->getItemId = getItemEntry.getItemId;
|
itemEntry->getItemId = getItemEntry.getItemId;
|
||||||
|
@ -1335,7 +1335,7 @@ void EnOssan_GiveItemWithFanfare(GlobalContext* globalCtx, EnOssan* this) {
|
|||||||
} else {
|
} else {
|
||||||
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->shelfSlots[this->cursorIndex]->actor.params);
|
ShopItemIdentity shopItemIdentity = Randomizer_IdentifyShopItem(globalCtx->sceneNum, this->shelfSlots[this->cursorIndex]->actor.params);
|
||||||
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
if (shopItemIdentity.randomizerCheck != RC_UNKNOWN_CHECK) {
|
||||||
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.getItemId);
|
GetItemEntry getItemEntry = Randomizer_GetItemFromKnownCheck(shopItemIdentity.randomizerCheck, shopItemIdentity.ogItemId);
|
||||||
GiveItemEntryFromActor(&this->actor, globalCtx, getItemEntry, 120.0f, 120.0f);
|
GiveItemEntryFromActor(&this->actor, globalCtx, getItemEntry, 120.0f, 120.0f);
|
||||||
} else {
|
} else {
|
||||||
func_8002F434(&this->actor, globalCtx, this->shelfSlots[this->cursorIndex]->getItemId, 120.0f, 120.0f);
|
func_8002F434(&this->actor, globalCtx, this->shelfSlots[this->cursorIndex]->getItemId, 120.0f, 120.0f);
|
||||||
|
Loading…
Reference in New Issue
Block a user