mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-02-07 02:40:30 -05:00
gift from rauru is dungeon location, not pocket
This commit is contained in:
parent
ad0912c323
commit
722862ba9a
@ -920,10 +920,9 @@ static void RandomizeDungeonRewards() {
|
||||
//get stones and medallions
|
||||
std::vector<RandomizerGet> rewards = FilterAndEraseFromPool(ItemPool, [](const auto i) {return Rando::StaticData::RetrieveItem(i).GetItemType() == ITEMTYPE_DUNGEONREWARD;});
|
||||
|
||||
// If there are less than 9 dungeon rewards, prioritize the actual dungeons
|
||||
// for placement instead of Link's Pocket
|
||||
// If there are less than 9 dungeon rewards, prioritize actual dungeons for placement over Gift from Rauru
|
||||
if (rewards.size() < 9) {
|
||||
ctx->PlaceItemInLocation(RC_LINKS_POCKET, RG_GREEN_RUPEE);
|
||||
ctx->PlaceItemInLocation(RC_GIFT_FROM_RAURU, RG_GREEN_RUPEE);
|
||||
}
|
||||
|
||||
if (ctx->GetOption(RSK_LOGIC_RULES).Is(RO_LOGIC_VANILLA) || ctx->GetOption(RSK_SHUFFLE_DUNGEON_REWARDS).Is(RO_DUNGEON_REWARDS_VANILLA)) { // Place dungeon rewards in vanilla locations
|
||||
@ -937,13 +936,6 @@ static void RandomizeDungeonRewards() {
|
||||
for (size_t i = 0; i < Rando::StaticData::dungeonRewardLocations.size(); i++) {
|
||||
const auto index = ctx->GetItemLocation(Rando::StaticData::dungeonRewardLocations[i])->GetPlacedItem().GetItemID() - baseOffset;
|
||||
rDungeonRewardOverrides[i] = index;
|
||||
|
||||
//set the player's dungeon reward on file creation instead of pushing it to them at the start.
|
||||
//This is done mainly because players are already familiar with seeing their dungeon reward
|
||||
//before opening up their file
|
||||
// if (i == Rando::StaticData::dungeonRewardLocations.size()-1) {
|
||||
// LinksPocketRewardBitMask = bitMaskTable[index];
|
||||
// }
|
||||
}
|
||||
} else if (ctx->GetOption(RSK_LINKS_POCKET).Is(RO_LINKS_POCKET_DUNGEON_REWARD)) {
|
||||
//get 1 stone/medallion
|
||||
|
@ -214,6 +214,8 @@ void Context::ItemReset() {
|
||||
for (const RandomizerCheck il : StaticData::dungeonRewardLocations) {
|
||||
GetItemLocation(il)->ResetVariables();
|
||||
}
|
||||
|
||||
GetItemLocation(RC_LINKS_POCKET)->ResetVariables();
|
||||
}
|
||||
|
||||
void Context::LocationReset() {
|
||||
|
@ -8,8 +8,8 @@ std::multimap<std::tuple<s16, s16, s32>, RandomizerCheck> Rando::StaticData::Che
|
||||
|
||||
std::vector<RandomizerCheck> Rando::StaticData::dungeonRewardLocations = {
|
||||
// Bosses
|
||||
RC_QUEEN_GOHMA, RC_KING_DODONGO, RC_BARINADE, RC_PHANTOM_GANON, RC_VOLVAGIA,
|
||||
RC_MORPHA, RC_TWINROVA, RC_BONGO_BONGO, RC_LINKS_POCKET,
|
||||
RC_QUEEN_GOHMA, RC_KING_DODONGO, RC_BARINADE, RC_GIFT_FROM_RAURU,
|
||||
RC_PHANTOM_GANON, RC_VOLVAGIA, RC_MORPHA, RC_TWINROVA, RC_BONGO_BONGO,
|
||||
};
|
||||
|
||||
using namespace Rando;
|
||||
|
Loading…
Reference in New Issue
Block a user