mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-26 10:08:51 -05:00
Merge pull request #1249 from briaguya-ai/exclude-all-locations
add ability to exclude any location
This commit is contained in:
commit
28bbaf6c45
@ -180,6 +180,7 @@ set(Header_Files__soh__Enhancements__randomizer
|
|||||||
"soh/Enhancements/randomizer/randomizer.h"
|
"soh/Enhancements/randomizer/randomizer.h"
|
||||||
"soh/Enhancements/randomizer/randomizer_item_tracker.h"
|
"soh/Enhancements/randomizer/randomizer_item_tracker.h"
|
||||||
"soh/Enhancements/randomizer/adult_trade_shuffle.h"
|
"soh/Enhancements/randomizer/adult_trade_shuffle.h"
|
||||||
|
"soh/Enhancements/randomizer/randomizer_check_objects.h"
|
||||||
)
|
)
|
||||||
source_group("Header Files\\soh\\Enhancements\\randomizer" FILES ${Header_Files__soh__Enhancements__randomizer})
|
source_group("Header Files\\soh\\Enhancements\\randomizer" FILES ${Header_Files__soh__Enhancements__randomizer})
|
||||||
|
|
||||||
@ -278,6 +279,7 @@ set(Source_Files__soh__Enhancements__randomizer
|
|||||||
"soh/Enhancements/randomizer/randomizer.cpp"
|
"soh/Enhancements/randomizer/randomizer.cpp"
|
||||||
"soh/Enhancements/randomizer/randomizer_item_tracker.cpp"
|
"soh/Enhancements/randomizer/randomizer_item_tracker.cpp"
|
||||||
"soh/Enhancements/randomizer/adult_trade_shuffle.c"
|
"soh/Enhancements/randomizer/adult_trade_shuffle.c"
|
||||||
|
"soh/Enhancements/randomizer/randomizer_check_objects.cpp"
|
||||||
)
|
)
|
||||||
source_group("Source Files\\soh\\Enhancements\\randomizer" FILES ${Source_Files__soh__Enhancements__randomizer})
|
source_group("Source Files\\soh\\Enhancements\\randomizer" FILES ${Source_Files__soh__Enhancements__randomizer})
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -9,6 +9,7 @@
|
|||||||
#include <vector>
|
#include <vector>
|
||||||
#include "spoiler_log.hpp"
|
#include "spoiler_log.hpp"
|
||||||
#include "item_list.hpp"
|
#include "item_list.hpp"
|
||||||
|
#include "../randomizerTypes.h"
|
||||||
|
|
||||||
enum ItemOverride_Type {
|
enum ItemOverride_Type {
|
||||||
OVR_BASE_ITEM = 0,
|
OVR_BASE_ITEM = 0,
|
||||||
@ -154,8 +155,8 @@ public:
|
|||||||
class ItemLocation {
|
class ItemLocation {
|
||||||
public:
|
public:
|
||||||
ItemLocation() = default;
|
ItemLocation() = default;
|
||||||
ItemLocation(uint8_t scene_, ItemLocationType type_, uint8_t flag_, std::string name_, uint32_t hintKey_, uint32_t vanillaItem_, std::vector<Category> categories_, uint16_t price_ = 0, SpoilerCollectionCheck collectionCheck_ = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup_ = SpoilerCollectionCheckGroup::GROUP_NO_GROUP)
|
ItemLocation(RandomizerCheck rc_, uint8_t scene_, ItemLocationType type_, uint8_t flag_, std::string name_, uint32_t hintKey_, uint32_t vanillaItem_, std::vector<Category> categories_, uint16_t price_ = 0, SpoilerCollectionCheck collectionCheck_ = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup_ = SpoilerCollectionCheckGroup::GROUP_NO_GROUP)
|
||||||
: scene(scene_), type(type_), flag(flag_), name(std::move(name_)), hintKey(hintKey_), vanillaItem(vanillaItem_), categories(std::move(categories_)), price(price_), collectionCheck(collectionCheck_), collectionCheckGroup(collectionCheckGroup_) {}
|
: rc(rc_), scene(scene_), type(type_), flag(flag_), name(std::move(name_)), hintKey(hintKey_), vanillaItem(vanillaItem_), categories(std::move(categories_)), price(price_), collectionCheck(collectionCheck_), collectionCheckGroup(collectionCheckGroup_) {}
|
||||||
|
|
||||||
ItemOverride_Key Key() const {
|
ItemOverride_Key Key() const {
|
||||||
ItemOverride_Key key;
|
ItemOverride_Key key;
|
||||||
@ -167,6 +168,10 @@ public:
|
|||||||
return key;
|
return key;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
RandomizerCheck GetRandomizerCheck() const {
|
||||||
|
return rc;
|
||||||
|
}
|
||||||
|
|
||||||
SpoilerCollectionCheck GetCollectionCheck() const {
|
SpoilerCollectionCheck GetCollectionCheck() const {
|
||||||
return collectionCheck;
|
return collectionCheck;
|
||||||
}
|
}
|
||||||
@ -368,48 +373,48 @@ public:
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Base(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Base(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Base, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Base, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Chest(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Chest(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Chest, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_CHEST, scene, flag), collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Chest, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_CHEST, scene, flag), collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Chest(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Chest(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Chest, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Chest, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Collectable(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Collectable(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Collectable, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_COLLECTABLE, scene, flag), collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Collectable, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_COLLECTABLE, scene, flag), collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Collectable(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Collectable(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Collectable, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Collectable, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto GSToken(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto GSToken(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, std::vector<Category>&& categories, SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::GSToken, flag, std::move(name), hintKey, GOLD_SKULLTULA_TOKEN, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_GOLD_SKULLTULA, scene, flag), collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::GSToken, flag, std::move(name), hintKey, GOLD_SKULLTULA_TOKEN, std::move(categories), 0, SpoilerCollectionCheck(SpoilerCollectionCheckType::SPOILER_CHK_GOLD_SKULLTULA, scene, flag), collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto GrottoScrub(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto GrottoScrub(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::GrottoScrub, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::GrottoScrub, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Delayed(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Delayed(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::Delayed, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::Delayed, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto Reward(uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
static auto Reward(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, const uint32_t hintKey, const uint32_t vanillaItem, std::vector<Category>&& categories, SpoilerCollectionCheck collectionCheck = SpoilerCollectionCheck(), SpoilerCollectionCheckGroup collectionCheckGroup = SpoilerCollectionCheckGroup::GROUP_NO_GROUP) {
|
||||||
return ItemLocation{scene, ItemLocationType::TempleReward, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
return ItemLocation{rc, scene, ItemLocationType::TempleReward, flag, std::move(name), hintKey, vanillaItem, std::move(categories), 0, collectionCheck, collectionCheckGroup};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto OtherHint(uint8_t scene, uint8_t flag, std::string&& name, std::vector<Category>&& categories) {
|
static auto OtherHint(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, std::vector<Category>&& categories) {
|
||||||
return ItemLocation{scene, ItemLocationType::OtherHint, flag, std::move(name), NONE, NONE, std::move(categories)};
|
return ItemLocation{rc, scene, ItemLocationType::OtherHint, flag, std::move(name), NONE, NONE, std::move(categories)};
|
||||||
}
|
}
|
||||||
|
|
||||||
static auto HintStone(uint8_t scene, uint8_t flag, std::string&& name, std::vector<Category>&& categories) {
|
static auto HintStone(RandomizerCheck rc, uint8_t scene, uint8_t flag, std::string&& name, std::vector<Category>&& categories) {
|
||||||
return ItemLocation{scene, ItemLocationType::HintStone, flag, std::move(name), NONE, NONE, std::move(categories)};
|
return ItemLocation{rc, scene, ItemLocationType::HintStone, flag, std::move(name), NONE, NONE, std::move(categories)};
|
||||||
}
|
}
|
||||||
|
|
||||||
void ResetVariables() {
|
void ResetVariables() {
|
||||||
@ -425,6 +430,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
RandomizerCheck rc;
|
||||||
uint8_t scene;
|
uint8_t scene;
|
||||||
ItemLocationType type;
|
ItemLocationType type;
|
||||||
uint8_t flag;
|
uint8_t flag;
|
||||||
|
@ -516,12 +516,12 @@ void PrintOptionDescription() {
|
|||||||
printf("\x1b[22;0H%s", description.data());
|
printf("\x1b[22;0H%s", description.data());
|
||||||
}
|
}
|
||||||
|
|
||||||
std::string GenerateRandomizer(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings) {
|
std::string GenerateRandomizer(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations) {
|
||||||
// if a blank seed was entered, make a random one
|
// if a blank seed was entered, make a random one
|
||||||
srand(time(NULL));
|
srand(time(NULL));
|
||||||
Settings::seed = std::to_string(rand());
|
Settings::seed = std::to_string(rand());
|
||||||
|
|
||||||
int ret = Playthrough::Playthrough_Init(std::hash<std::string>{}(Settings::seed), cvarSettings);
|
int ret = Playthrough::Playthrough_Init(std::hash<std::string>{}(Settings::seed), cvarSettings, excludedLocations);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
if (ret == -1) { // Failed to generate after 5 tries
|
if (ret == -1) { // Failed to generate after 5 tries
|
||||||
printf("\n\nFailed to generate after 5 tries.\nPress B to go back to the menu.\nA different seed might be "
|
printf("\n\nFailed to generate after 5 tries.\nPress B to go back to the menu.\nA different seed might be "
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
|
#include <set>
|
||||||
#include "soh/Enhancements/randomizer/randomizerTypes.h"
|
#include "soh/Enhancements/randomizer/randomizerTypes.h"
|
||||||
|
|
||||||
#define MAIN_MENU 0
|
#define MAIN_MENU 0
|
||||||
@ -45,7 +46,7 @@ void PrintResetToDefaultsMenu();
|
|||||||
void PrintGenerateMenu();
|
void PrintGenerateMenu();
|
||||||
void ClearDescription();
|
void ClearDescription();
|
||||||
void PrintOptionDescription();
|
void PrintOptionDescription();
|
||||||
std::string GenerateRandomizer(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings);
|
std::string GenerateRandomizer(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSetting, std::set<RandomizerCheck> excludedLocations);
|
||||||
std::string GetInput(const char* hintText);
|
std::string GetInput(const char* hintText);
|
||||||
|
|
||||||
extern void MenuInit();
|
extern void MenuInit();
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
namespace Playthrough {
|
namespace Playthrough {
|
||||||
|
|
||||||
int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings) {
|
int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations) {
|
||||||
// initialize the RNG with just the seed incase any settings need to be
|
// initialize the RNG with just the seed incase any settings need to be
|
||||||
// resolved to something random
|
// resolved to something random
|
||||||
Random_Init(seed);
|
Random_Init(seed);
|
||||||
@ -21,7 +21,7 @@ int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uin
|
|||||||
HintReset();
|
HintReset();
|
||||||
Areas::AccessReset();
|
Areas::AccessReset();
|
||||||
|
|
||||||
Settings::UpdateSettings(cvarSettings);
|
Settings::UpdateSettings(cvarSettings, excludedLocations);
|
||||||
// once the settings have been finalized turn them into a string for hashing
|
// once the settings have been finalized turn them into a string for hashing
|
||||||
std::string settingsStr;
|
std::string settingsStr;
|
||||||
for (Menu* menu : Settings::GetAllOptionMenus()) {
|
for (Menu* menu : Settings::GetAllOptionMenus()) {
|
||||||
|
@ -4,6 +4,6 @@
|
|||||||
#include "item_location.hpp"
|
#include "item_location.hpp"
|
||||||
|
|
||||||
namespace Playthrough {
|
namespace Playthrough {
|
||||||
int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings);
|
int Playthrough_Init(uint32_t seed, std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations);
|
||||||
int Playthrough_Repeat(int count = 1);
|
int Playthrough_Repeat(int count = 1);
|
||||||
}
|
}
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
|
|
||||||
#define TICKS_PER_SEC 268123480.0
|
#define TICKS_PER_SEC 268123480.0
|
||||||
|
|
||||||
void RandoMain::GenerateRando(std::unordered_map<RandomizerSettingKey, u8> cvarSettings) {
|
void RandoMain::GenerateRando(std::unordered_map<RandomizerSettingKey, u8> cvarSettings, std::set<RandomizerCheck> excludedLocations) {
|
||||||
HintTable_Init();
|
HintTable_Init();
|
||||||
ItemTable_Init();
|
ItemTable_Init();
|
||||||
LocationTable_Init();
|
LocationTable_Init();
|
||||||
@ -21,7 +21,7 @@ void RandoMain::GenerateRando(std::unordered_map<RandomizerSettingKey, u8> cvarS
|
|||||||
// std::string settingsFileName = "./randomizer/latest_settings.json";
|
// std::string settingsFileName = "./randomizer/latest_settings.json";
|
||||||
// CVar_SetString("gLoadedPreset", settingsFileName.c_str());
|
// CVar_SetString("gLoadedPreset", settingsFileName.c_str());
|
||||||
|
|
||||||
std::string fileName = Ship::GlobalCtx2::GetPathRelativeToAppDirectory(GenerateRandomizer(cvarSettings).c_str());
|
std::string fileName = Ship::GlobalCtx2::GetPathRelativeToAppDirectory(GenerateRandomizer(cvarSettings, excludedLocations).c_str());
|
||||||
CVar_SetString("gSpoilerLog", fileName.c_str());
|
CVar_SetString("gSpoilerLog", fileName.c_str());
|
||||||
|
|
||||||
CVar_Save();
|
CVar_Save();
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
namespace RandoMain {
|
namespace RandoMain {
|
||||||
void GenerateRando(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings);
|
void GenerateRando(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations);
|
||||||
}
|
}
|
||||||
|
@ -2483,7 +2483,7 @@ namespace Settings {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//Function to set flags depending on settings
|
//Function to set flags depending on settings
|
||||||
void UpdateSettings(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings) {
|
void UpdateSettings(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations) {
|
||||||
|
|
||||||
// RANDTODO: Switch this back once all logic options are implemented
|
// RANDTODO: Switch this back once all logic options are implemented
|
||||||
// Logic.SetSelectedIndex(cvarSettings[RSK_LOGIC_RULES]);
|
// Logic.SetSelectedIndex(cvarSettings[RSK_LOGIC_RULES]);
|
||||||
@ -2496,6 +2496,16 @@ namespace Settings {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
AddExcludedOptions();
|
||||||
|
for (auto locationKey : everyPossibleLocation) {
|
||||||
|
auto location = Location(locationKey);
|
||||||
|
if (excludedLocations.count(location->GetRandomizerCheck())) {
|
||||||
|
location->GetExcludedOption()->SetSelectedIndex(1);
|
||||||
|
} else {
|
||||||
|
location->GetExcludedOption()->SetSelectedIndex(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
OpenForest.SetSelectedIndex(cvarSettings[RSK_FOREST]);
|
OpenForest.SetSelectedIndex(cvarSettings[RSK_FOREST]);
|
||||||
OpenKakariko.SetSelectedIndex(cvarSettings[RSK_KAK_GATE]);
|
OpenKakariko.SetSelectedIndex(cvarSettings[RSK_KAK_GATE]);
|
||||||
ZorasFountain.SetSelectedIndex(cvarSettings[RSK_ZORAS_FOUNTAIN]);
|
ZorasFountain.SetSelectedIndex(cvarSettings[RSK_ZORAS_FOUNTAIN]);
|
||||||
@ -2581,31 +2591,6 @@ namespace Settings {
|
|||||||
|
|
||||||
// RANDOTODO implement chest shuffle with keysanity
|
// RANDOTODO implement chest shuffle with keysanity
|
||||||
// ShuffleChestMinigame.SetSelectedIndex(cvarSettings[RSK_SHUFFLE_CHEST_MINIGAME]);
|
// ShuffleChestMinigame.SetSelectedIndex(cvarSettings[RSK_SHUFFLE_CHEST_MINIGAME]);
|
||||||
|
|
||||||
AddExcludedOptions();
|
|
||||||
for (size_t i = 1; i < Settings::excludeLocationsOptionsVector.size(); i++) {
|
|
||||||
for (const auto& location : Settings::excludeLocationsOptionsVector[i]) {
|
|
||||||
// RANDOTODO implement the ability to exclude any location
|
|
||||||
if (location->GetName() == "Deku Theater Mask of\n Truth") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_DEKU_THEATER_MASK_OF_TRUTH]);
|
|
||||||
}
|
|
||||||
if (location->GetName() == "Kak 10 Gold Skulltula\n Reward") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_KAK_10_GOLD_SKULLTULA_REWARD]);
|
|
||||||
}
|
|
||||||
if (location->GetName() == "Kak 20 Gold Skulltula\n Reward") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_KAK_20_GOLD_SKULLTULA_REWARD]);
|
|
||||||
}
|
|
||||||
if (location->GetName() == "Kak 30 Gold Skulltula\n Reward") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_KAK_30_GOLD_SKULLTULA_REWARD]);
|
|
||||||
}
|
|
||||||
if (location->GetName() == "Kak 40 Gold Skulltula\n Reward") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_KAK_40_GOLD_SKULLTULA_REWARD]);
|
|
||||||
}
|
|
||||||
if (location->GetName() == "Kak 50 Gold Skulltula\n Reward") {
|
|
||||||
location->SetSelectedIndex(cvarSettings[RSK_EXCLUDE_KAK_50_GOLD_SKULLTULA_REWARD]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
RandomizeAllSettings(true); //now select any random options instead of just hiding them
|
RandomizeAllSettings(true); //now select any random options instead of just hiding them
|
||||||
|
|
||||||
|
@ -850,7 +850,7 @@ class Menu {
|
|||||||
};
|
};
|
||||||
|
|
||||||
namespace Settings {
|
namespace Settings {
|
||||||
void UpdateSettings(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings);
|
void UpdateSettings(std::unordered_map<RandomizerSettingKey, uint8_t> cvarSettings, std::set<RandomizerCheck> excludedLocations);
|
||||||
SettingsContext FillContext();
|
SettingsContext FillContext();
|
||||||
void InitSettings();
|
void InitSettings();
|
||||||
void SetDefaultSettings();
|
void SetDefaultSettings();
|
||||||
|
@ -16,11 +16,15 @@
|
|||||||
#include "Lib/ImGui/imgui_internal.h"
|
#include "Lib/ImGui/imgui_internal.h"
|
||||||
#include <soh/Enhancements/custom-message/CustomMessageManager.h>
|
#include <soh/Enhancements/custom-message/CustomMessageManager.h>
|
||||||
#include <soh/Enhancements/custom-message/CustomMessageTypes.h>
|
#include <soh/Enhancements/custom-message/CustomMessageTypes.h>
|
||||||
|
#include "randomizer_check_objects.h"
|
||||||
|
#include <sstream>
|
||||||
|
|
||||||
using json = nlohmann::json;
|
using json = nlohmann::json;
|
||||||
using namespace std::literals::string_literals;
|
using namespace std::literals::string_literals;
|
||||||
|
|
||||||
std::unordered_map<uint8_t, Sprite> gSeedTextures;
|
std::unordered_map<uint8_t, Sprite> gSeedTextures;
|
||||||
|
std::unordered_map<std::string, RandomizerCheck> SpoilerfileCheckNameToEnum;
|
||||||
|
std::set<RandomizerCheck> excludedLocations;
|
||||||
|
|
||||||
u8 generated;
|
u8 generated;
|
||||||
|
|
||||||
@ -58,6 +62,14 @@ Randomizer::Randomizer() {
|
|||||||
|
|
||||||
Sprite ootOcarinaSprite = { dgOcarinaofTimeIconTex, 32, 32, G_IM_FMT_RGBA, G_IM_SIZ_32b, 9 };
|
Sprite ootOcarinaSprite = { dgOcarinaofTimeIconTex, 32, 32, G_IM_FMT_RGBA, G_IM_SIZ_32b, 9 };
|
||||||
gSeedTextures[9] = ootOcarinaSprite;
|
gSeedTextures[9] = ootOcarinaSprite;
|
||||||
|
|
||||||
|
for (auto areaIt : RandomizerCheckObjects::GetAllRCObjects()) {
|
||||||
|
for (auto locationIt : areaIt.second) {
|
||||||
|
SpoilerfileCheckNameToEnum[locationIt.rcSpoilerName] = locationIt.rc;
|
||||||
|
}
|
||||||
|
SpoilerfileCheckNameToEnum["Invalid Location"] = RC_UNKNOWN_CHECK;
|
||||||
|
SpoilerfileCheckNameToEnum["Link's Pocket"] = RC_LINKS_POCKET;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Sprite* Randomizer::GetSeedTexture(uint8_t index) {
|
Sprite* Randomizer::GetSeedTexture(uint8_t index) {
|
||||||
@ -69,749 +81,6 @@ Randomizer::~Randomizer() {
|
|||||||
this->itemLocations.clear();
|
this->itemLocations.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unordered_map<std::string, RandomizerCheck> SpoilerfileCheckNameToEnum = {
|
|
||||||
{ "Invalid Location", RC_UNKNOWN_CHECK },
|
|
||||||
{ "KF Kokiri Sword Chest", RC_KF_KOKIRI_SWORD_CHEST },
|
|
||||||
{ "KF Mido Top Left Chest", RC_KF_MIDOS_TOP_LEFT_CHEST },
|
|
||||||
{ "KF Mido Top Right Chest", RC_KF_MIDOS_TOP_RIGHT_CHEST },
|
|
||||||
{ "KF Mido Bottom Left Chest", RC_KF_MIDOS_BOTTOM_LEFT_CHEST },
|
|
||||||
{ "KF Mido Bottom Right Chest", RC_KF_MIDOS_BOTTOM_RIGHT_CHEST },
|
|
||||||
{ "KF Storms Grotto Chest", RC_KF_STORMS_GROTTO_CHEST },
|
|
||||||
{ "LW Near Shortcuts Grotto Chest", RC_LW_NEAR_SHORTCUTS_GROTTO_CHEST },
|
|
||||||
{ "LW Skull Kid", RC_LW_SKULL_KID },
|
|
||||||
{ "LW Trade Cojiro", RC_LW_TRADE_COJIRO },
|
|
||||||
{ "LW Trade Odd Potion", RC_LW_TRADE_ODD_POTION },
|
|
||||||
{ "LW Ocarina Memory Game", RC_LW_OCARINA_MEMORY_GAME },
|
|
||||||
{ "LW Target in Woods", RC_LW_TARGET_IN_WOODS },
|
|
||||||
{ "LW Deku Scrub Near Deku Theater Right", RC_LW_DEKU_SCRUB_NEAR_DEKU_THEATER_RIGHT },
|
|
||||||
{ "LW Deku Scrub Near Deku Theater Left", RC_LW_DEKU_SCRUB_NEAR_DEKU_THEATER_LEFT },
|
|
||||||
{ "LW Deku Scrub Near Bridge", RC_LW_DEKU_SCRUB_NEAR_BRIDGE },
|
|
||||||
{ "LW Deku Scrub Grotto Rear", RC_LW_DEKU_SCRUB_GROTTO_REAR },
|
|
||||||
{ "LW Deku Scrub Grotto Front", RC_LW_DEKU_SCRUB_GROTTO_FRONT },
|
|
||||||
{ "Deku Theater Skull Mask", RC_DEKU_THEATER_SKULL_MASK },
|
|
||||||
{ "Deku Theater Mask of Truth", RC_DEKU_THEATER_MASK_OF_TRUTH },
|
|
||||||
{ "SFM Wolfos Grotto Chest", RC_SFM_WOLFOS_GROTTO_CHEST },
|
|
||||||
{ "SFM Deku Scrub Grotto Rear", RC_SFM_DEKU_SCRUB_GROTTO_REAR },
|
|
||||||
{ "SFM Deku Scrub Grotto Front", RC_SFM_DEKU_SCRUB_GROTTO_FRONT },
|
|
||||||
{ "HF Southeast Grotto Chest", RC_HF_SOUTHEAST_GROTTO_CHEST },
|
|
||||||
{ "HF Open Grotto Chest", RC_HF_OPEN_GROTTO_CHEST },
|
|
||||||
{ "HF Near Market Grotto Chest", RC_HF_NEAR_MARKET_GROTTO_CHEST },
|
|
||||||
{ "HF Ocarina of Time Item", RC_HF_OCARINA_OF_TIME_ITEM },
|
|
||||||
{ "HF Tektite Grotto Freestanding PoH", RC_HF_TEKTITE_GROTTO_FREESTANDING_POH },
|
|
||||||
{ "HF Deku Scrub Grotto", RC_HF_DEKU_SCRUB_GROTTO },
|
|
||||||
{ "LH Child Fishing", RC_LH_CHILD_FISHING },
|
|
||||||
{ "LH Adult Fishing", RC_LH_ADULT_FISHING },
|
|
||||||
{ "LH Lab Dive", RC_LH_LAB_DIVE },
|
|
||||||
{ "LH Lab Trade Eyeball Frog", RC_LH_TRADE_FROG },
|
|
||||||
{ "LH Underwater Item", RC_LH_UNDERWATER_ITEM },
|
|
||||||
{ "LH Sun", RC_LH_SUN },
|
|
||||||
{ "LH Freestanding PoH", RC_LH_FREESTANDING_POH },
|
|
||||||
{ "LH Deku Scrub Grotto Left", RC_LH_DEKU_SCRUB_GROTTO_LEFT },
|
|
||||||
{ "LH Deku Scrub Grotto Right", RC_LH_DEKU_SCRUB_GROTTO_RIGHT },
|
|
||||||
{ "LH Deku Scrub Grotto Center", RC_LH_DEKU_SCRUB_GROTTO_CENTER },
|
|
||||||
{ "GV Chest", RC_GV_CHEST },
|
|
||||||
{ "GV Trade Saw", RC_GV_TRADE_SAW },
|
|
||||||
{ "GV Waterfall Freestanding PoH", RC_GV_WATERFALL_FREESTANDING_POH },
|
|
||||||
{ "GV Crate Freestanding PoH", RC_GV_CRATE_FREESTANDING_POH },
|
|
||||||
{ "GV Deku Scrub Grotto Rear", RC_GV_DEKU_SCRUB_GROTTO_REAR },
|
|
||||||
{ "GV Deku Scrub Grotto Front", RC_GV_DEKU_SCRUB_GROTTO_FRONT },
|
|
||||||
{ "GF Chest", RC_GF_CHEST },
|
|
||||||
{ "GF HBA 1000 Points", RC_GF_HBA_1000_POINTS },
|
|
||||||
{ "GF HBA 1500 Points", RC_GF_HBA_1500_POINTS },
|
|
||||||
{ "GF Gerudo Membership Card", RC_GF_GERUDO_MEMBERSHIP_CARD },
|
|
||||||
{ "GF North F1 Carpenter", RC_GF_NORTH_F1_CARPENTER },
|
|
||||||
{ "GF North F2 Carpenter", RC_GF_NORTH_F2_CARPENTER },
|
|
||||||
{ "GF South F1 Carpenter", RC_GF_SOUTH_F1_CARPENTER },
|
|
||||||
{ "GF South F2 Carpenter", RC_GF_SOUTH_F2_CARPENTER },
|
|
||||||
{ "Wasteland Chest", RC_WASTELAND_CHEST },
|
|
||||||
{ "Wasteland Carpet Salesman", RC_WASTELAND_BOMBCHU_SALESMAN },
|
|
||||||
{ "Colossus Freestanding PoH", RC_COLOSSUS_FREESTANDING_POH },
|
|
||||||
{ "Colossus Deku Scrub Grotto Rear", RC_COLOSSUS_DEKU_SCRUB_GROTTO_REAR },
|
|
||||||
{ "Colossus Deku Scrub Grotto Front", RC_COLOSSUS_DEKU_SCRUB_GROTTO_FRONT },
|
|
||||||
{ "MK Treasure Chest Game Reward", RC_MARKET_TREASURE_CHEST_GAME_REWARD },
|
|
||||||
{ "MK Bombchu Bowling First Prize", RC_MARKET_BOMBCHU_BOWLING_FIRST_PRIZE },
|
|
||||||
{ "MK Bombchu Bowling Second Prize", RC_MARKET_BOMBCHU_BOWLING_SECOND_PRIZE },
|
|
||||||
{ "MK Bombchu Bowling Bombchus", RC_UNKNOWN_CHECK },
|
|
||||||
{ "MK Lost Dog", RC_MARKET_LOST_DOG },
|
|
||||||
{ "MK Shooting Gallery", RC_MARKET_SHOOTING_GALLERY_REWARD },
|
|
||||||
{ "MK 10 Big Poes", RC_MARKET_10_BIG_POES },
|
|
||||||
{ "MK Chest Game First Room Chest", RC_MARKET_TREASURE_CHEST_GAME_ITEM_1 },
|
|
||||||
{ "MK Chest Game Second Room Chest", RC_MARKET_TREASURE_CHEST_GAME_ITEM_2 },
|
|
||||||
{ "MK Chest Game Third Room Chest", RC_MARKET_TREASURE_CHEST_GAME_ITEM_3 },
|
|
||||||
{ "MK Chest Game Fourth Room Chest", RC_MARKET_TREASURE_CHEST_GAME_ITEM_4 },
|
|
||||||
{ "MK Chest Game Fifth Room Chest", RC_MARKET_TREASURE_CHEST_GAME_ITEM_5 },
|
|
||||||
{ "HC Malon Egg", RC_HC_MALON_EGG },
|
|
||||||
{ "HC Zeldas Letter", RC_HC_ZELDAS_LETTER },
|
|
||||||
{ "Kak Redead Grotto Chest", RC_KAK_REDEAD_GROTTO_CHEST },
|
|
||||||
{ "Kak Open Grotto Chest", RC_KAK_OPEN_GROTTO_CHEST },
|
|
||||||
{ "Kak 10 Gold Skulltula Reward", RC_KAK_10_GOLD_SKULLTULA_REWARD },
|
|
||||||
{ "Kak 20 Gold Skulltula Reward", RC_KAK_20_GOLD_SKULLTULA_REWARD },
|
|
||||||
{ "Kak 30 Gold Skulltula Reward", RC_KAK_30_GOLD_SKULLTULA_REWARD },
|
|
||||||
{ "Kak 40 Gold Skulltula Reward", RC_KAK_40_GOLD_SKULLTULA_REWARD },
|
|
||||||
{ "Kak 50 Gold Skulltula Reward", RC_KAK_50_GOLD_SKULLTULA_REWARD },
|
|
||||||
{ "Kak Man on Roof", RC_KAK_MAN_ON_ROOF },
|
|
||||||
{ "Kak Shooting Gallery Reward", RC_KAK_SHOOTING_GALLERY_REWARD },
|
|
||||||
{ "Kak Trade Odd Mushroom", RC_KAK_TRADE_ODD_MUSHROOM },
|
|
||||||
{ "Kak Anju as Adult", RC_KAK_ANJU_AS_ADULT },
|
|
||||||
{ "Kak Anju as Child", RC_KAK_ANJU_AS_CHILD },
|
|
||||||
{ "Kak Trade Pocket Cucco", RC_KAK_TRADE_POCKET_CUCCO },
|
|
||||||
{ "Kak Impas House Freestanding PoH", RC_KAK_IMPAS_HOUSE_FREESTANDING_POH },
|
|
||||||
{ "Kak Windmill Freestanding PoH", RC_KAK_WINDMILL_FREESTANDING_POH },
|
|
||||||
{ "GY Shield Grave Chest", RC_GRAVEYARD_SHIELD_GRAVE_CHEST },
|
|
||||||
{ "GY Heart Piece Grave Chest", RC_GRAVEYARD_HEART_PIECE_GRAVE_CHEST },
|
|
||||||
{ "GY Composers Grave Chest", RC_GRAVEYARD_ROYAL_FAMILYS_TOMB_CHEST },
|
|
||||||
{ "GY Hookshot Chest", RC_GRAVEYARD_HOOKSHOT_CHEST },
|
|
||||||
{ "GY Dampe Race Freestanding PoH", RC_GRAVEYARD_DAMPE_RACE_FREESTANDING_POH },
|
|
||||||
{ "GY Freestanding PoH", RC_GRAVEYARD_FREESTANDING_POH },
|
|
||||||
{ "GY Dampe Gravedigging Tour", RC_GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR },
|
|
||||||
{ "DMT Chest", RC_DMT_CHEST },
|
|
||||||
{ "DMT Storms Grotto Chest", RC_DMT_STORMS_GROTTO_CHEST },
|
|
||||||
{ "DMT Trade Broken Sword", RC_DMT_TRADE_BROKEN_SWORD },
|
|
||||||
{ "DMT Trade Eyedrops", RC_DMT_TRADE_EYEDROPS },
|
|
||||||
{ "DMT Trade Claim Check", RC_DMT_TRADE_CLAIM_CHECK },
|
|
||||||
{ "DMT Freestanding PoH", RC_DMT_FREESTANDING_POH },
|
|
||||||
{ "GC Maze Left Chest", RC_GC_MAZE_LEFT_CHEST },
|
|
||||||
{ "GC Maze Right Chest", RC_GC_MAZE_RIGHT_CHEST },
|
|
||||||
{ "GC Maze Center Chest", RC_GC_MAZE_CENTER_CHEST },
|
|
||||||
{ "GC Rolling Goron as Child", RC_GC_ROLLING_GORON_AS_CHILD },
|
|
||||||
{ "GC Rolling Goron as Adult", RC_GC_ROLLING_GORON_AS_ADULT },
|
|
||||||
{ "GC Darunias Joy", RC_GC_DARUNIAS_JOY },
|
|
||||||
{ "GC Pot Freestanding PoH", RC_GC_POT_FREESTANDING_POH },
|
|
||||||
{ "GC Deku Scrub Grotto Left", RC_GC_DEKU_SCRUB_GROTTO_LEFT },
|
|
||||||
{ "GC Deku Scrub Grotto Right", RC_GC_DEKU_SCRUB_GROTTO_RIGHT },
|
|
||||||
{ "GC Deku Scrub Grotto Center", RC_GC_DEKU_SCRUB_GROTTO_CENTER },
|
|
||||||
{ "GC Medigoron", RC_GC_MEDIGORON },
|
|
||||||
{ "DMC Upper Grotto Chest", RC_DMC_UPPER_GROTTO_CHEST },
|
|
||||||
{ "DMC Wall Freestanding PoH", RC_DMC_WALL_FREESTANDING_POH },
|
|
||||||
{ "DMC Volcano Freestanding PoH", RC_DMC_VOLCANO_FREESTANDING_POH },
|
|
||||||
{ "DMC Deku Scrub", RC_DMC_DEKU_SCRUB },
|
|
||||||
{ "DMC Deku Scrub Grotto Left", RC_DMC_DEKU_SCRUB_GROTTO_LEFT },
|
|
||||||
{ "DMC Deku Scrub Grotto Right", RC_DMC_DEKU_SCRUB_GROTTO_RIGHT },
|
|
||||||
{ "DMC Deku Scrub Grotto Center", RC_DMC_DEKU_SCRUB_GROTTO_CENTER },
|
|
||||||
{ "ZR Open Grotto Chest", RC_ZR_OPEN_GROTTO_CHEST },
|
|
||||||
{ "ZR Magic Bean Salesman", RC_ZR_MAGIC_BEAN_SALESMAN },
|
|
||||||
{ "ZR Frogs Zelda's Lullaby", RC_ZR_FROGS_ZELDAS_LULLABY },
|
|
||||||
{ "ZR Frogs Epona's Song", RC_ZR_FROGS_EPONAS_SONG },
|
|
||||||
{ "ZR Frogs Saria's Song", RC_ZR_FROGS_SARIAS_SONG },
|
|
||||||
{ "ZR Frogs Sun's Song", RC_ZR_FROGS_SUNS_SONG },
|
|
||||||
{ "ZR Frogs Song of Time", RC_ZR_FROGS_SONG_OF_TIME },
|
|
||||||
{ "ZR Frogs in the Rain", RC_ZR_FROGS_IN_THE_RAIN },
|
|
||||||
{ "ZR Frogs Ocarina Game", RC_ZR_FROGS_OCARINA_GAME },
|
|
||||||
{ "ZR Near Open Grotto Freestanding PoH", RC_ZR_NEAR_OPEN_GROTTO_FREESTANDING_POH },
|
|
||||||
{ "ZR Near Domain Freestanding PoH", RC_ZR_NEAR_DOMAIN_FREESTANDING_POH },
|
|
||||||
{ "ZR Deku Scrub Grotto Rear", RC_ZR_DEKU_SCRUB_GROTTO_REAR },
|
|
||||||
{ "ZR Deku Scrub Grotto Front", RC_ZR_DEKU_SCRUB_GROTTO_FRONT },
|
|
||||||
{ "ZD Chest", RC_ZD_CHEST },
|
|
||||||
{ "ZD Diving Minigame", RC_ZD_DIVING_MINIGAME },
|
|
||||||
{ "ZD King Zora Thawed", RC_ZD_KING_ZORA_THAWED },
|
|
||||||
{ "ZD Trade Prescription", RC_ZD_TRADE_PRESCRIPTION },
|
|
||||||
{ "ZF Iceberg Freestanding PoH", RC_ZF_ICEBERC_FREESTANDING_POH },
|
|
||||||
{ "ZF Bottom Freestanding PoH", RC_ZF_BOTTOM_FREESTANDING_POH },
|
|
||||||
{ "LLR Talons Chickens", RC_LLR_TALONS_CHICKENS },
|
|
||||||
{ "LLR Freestanding PoH", RC_LLR_FREESTANDING_POH },
|
|
||||||
{ "LLR Deku Scrub Grotto Left", RC_LLR_DEKU_SCRUB_GROTTO_LEFT },
|
|
||||||
{ "LLR Deku Scrub Grotto Right", RC_LLR_DEKU_SCRUB_GROTTO_RIGHT },
|
|
||||||
{ "LLR Deku Scrub Grotto Center", RC_LLR_DEKU_SCRUB_GROTTO_CENTER },
|
|
||||||
{ "Deku Tree Map Chest", RC_DEKU_TREE_MAP_CHEST },
|
|
||||||
{ "Deku Tree Compass Chest", RC_DEKU_TREE_COMPASS_CHEST },
|
|
||||||
{ "Deku Tree Compass Room Side Chest", RC_DEKU_TREE_COMPASS_ROOM_SIDE_CHEST },
|
|
||||||
{ "Deku Tree Basement Chest", RC_DEKU_TREE_BASEMENT_CHEST },
|
|
||||||
{ "Deku Tree Slingshot Chest", RC_DEKU_TREE_SLINGSHOT_CHEST },
|
|
||||||
{ "Deku Tree Slingshot Room Side Chest", RC_DEKU_TREE_SLINGSHOT_ROOM_SIDE_CHEST },
|
|
||||||
{ "Deku Tree MQ Map Chest", RC_DEKU_TREE_MQ_MAP_CHEST },
|
|
||||||
{ "Deku Tree MQ Compass Chest", RC_DEKU_TREE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Deku Tree MQ Slingshot Chest", RC_DEKU_TREE_MQ_SLINGSHOT_CHEST },
|
|
||||||
{ "Deku Tree MQ Slingshot Room Back Chest", RC_DEKU_TREE_MQ_SLINGSHOT_ROOM_BACK_CHEST },
|
|
||||||
{ "Deku Tree MQ Basement Chest", RC_DEKU_TREE_MQ_BASEMENT_CHEST },
|
|
||||||
{ "Deku Tree MQ Before Spinning Log Chest", RC_DEKU_TREE_MQ_BEFORE_SPINNING_LOG_CHEST },
|
|
||||||
{ "Deku Tree MQ After Spinning Log Chest", RC_DEKU_TREE_MQ_AFTER_SPINNING_LOG_CHEST },
|
|
||||||
{ "Deku Tree MQ Deku Scrub", RC_DEKU_TREE_MQ_DEKU_SCRUB },
|
|
||||||
{ "Dodongos Cavern Boss Room Chest", RC_DODONGOS_CAVERN_BOSS_ROOM_CHEST },
|
|
||||||
{ "Dodongos Cavern Map Chest", RC_DODONGOS_CAVERN_MAP_CHEST },
|
|
||||||
{ "Dodongos Cavern Compass Chest", RC_DODONGOS_CAVERN_COMPASS_CHEST },
|
|
||||||
{ "Dodongos Cavern Bomb Flower Platform Chest", RC_DODONGOS_CAVERN_BOMB_FLOWER_PLATFORM_CHEST },
|
|
||||||
{ "Dodongos Cavern Bomb Bag Chest", RC_DODONGOS_CAVERN_BOMB_BAG_CHEST },
|
|
||||||
{ "Dodongos Cavern End Of Bridge Chest", RC_DODONGOS_CAVERN_END_OF_BRIDGE_CHEST },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Near Bomb Bag Left", RC_DODONGOS_CAVERN_DEKU_SCRUB_NEAR_BOMB_BAG_LEFT },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Side Room Near Dodongos", RC_DODONGOS_CAVERN_DEKU_SCRUB_SIDE_ROOM_NEAR_DODONGOS },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Near Bomb Bag Right", RC_DODONGOS_CAVERN_DEKU_SCRUB_NEAR_BOMB_BAG_RIGHT },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Lobby", RC_DODONGOS_CAVERN_DEKU_SCRUB_LOBBY },
|
|
||||||
{ "Dodongos Cavern MQ Map Chest", RC_DODONGOS_CAVERN_MQ_MAP_CHEST },
|
|
||||||
{ "Dodongos Cavern MQ Bomb Bag Chest", RC_DODONGOS_CAVERN_MQ_BOMB_BAG_CHEST },
|
|
||||||
{ "Dodongos Cavern MQ Compass Chest", RC_DODONGOS_CAVERN_MQ_COMPASS_CHEST },
|
|
||||||
{ "Dodongos Cavern MQ Larvae Room Chest", RC_DODONGOS_CAVERN_MQ_LARVAE_ROOM_CHEST },
|
|
||||||
{ "Dodongos Cavern MQ Torch Puzzle Room Chest", RC_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_ROOM_CHEST },
|
|
||||||
{ "Dodongos Cavern MQ Under Grave Chest", RC_DODONGOS_CAVERN_MQ_UNDER_GRAVE_CHEST },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Lobby Rear", RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_REAR },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Lobby Front", RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_FRONT },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Staircase", RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_STAIRCASE },
|
|
||||||
{ "Dodongos Cavern Deku Scrub Side Room Near Lower Lizalfos",
|
|
||||||
RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_SIDE_ROOM_NEAR_LOWER_LIZALFOS },
|
|
||||||
{ "Jabu Jabus Belly Map Chest", RC_JABU_JABUS_BELLY_MAP_CHEST },
|
|
||||||
{ "Jabu Jabus Belly Compass Chest", RC_JABU_JABUS_BELLY_COMPASS_CHEST },
|
|
||||||
{ "Jabu Jabus Belly Boomerang Chest", RC_JABU_JABUS_BELLY_BOOMERANG_CHEST },
|
|
||||||
{ "Jabu Jabus Belly Deku Scrub", RC_JABU_JABUS_BELLY_DEKU_SCRUB },
|
|
||||||
{ "Jabu Jabus Belly MQ First Room Side Chest", RC_JABU_JABUS_BELLY_MQ_FIRST_ROOM_SIDE_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Map Chest", RC_JABU_JABUS_BELLY_MQ_MAP_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Second Room Lower Chest", RC_JABU_JABUS_BELLY_MQ_SECOND_ROOM_LOWER_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Compass Chest", RC_JABU_JABUS_BELLY_MQ_COMPASS_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Second Room Upper Chest", RC_JABU_JABUS_BELLY_MQ_SECOND_ROOM_UPPER_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Basement Near Switches Chest", RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_SWITCHES_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Basement Near Vines Chest", RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_VINES_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Near Boss Chest", RC_JABU_JABUS_BELLY_MQ_NEAR_BOSS_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Falling Like Like Room Chest", RC_JABU_JABUS_BELLY_MQ_FALLING_LIKE_LIKE_ROOM_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Boomerang Room Small Chest", RC_JABU_JABUS_BELLY_MQ_BOOMERANG_ROOM_SMALL_CHEST },
|
|
||||||
{ "Jabu Jabus Belly MQ Boomerang Chest", RC_JABU_JABUS_BELLY_MQ_BOOMERANG_CHEST },
|
|
||||||
{ "Forest Temple First Room Chest", RC_FOREST_TEMPLE_FIRST_ROOM_CHEST },
|
|
||||||
{ "Forest Temple First Stalfos Chest", RC_FOREST_TEMPLE_FIRST_STALFOS_CHEST },
|
|
||||||
{ "Forest Temple Raised Island Courtyard Chest", RC_FOREST_TEMPLE_RAISED_ISLAND_COURTYARD_CHEST },
|
|
||||||
{ "Forest Temple Map Chest", RC_FOREST_TEMPLE_MAP_CHEST },
|
|
||||||
{ "Forest Temple Well Chest", RC_FOREST_TEMPLE_WELL_CHEST },
|
|
||||||
{ "Forest Temple Falling Ceiling Room Chest", RC_FOREST_TEMPLE_FALLING_CEILING_ROOM_CHEST },
|
|
||||||
{ "Forest Temple Eye Switch Chest", RC_FOREST_TEMPLE_EYE_SWITCH_CHEST },
|
|
||||||
{ "Forest Temple Boss Key Chest", RC_FOREST_TEMPLE_BOSS_KEY_CHEST },
|
|
||||||
{ "Forest Temple Floormaster Chest", RC_FOREST_TEMPLE_FLOORMASTER_CHEST },
|
|
||||||
{ "Forest Temple Bow Chest", RC_FOREST_TEMPLE_BOW_CHEST },
|
|
||||||
{ "Forest Temple Red Poe Chest", RC_FOREST_TEMPLE_RED_POE_CHEST },
|
|
||||||
{ "Forest Temple Blue Poe Chest", RC_FOREST_TEMPLE_BLUE_POE_CHEST },
|
|
||||||
{ "Forest Temple Basement Chest", RC_FOREST_TEMPLE_BASEMENT_CHEST },
|
|
||||||
{ "Forest Temple MQ First Room Chest", RC_FOREST_TEMPLE_MQ_FIRST_ROOM_CHEST },
|
|
||||||
{ "Forest Temple MQ Wolfos Chest", RC_FOREST_TEMPLE_MQ_WOLFOS_CHEST },
|
|
||||||
{ "Forest Temple MQ Bow Chest", RC_FOREST_TEMPLE_MQ_BOW_CHEST },
|
|
||||||
{ "Forest Temple MQ Raised Island Courtyard Lower Chest", RC_FOREST_TEMPLE_MQ_RAISED_ISLAND_COURTYARD_LOWER_CHEST },
|
|
||||||
{ "Forest Temple MQ Raised Island Courtyard Upper Chest", RC_FOREST_TEMPLE_MQ_RAISED_ISLAND_COURTYARD_UPPER_CHEST },
|
|
||||||
{ "Forest Temple MQ Well Chest", RC_FOREST_TEMPLE_MQ_WELL_CHEST },
|
|
||||||
{ "Forest Temple MQ Map Chest", RC_FOREST_TEMPLE_MQ_MAP_CHEST },
|
|
||||||
{ "Forest Temple MQ Compass Chest", RC_FOREST_TEMPLE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Forest Temple MQ Falling Ceiling Room Chest", RC_FOREST_TEMPLE_MQ_FALLING_CEILING_ROOM_CHEST },
|
|
||||||
{ "Forest Temple MQ Basement Chest", RC_FOREST_TEMPLE_MQ_BASEMENT_CHEST },
|
|
||||||
{ "Forest Temple MQ Redead Chest", RC_FOREST_TEMPLE_MQ_REDEAD_CHEST },
|
|
||||||
{ "Forest Temple MQ Boss Key Chest", RC_FOREST_TEMPLE_MQ_BOSS_KEY_CHEST },
|
|
||||||
{ "Fire Temple Near Boss Chest", RC_FIRE_TEMPLE_NEAR_BOSS_CHEST },
|
|
||||||
{ "Fire Temple Flare Dancer Chest", RC_FIRE_TEMPLE_FLARE_DANCER_CHEST },
|
|
||||||
{ "Fire Temple Boss Key Chest", RC_FIRE_TEMPLE_BOSS_KEY_CHEST },
|
|
||||||
{ "Fire Temple Big Lava Room Blocked Door Chest", RC_FIRE_TEMPLE_BIG_LAVA_ROOM_BLOCKED_DOOR_CHEST },
|
|
||||||
{ "Fire Temple Big Lava Room Lower Open Door Chest", RC_FIRE_TEMPLE_BIG_LAVA_ROOM_LOWER_OPEN_DOOR_CHEST },
|
|
||||||
{ "Fire Temple Boulder Maze Lower Chest", RC_FIRE_TEMPLE_BOULDER_MAZE_LOWER_CHEST },
|
|
||||||
{ "Fire Temple Boulder Maze Upper Chest", RC_FIRE_TEMPLE_BOULDER_MAZE_UPPER_CHEST },
|
|
||||||
{ "Fire Temple Boulder Maze Side Room Chest", RC_FIRE_TEMPLE_BOULDER_MAZE_SIDE_ROOM_CHEST },
|
|
||||||
{ "Fire Temple Boulder Maze Shortcut Chest", RC_FIRE_TEMPLE_BOULDER_MAZE_SHORTCUT_CHEST },
|
|
||||||
{ "Fire Temple Scarecrow Chest", RC_FIRE_TEMPLE_SCARECROW_CHEST },
|
|
||||||
{ "Fire Temple Map Chest", RC_FIRE_TEMPLE_MAP_CHEST },
|
|
||||||
{ "Fire Temple Compass Chest", RC_FIRE_TEMPLE_COMPASS_CHEST },
|
|
||||||
{ "Fire Temple Highest Goron Chest", RC_FIRE_TEMPLE_HIGHEST_GORON_CHEST },
|
|
||||||
{ "Fire Temple Megaton Hammer Chest", RC_FIRE_TEMPLE_MEGATON_HAMMER_CHEST },
|
|
||||||
{ "Fire Temple MQ Near Boss Chest", RC_FIRE_TEMPLE_MQ_NEAR_BOSS_CHEST },
|
|
||||||
{ "Fire Temple MQ Megaton Hammer Chest", RC_FIRE_TEMPLE_MQ_MEGATON_HAMMER_CHEST },
|
|
||||||
{ "Fire Temple MQ Compass Chest", RC_FIRE_TEMPLE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Fire Temple MQ Lizalfos Maze Lower Chest", RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_LOWER_CHEST },
|
|
||||||
{ "Fire Temple MQ Lizalfos Maze Upper Chest", RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_UPPER_CHEST },
|
|
||||||
{ "Fire Temple MQ Chest on Fire", RC_FIRE_TEMPLE_MQ_CHEST_ON_FIRE },
|
|
||||||
{ "Fire Temple MQ Map Room Side Chest", RC_FIRE_TEMPLE_MQ_MAP_ROOM_SIDE_CHEST },
|
|
||||||
{ "Fire Temple MQ Map Chest", RC_FIRE_TEMPLE_MQ_MAP_CHEST },
|
|
||||||
{ "Fire Temple MQ Boss Key Chest", RC_FIRE_TEMPLE_MQ_BOSS_KEY_CHEST },
|
|
||||||
{ "Fire Temple MQ Big Lava Room Blocked Door Chest", RC_FIRE_TEMPLE_MQ_BIG_LAVA_ROOM_BLOCKED_DOOR_CHEST },
|
|
||||||
{ "Fire Temple MQ Lizalfos Maze Side Room Chest", RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_SIDE_ROOM_CHEST },
|
|
||||||
{ "Fire Temple MQ Freestanding Key", RC_FIRE_TEMPLE_MQ_FREESTANDING_KEY },
|
|
||||||
{ "Water Temple Map Chest", RC_WATER_TEMPLE_MAP_CHEST },
|
|
||||||
{ "Water Temple Compass Chest", RC_WATER_TEMPLE_COMPASS_CHEST },
|
|
||||||
{ "Water Temple Torches Chest", RC_WATER_TEMPLE_TORCHES_CHEST },
|
|
||||||
{ "Water Temple Dragon Chest", RC_WATER_TEMPLE_DRAGON_CHEST },
|
|
||||||
{ "Water Temple Central Bow Target Chest", RC_WATER_TEMPLE_CENTRAL_BOW_TARGET_CHEST },
|
|
||||||
{ "Water Temple Central Pillar Chest", RC_WATER_TEMPLE_CENTRAL_PILLAR_CHEST },
|
|
||||||
{ "Water Temple Cracked Wall Chest", RC_WATER_TEMPLE_CRACKED_WALL_CHEST },
|
|
||||||
{ "Water Temple Boss Key Chest", RC_WATER_TEMPLE_BOSS_KEY_CHEST },
|
|
||||||
{ "Water Temple Longshot Chest", RC_WATER_TEMPLE_LONGSHOT_CHEST },
|
|
||||||
{ "Water Temple River Chest", RC_WATER_TEMPLE_RIVER_CHEST },
|
|
||||||
{ "Water Temple MQ Central Pillar Chest", RC_WATER_TEMPLE_MQ_CENTRAL_PILLAR_CHEST },
|
|
||||||
{ "Water Temple MQ Boss Key Chest", RC_WATER_TEMPLE_MQ_BOSS_KEY_CHEST },
|
|
||||||
{ "Water Temple MQ Longshot Chest", RC_WATER_TEMPLE_MQ_LONGSHOT_CHEST },
|
|
||||||
{ "Water Temple MQ Compass Chest", RC_WATER_TEMPLE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Water Temple MQ Map Chest", RC_WATER_TEMPLE_MQ_MAP_CHEST },
|
|
||||||
{ "Water Temple MQ Freestanding Key", RC_WATER_TEMPLE_MQ_FREESTANDING_KEY },
|
|
||||||
{ "Spirit Temple Silver Gauntlets Chest", RC_SPIRIT_TEMPLE_SILVER_GAUNTLETS_CHEST },
|
|
||||||
{ "Spirit Temple Mirror Shield Chest", RC_SPIRIT_TEMPLE_MIRROR_SHIELD_CHEST },
|
|
||||||
{ "Spirit Temple Child Bridge Chest", RC_SPIRIT_TEMPLE_CHILD_BRIDGE_CHEST },
|
|
||||||
{ "Spirit Temple Child Early Torches Chest", RC_SPIRIT_TEMPLE_CHILD_EARLY_TORCHES_CHEST },
|
|
||||||
{ "Spirit Temple Compass Chest", RC_SPIRIT_TEMPLE_COMPASS_CHEST },
|
|
||||||
{ "Spirit Temple Early Adult Right Chest", RC_SPIRIT_TEMPLE_EARLY_ADULT_RIGHT_CHEST },
|
|
||||||
{ "Spirit Temple First Mirror Left Chest", RC_SPIRIT_TEMPLE_FIRST_MIRROR_LEFT_CHEST },
|
|
||||||
{ "Spirit Temple First Mirror Right Chest", RC_SPIRIT_TEMPLE_FIRST_MIRROR_RIGHT_CHEST },
|
|
||||||
{ "Spirit Temple Map Chest", RC_SPIRIT_TEMPLE_MAP_CHEST },
|
|
||||||
{ "Spirit Temple Child Climb North Chest", RC_SPIRIT_TEMPLE_CHILD_CLIMB_NORTH_CHEST },
|
|
||||||
{ "Spirit Temple Child Climb East Chest", RC_SPIRIT_TEMPLE_CHILD_CLIMB_EAST_CHEST },
|
|
||||||
{ "Spirit Temple Sun Block Room Chest", RC_SPIRIT_TEMPLE_SUN_BLOCK_ROOM_CHEST },
|
|
||||||
{ "Spirit Temple Statue Room Hand Chest", RC_SPIRIT_TEMPLE_STATUE_ROOM_HAND_CHEST },
|
|
||||||
{ "Spirit Temple Statue Room Northeast Chest", RC_SPIRIT_TEMPLE_STATUE_ROOM_NORTHEAST_CHEST },
|
|
||||||
{ "Spirit Temple Near Four Armos Chest", RC_SPIRIT_TEMPLE_NEAR_FOUR_ARMOS_CHEST },
|
|
||||||
{ "Spirit Temple Hallway Right Invisible Chest", RC_SPIRIT_TEMPLE_HALLWAY_RIGHT_INVISIBLE_CHEST },
|
|
||||||
{ "Spirit Temple Hallway Left Invisible Chest", RC_SPIRIT_TEMPLE_HALLWAY_LEFT_INVISIBLE_CHEST },
|
|
||||||
{ "Spirit Temple Boss Key Chest", RC_SPIRIT_TEMPLE_BOSS_KEY_CHEST },
|
|
||||||
{ "Spirit Temple Topmost Chest", RC_SPIRIT_TEMPLE_TOPMOST_CHEST },
|
|
||||||
{ "Spirit Temple MQ Entrance Front Left Chest", RC_SPIRIT_TEMPLE_MQ_ENTRANCE_FRONT_LEFT_CHEST },
|
|
||||||
{ "Spirit Temple MQ Entrance Back Right Chest", RC_SPIRIT_TEMPLE_MQ_ENTRANCE_BACK_RIGHT_CHEST },
|
|
||||||
{ "Spirit Temple MQ Entrance Front Right Chest", RC_SPIRIT_TEMPLE_MQ_ENTRANCE_FRONT_RIGHT_CHEST },
|
|
||||||
{ "Spirit Temple MQ Entrance Back Left Chest", RC_SPIRIT_TEMPLE_MQ_ENTRANCE_BACK_LEFT_CHEST },
|
|
||||||
{ "Spirit Temple MQ Child Hammer Switch Chest", RC_SPIRIT_TEMPLE_MQ_CHILD_HAMMER_SWITCH_CHEST },
|
|
||||||
{ "Spirit Temple MQ Map Chest", RC_SPIRIT_TEMPLE_MQ_MAP_CHEST },
|
|
||||||
{ "Spirit Temple MQ Map Room Enemy Chest", RC_SPIRIT_TEMPLE_MQ_MAP_ROOM_ENEMY_CHEST },
|
|
||||||
{ "Spirit Temple MQ Child Climb North Chest", RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_NORTH_CHEST },
|
|
||||||
{ "Spirit Temple MQ Child Climb South Chest", RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_SOUTH_CHEST },
|
|
||||||
{ "Spirit Temple MQ Compass Chest", RC_SPIRIT_TEMPLE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Spirit Temple MQ Statue Room Lullaby Chest", RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_LULLABY_CHEST },
|
|
||||||
{ "Spirit Temple MQ Statue Room Invisible Chest", RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_INVISIBLE_CHEST },
|
|
||||||
{ "Spirit Temple MQ Silver Block Hallway Chest", RC_SPIRIT_TEMPLE_MQ_SILVER_BLOCK_HALLWAY_CHEST },
|
|
||||||
{ "Spirit Temple MQ Sun Block Room Chest", RC_SPIRIT_TEMPLE_MQ_SUN_BLOCK_ROOM_CHEST },
|
|
||||||
{ "Spirit Temple MQ Symphony Room Chest", RC_SPIRIT_TEMPLE_MQ_SYMPHONY_ROOM_CHEST },
|
|
||||||
{ "Spirit Temple MQ Leever Room Chest", RC_SPIRIT_TEMPLE_MQ_LEEVER_ROOM_CHEST },
|
|
||||||
{ "Spirit Temple MQ Beamos Room Chest", RC_SPIRIT_TEMPLE_MQ_BEAMOS_ROOM_CHEST },
|
|
||||||
{ "Spirit Temple MQ Chest Switch Chest", RC_SPIRIT_TEMPLE_MQ_CHEST_SWITCH_CHEST },
|
|
||||||
{ "Spirit Temple MQ Boss Key Chest", RC_SPIRIT_TEMPLE_MQ_BOSS_KEY_CHEST },
|
|
||||||
{ "Spirit Temple MQ Mirror Puzzle Invisible Chest", RC_SPIRIT_TEMPLE_MQ_MIRROR_PUZZLE_INVISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple Map Chest", RC_SHADOW_TEMPLE_MAP_CHEST },
|
|
||||||
{ "Shadow Temple Hover Boots Chest", RC_SHADOW_TEMPLE_HOVER_BOOTS_CHEST },
|
|
||||||
{ "Shadow Temple Compass Chest", RC_SHADOW_TEMPLE_COMPASS_CHEST },
|
|
||||||
{ "Shadow Temple Early Silver Rupee Chest", RC_SHADOW_TEMPLE_EARLY_SILVER_RUPEE_CHEST },
|
|
||||||
{ "Shadow Temple Invisible Blades Visible Chest", RC_SHADOW_TEMPLE_INVISIBLE_BLADES_VISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple Invisible Blades Invisible Chest", RC_SHADOW_TEMPLE_INVISIBLE_BLADES_INVISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple Falling Spikes Lower Chest", RC_SHADOW_TEMPLE_FALLING_SPIKES_LOWER_CHEST },
|
|
||||||
{ "Shadow Temple Falling Spikes Upper Chest", RC_SHADOW_TEMPLE_FALLING_SPIKES_UPPER_CHEST },
|
|
||||||
{ "Shadow Temple Falling Spikes Switch Chest", RC_SHADOW_TEMPLE_FALLING_SPIKES_SWITCH_CHEST },
|
|
||||||
{ "Shadow Temple Invisible Spikes Chest", RC_SHADOW_TEMPLE_INVISIBLE_SPIKES_CHEST },
|
|
||||||
{ "Shadow Temple Wind Hint Chest", RC_SHADOW_TEMPLE_WIND_HINT_CHEST },
|
|
||||||
{ "Shadow Temple After Wind Enemy Chest", RC_SHADOW_TEMPLE_AFTER_WIND_ENEMY_CHEST },
|
|
||||||
{ "Shadow Temple After Wind Hidden Chest", RC_SHADOW_TEMPLE_AFTER_WIND_HIDDEN_CHEST },
|
|
||||||
{ "Shadow Temple Spike Walls Left Chest", RC_SHADOW_TEMPLE_SPIKE_WALLS_LEFT_CHEST },
|
|
||||||
{ "Shadow Temple Boss Key Chest", RC_SHADOW_TEMPLE_BOSS_KEY_CHEST },
|
|
||||||
{ "Shadow Temple Invisible Floormaster Chest", RC_SHADOW_TEMPLE_INVISIBLE_FLOORMASTER_CHEST },
|
|
||||||
{ "Shadow Temple Freestanding Key", RC_SHADOW_TEMPLE_FREESTANDING_KEY },
|
|
||||||
{ "Shadow Temple MQ Compass Chest", RC_SHADOW_TEMPLE_MQ_COMPASS_CHEST },
|
|
||||||
{ "Shadow Temple MQ Hover Boots Chest", RC_SHADOW_TEMPLE_MQ_HOVER_BOOTS_CHEST },
|
|
||||||
{ "Shadow Temple MQ Early Gibdos Chest", RC_SHADOW_TEMPLE_MQ_EARLY_GIBDOS_CHEST },
|
|
||||||
{ "Shadow Temple MQ Map Chest", RC_SHADOW_TEMPLE_MQ_MAP_CHEST },
|
|
||||||
{ "Shadow Temple MQ Beamos Silver Rupees Chest", RC_SHADOW_TEMPLE_MQ_BEAMOS_SILVER_RUPEES_CHEST },
|
|
||||||
{ "Shadow Temple MQ Falling Spikes Switch Chest", RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_SWITCH_CHEST },
|
|
||||||
{ "Shadow Temple MQ Falling Spikes Lower Chest", RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_LOWER_CHEST },
|
|
||||||
{ "Shadow Temple MQ Falling Spikes Upper Chest", RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_UPPER_CHEST },
|
|
||||||
{ "Shadow Temple MQ Invisible Spikes Chest", RC_SHADOW_TEMPLE_MQ_INVISIBLE_SPIKES_CHEST },
|
|
||||||
{ "Shadow Temple MQ Boss Key Chest", RC_SHADOW_TEMPLE_MQ_BOSS_KEY_CHEST },
|
|
||||||
{ "Shadow Temple MQ Spike Walls Left Chest", RC_SHADOW_TEMPLE_MQ_SPIKE_WALLS_LEFT_CHEST },
|
|
||||||
{ "Shadow Temple MQ Stalfos Room Chest", RC_SHADOW_TEMPLE_MQ_STALFOS_ROOM_CHEST },
|
|
||||||
{ "Shadow Temple MQ Invisible Blades Invisible Chest", RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_INVISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple MQ Invisible Blades Visible Chest", RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_VISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple MQ Bomb Flower Chest", RC_SHADOW_TEMPLE_MQ_BOMB_FLOWER_CHEST },
|
|
||||||
{ "Shadow Temple MQ Wind Hint Chest", RC_SHADOW_TEMPLE_MQ_WIND_HINT_CHEST },
|
|
||||||
{ "Shadow Temple MQ After Wind Hidden Chest", RC_SHADOW_TEMPLE_MQ_AFTER_WIND_HIDDEN_CHEST },
|
|
||||||
{ "Shadow Temple MQ After Wind Enemy Chest", RC_SHADOW_TEMPLE_MQ_AFTER_WIND_ENEMY_CHEST },
|
|
||||||
{ "Shadow Temple MQ Near Ship Invisible Chest", RC_SHADOW_TEMPLE_MQ_NEAR_SHIP_INVISIBLE_CHEST },
|
|
||||||
{ "Shadow Temple MQ Freestanding Key", RC_SHADOW_TEMPLE_MQ_FREESTANDING_KEY },
|
|
||||||
{ "Bottom of the Well Front Left Fake Wall Chest", RC_BOTTOM_OF_THE_WELL_FRONT_LEFT_FAKE_WALL_CHEST },
|
|
||||||
{ "Bottom of the Well Front Center Bombable Chest", RC_BOTTOM_OF_THE_WELL_FRONT_CENTER_BOMBABLE_CHEST },
|
|
||||||
{ "Bottom of the Well Right Bottom Fake Wall Chest", RC_BOTTOM_OF_THE_WELL_RIGHT_BOTTOM_FAKE_WALL_CHEST },
|
|
||||||
{ "Bottom of the Well Compass Chest", RC_BOTTOM_OF_THE_WELL_COMPASS_CHEST },
|
|
||||||
{ "Bottom of the Well Center Skulltula Chest", RC_BOTTOM_OF_THE_WELL_CENTER_SKULLTULA_CHEST },
|
|
||||||
{ "Bottom of the Well Back Left Bombable Chest", RC_BOTTOM_OF_THE_WELL_BACK_LEFT_BOMBABLE_CHEST },
|
|
||||||
{ "Bottom of the Well Lens of Truth Chest", RC_BOTTOM_OF_THE_WELL_LENS_OF_TRUTH_CHEST },
|
|
||||||
{ "Bottom of the Well Invisible Chest", RC_BOTTOM_OF_THE_WELL_INVISIBLE_CHEST },
|
|
||||||
{ "Bottom of the Well Underwater Front Chest", RC_BOTTOM_OF_THE_WELL_UNDERWATER_FRONT_CHEST },
|
|
||||||
{ "Bottom of the Well Underwater Left Chest", RC_BOTTOM_OF_THE_WELL_UNDERWATER_LEFT_CHEST },
|
|
||||||
{ "Bottom of the Well Map Chest", RC_BOTTOM_OF_THE_WELL_MAP_CHEST },
|
|
||||||
{ "Bottom of the Well Fire Keese Chest", RC_BOTTOM_OF_THE_WELL_FIRE_KEESE_CHEST },
|
|
||||||
{ "Bottom of the Well Like Like Chest", RC_BOTTOM_OF_THE_WELL_LIKE_LIKE_CHEST },
|
|
||||||
{ "Bottom of the Well Freestanding Key", RC_BOTTOM_OF_THE_WELL_FREESTANDING_KEY },
|
|
||||||
{ "Bottom of the Well MQ Map Chest", RC_BOTTOM_OF_THE_WELL_MQ_MAP_CHEST },
|
|
||||||
{ "Bottom of the Well MQ Lens of Truth Chest", RC_BOTTOM_OF_THE_WELL_MQ_LENS_OF_TRUTH_CHEST },
|
|
||||||
{ "Bottom of the Well MQ Compass Chest", RC_BOTTOM_OF_THE_WELL_MQ_COMPASS_CHEST },
|
|
||||||
{ "Bottom of the Well MQ Dead Hand Freestanding Key", RC_BOTTOM_OF_THE_WELL_MQ_DEAD_HAND_FREESTANDING_KEY },
|
|
||||||
{ "Bottom of the Well MQ East Inner Room Freestanding Key",
|
|
||||||
RC_BOTTOM_OF_THE_WELL_MQ_EAST_INNER_ROOM_FREESTANDING_KEY },
|
|
||||||
{ "Ice Cavern Map Chest", RC_ICE_CAVERN_MAP_CHEST },
|
|
||||||
{ "Ice Cavern Compass Chest", RC_ICE_CAVERN_COMPASS_CHEST },
|
|
||||||
{ "Ice Cavern Iron Boots Chest", RC_ICE_CAVERN_IRON_BOOTS_CHEST },
|
|
||||||
{ "Ice Cavern Freestanding PoH", RC_ICE_CAVERN_FREESTANDING_POH },
|
|
||||||
{ "Ice Cavern MQ Iron Boots Chest", RC_ICE_CAVERN_MQ_IRON_BOOTS_CHEST },
|
|
||||||
{ "Ice Cavern MQ Compass Chest", RC_ICE_CAVERN_MQ_COMPASS_CHEST },
|
|
||||||
{ "Ice Cavern MQ Map Chest", RC_ICE_CAVERN_MQ_MAP_CHEST },
|
|
||||||
{ "Ice Cavern MQ Freestanding PoH", RC_ICE_CAVERN_MQ_FREESTANDING_POH },
|
|
||||||
{ "Gerudo Training Grounds Lobby Left Chest", RC_GERUDO_TRAINING_GROUND_LOBBY_LEFT_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Lobby Right Chest", RC_GERUDO_TRAINING_GROUND_LOBBY_RIGHT_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Stalfos Chest", RC_GERUDO_TRAINING_GROUND_STALFOS_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Beamos Chest", RC_GERUDO_TRAINING_GROUND_BEAMOS_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Hidden Ceiling Chest", RC_GERUDO_TRAINING_GROUND_HIDDEN_CEILING_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Path First Chest", RC_GERUDO_TRAINING_GROUND_MAZE_PATH_FIRST_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Path Second Chest", RC_GERUDO_TRAINING_GROUND_MAZE_PATH_SECOND_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Path Third Chest", RC_GERUDO_TRAINING_GROUND_MAZE_PATH_THIRD_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Path Final Chest", RC_GERUDO_TRAINING_GROUND_MAZE_PATH_FINAL_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Right Central Chest", RC_GERUDO_TRAINING_GROUND_MAZE_RIGHT_CENTRAL_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Maze Right Side Chest", RC_GERUDO_TRAINING_GROUND_MAZE_RIGHT_SIDE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Underwater Silver Rupee Chest",
|
|
||||||
RC_GERUDO_TRAINING_GROUND_UNDERWATER_SILVER_RUPEE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Hammer Room Clear Chest", RC_GERUDO_TRAINING_GROUND_HAMMER_ROOM_CLEAR_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Hammer Room Switch Chest", RC_GERUDO_TRAINING_GROUND_HAMMER_ROOM_SWITCH_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Eye Statue Chest", RC_GERUDO_TRAINING_GROUND_EYE_STATUE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Near Scarecrow Chest", RC_GERUDO_TRAINING_GROUND_NEAR_SCARECROW_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Before Heavy Block Chest", RC_GERUDO_TRAINING_GROUND_BEFORE_HEAVY_BLOCK_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Heavy Block First Chest", RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_FIRST_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Heavy Block Second Chest", RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_SECOND_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Heavy Block Third Chest", RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_THIRD_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Heavy Block Fourth Chest", RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_FOURTH_CHEST },
|
|
||||||
{ "Gerudo Training Grounds Freestanding Key", RC_GERUDO_TRAINING_GROUND_FREESTANDING_KEY },
|
|
||||||
{ "Gerudo Training Grounds MQ Lobby Right Chest", RC_GERUDO_TRAINING_GROUND_MQ_LOBBY_RIGHT_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Lobby Left Chest", RC_GERUDO_TRAINING_GROUND_MQ_LOBBY_LEFT_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ First Iron Knuckle Chest", RC_GERUDO_TRAINING_GROUND_MQ_FIRST_IRON_KNUCKLE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Before Heavy Block Chest", RC_GERUDO_TRAINING_GROUND_MQ_BEFORE_HEAVY_BLOCK_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Eye Statue Chest", RC_GERUDO_TRAINING_GROUND_MQ_EYE_STATUE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Flame Circle Chest", RC_GERUDO_TRAINING_GROUND_MQ_FLAME_CIRCLE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Second Iron Knuckle Chest", RC_GERUDO_TRAINING_GROUND_MQ_SECOND_IRON_KNUCKLE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Dinolfos Chest", RC_GERUDO_TRAINING_GROUND_MQ_DINOLFOS_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Ice Arrows Chest", RC_GERUDO_TRAINING_GROUND_MQ_ICE_ARROWS_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Maze Right Central Chest", RC_GERUDO_TRAINING_GROUND_MQ_MAZE_RIGHT_CENTRAL_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Maze Path First Chest", RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_FIRST_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Maze Right Side Chest", RC_GERUDO_TRAINING_GROUND_MQ_MAZE_RIGHT_SIDE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Maze Path Third Chest", RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_THIRD_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Maze Path Second Chest", RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_SECOND_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Hidden Ceiling Chest", RC_GERUDO_TRAINING_GROUND_MQ_HIDDEN_CEILING_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Underwater Silver Rupee Chest",
|
|
||||||
RC_GERUDO_TRAINING_GROUND_MQ_UNDERWATER_SILVER_RUPEE_CHEST },
|
|
||||||
{ "Gerudo Training Grounds MQ Heavy Block Chest", RC_GERUDO_TRAINING_GROUND_MQ_HEAVY_BLOCK_CHEST },
|
|
||||||
{ "Ganon's Tower Boss Key Chest", RC_GANONS_TOWER_BOSS_KEY_CHEST },
|
|
||||||
{ "Ganon's Castle Forest Trial Chest", RC_GANONS_CASTLE_FOREST_TRIAL_CHEST },
|
|
||||||
{ "Ganon's Castle Water Trial Left Chest", RC_GANONS_CASTLE_WATER_TRIAL_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle Water Trial Right Chest", RC_GANONS_CASTLE_WATER_TRIAL_RIGHT_CHEST },
|
|
||||||
{ "Ganon's Castle Shadow Trial Front Chest", RC_GANONS_CASTLE_SHADOW_TRIAL_FRONT_CHEST },
|
|
||||||
{ "Ganon's Castle Shadow Trial Golden Gauntlets Chest", RC_GANONS_CASTLE_SHADOW_TRIAL_GOLDEN_GAUNTLETS_CHEST },
|
|
||||||
{ "Ganon's Castle Spirit Trial Crystal Switch Chest", RC_GANONS_CASTLE_SPIRIT_TRIAL_CRYSTAL_SWITCH_CHEST },
|
|
||||||
{ "Ganon's Castle Spirit Trial Invisible Chest", RC_GANONS_CASTLE_SPIRIT_TRIAL_INVISIBLE_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial First Left Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_FIRST_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Second Left Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Third Left Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial First Right Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_FIRST_RIGHT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Second Right Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_RIGHT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Third Right Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_RIGHT_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Invisible Enemies Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_INVISIBLE_ENEMIES_CHEST },
|
|
||||||
{ "Ganon's Castle Light Trial Lullaby Chest", RC_GANONS_CASTLE_LIGHT_TRIAL_LULLABY_CHEST },
|
|
||||||
{ "Ganon's Castle Deku Scrub Center-Left", RC_GANONS_CASTLE_DEKU_SCRUB_CENTER_LEFT },
|
|
||||||
{ "Ganon's Castle Deku Scrub Center-Right", RC_GANONS_CASTLE_DEKU_SCRUB_CENTER_RIGHT },
|
|
||||||
{ "Ganon's Castle Deku Scrub Right", RC_GANONS_CASTLE_DEKU_SCRUB_RIGHT },
|
|
||||||
{ "Ganon's Castle Deku Scrub Left", RC_GANONS_CASTLE_DEKU_SCRUB_LEFT },
|
|
||||||
{ "Ganon's Castle MQ Water Trial Chest", RC_GANONS_CASTLE_MQ_WATER_TRIAL_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Forest Trial Eye Switch Chest", RC_GANONS_CASTLE_MQ_FOREST_TRIAL_EYE_SWITCH_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Forest Trial Frozen Eye Switch Chest",
|
|
||||||
RC_GANONS_CASTLE_MQ_FOREST_TRIAL_FROZEN_EYE_SWITCH_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Light Trial Lullaby Chest", RC_GANONS_CASTLE_MQ_LIGHT_TRIAL_LULLABY_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Shadow Trial Bomb Flower Chest", RC_GANONS_CASTLE_MQ_SHADOW_TRIAL_BOMB_FLOWER_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Shadow Trial Eye Switch Chest", RC_GANONS_CASTLE_MQ_SHADOW_TRIAL_EYE_SWITCH_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial Golden Gauntlets Chest",
|
|
||||||
RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_GOLDEN_GAUNTLETS_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial Sun Back Right Chest", RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_BACK_RIGHT_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial Sun Back Left Chest", RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_BACK_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial Sun Front Left Chest", RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_FRONT_LEFT_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial First Chest", RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_FIRST_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Spirit Trial Invisible Chest", RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_INVISIBLE_CHEST },
|
|
||||||
{ "Ganon's Castle MQ Forest Trial Freestanding Key", RC_GANONS_CASTLE_MQ_FOREST_TRIAL_FREESTANDING_KEY },
|
|
||||||
{ "Ganon's Castle MQ Deku Scrub Right", RC_GANONS_CASTLE_MQ_DEKU_SCRUB_RIGHT },
|
|
||||||
{ "Ganon's Castle MQ Deku Scrub Center-Left", RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER_LEFT },
|
|
||||||
{ "Ganon's Castle MQ Deku Scrub Center", RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER },
|
|
||||||
{ "Ganon's Castle MQ Deku Scrub Center-Right", RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER_RIGHT },
|
|
||||||
{ "Ganon's Castle MQ Deku Scrub Left", RC_GANONS_CASTLE_MQ_DEKU_SCRUB_LEFT },
|
|
||||||
{ "Deku Tree GS Basement Back Room", RC_DEKU_TREE_GS_BASEMENT_BACK_ROOM },
|
|
||||||
{ "Deku Tree GS Basement Gate", RC_DEKU_TREE_GS_BASEMENT_GATE },
|
|
||||||
{ "Deku Tree GS Basement Vines", RC_DEKU_TREE_GS_BASEMENT_VINES },
|
|
||||||
{ "Deku Tree GS Compass Room", RC_DEKU_TREE_GS_COMPASS_ROOM },
|
|
||||||
{ "Deku Tree MQ GS Lobby", RC_DEKU_TREE_MQ_GS_LOBBY },
|
|
||||||
{ "Deku Tree MQ GS Compass Room", RC_DEKU_TREE_MQ_GS_COMPASS_ROOM },
|
|
||||||
{ "Deku Tree MQ GS Basement Graves Room", RC_DEKU_TREE_MQ_GS_BASEMENT_GRAVES_ROOM },
|
|
||||||
{ "Deku Tree MQ GS Basement Back Room", RC_DEKU_TREE_MQ_GS_BASEMENT_BACK_ROOM },
|
|
||||||
{ "Dodongos Cavern GS Vines Above Stairs", RC_DODONGOS_CAVERN_GS_VINES_ABOVE_STAIRS },
|
|
||||||
{ "Dodongos Cavern GS Scarecrow", RC_DODONGOS_CAVERN_GS_SCARECROW },
|
|
||||||
{ "Dodongos Cavern GS Alcove Above Stairs", RC_DODONGOS_CAVERN_GS_ALCOVE_ABOVE_STAIRS },
|
|
||||||
{ "Dodongos Cavern GS Back Room", RC_DODONGOS_CAVERN_GS_BACK_ROOM },
|
|
||||||
{ "Dodongos Cavern GS Side Room Near Lower Lizalfos", RC_DODONGOS_CAVERN_GS_SIDE_ROOM_NEAR_LOWER_LIZALFOS },
|
|
||||||
{ "Dodongos Cavern MQ GS Scrub Room", RC_DODONGOS_CAVERN_MQ_GS_SCRUB_ROOM },
|
|
||||||
{ "Dodongos Cavern MQ GS Song of Time Block Room", RC_DODONGOS_CAVERN_MQ_GS_SONG_OF_TIME_BLOCK_ROOM },
|
|
||||||
{ "Dodongos Cavern MQ GS Lizalfos Room", RC_DODONGOS_CAVERN_MQ_GS_LIZALFOS_ROOM },
|
|
||||||
{ "Dodongos Cavern MQ GS Larvae Room", RC_DODONGOS_CAVERN_MQ_GS_LARVAE_ROOM },
|
|
||||||
{ "Dodongos Cavern MQ GS Back Room", RC_DODONGOS_CAVERN_MQ_GS_BACK_AREA },
|
|
||||||
{ "Jabu Jabus Belly GS Lobby Basement Lower", RC_JABU_JABUS_BELLY_GS_LOBBY_BASEMENT_LOWER },
|
|
||||||
{ "Jabu Jabus Belly GS Lobby Basement Upper", RC_JABU_JABUS_BELLY_GS_LOBBY_BASEMENT_UPPER },
|
|
||||||
{ "Jabu Jabus Belly GS Near Boss", RC_JABU_JABUS_BELLY_GS_NEAR_BOSS },
|
|
||||||
{ "Jabu Jabus Belly GS Water Switch Room", RC_JABU_JABUS_BELLY_GS_WATER_SWITCH_ROOM },
|
|
||||||
{ "Jabu Jabus Belly MQ GS Tail Parasan Room", RC_JABU_JABUS_BELLY_MQ_GS_TAILPASARAN_ROOM },
|
|
||||||
{ "Jabu Jabus Belly MQ GS Invisible Enemies Room", RC_JABU_JABUS_BELLY_MQ_GS_INVISIBLE_ENEMIES_ROOM },
|
|
||||||
{ "Jabu Jabus Belly MQ GS Boomerang Chest Room", RC_JABU_JABUS_BELLY_MQ_GS_BOOMERANG_CHEST_ROOM },
|
|
||||||
{ "Jabu Jabus Belly MQ GS Near Boss", RC_JABU_JABUS_BELLY_MQ_GS_NEAR_BOSS },
|
|
||||||
{ "Forest Temple GS Raised Island Courtyard", RC_FOREST_TEMPLE_GS_RAISED_ISLAND_COURTYARD },
|
|
||||||
{ "Forest Temple GS First Room", RC_FOREST_TEMPLE_GS_FIRST_ROOM },
|
|
||||||
{ "Forest Temple GS Level Island Courtyard", RC_FOREST_TEMPLE_GS_LEVEL_ISLAND_COURTYARD },
|
|
||||||
{ "Forest Temple GS Lobby", RC_FOREST_TEMPLE_GS_LOBBY },
|
|
||||||
{ "Forest Temple GS Basement", RC_FOREST_TEMPLE_GS_BASEMENT },
|
|
||||||
{ "Forest Temple MQ GS First Hallway", RC_FOREST_TEMPLE_MQ_GS_FIRST_HALLWAY },
|
|
||||||
{ "Forest Temple MQ GS Block Push Room", RC_FOREST_TEMPLE_MQ_GS_BLOCK_PUSH_ROOM },
|
|
||||||
{ "Forest Temple MQ GS Raised Island Courtyard", RC_FOREST_TEMPLE_MQ_GS_RAISED_ISLAND_COURTYARD },
|
|
||||||
{ "Forest Temple MQ GS Level Island Courtyard", RC_FOREST_TEMPLE_MQ_GS_LEVEL_ISLAND_COURTYARD },
|
|
||||||
{ "Forest Temple MQ GS Well", RC_FOREST_TEMPLE_MQ_GS_WELL },
|
|
||||||
{ "Fire Temple GS Song of Time Room", RC_FIRE_TEMPLE_GS_SONG_OF_TIME_ROOM },
|
|
||||||
{ "Fire Temple GS Boss Key Loop", RC_FIRE_TEMPLE_GS_BOSS_KEY_LOOP },
|
|
||||||
{ "Fire Temple GS Boulder Maze", RC_FIRE_TEMPLE_GS_BOULDER_MAZE },
|
|
||||||
{ "Fire Temple GS Scarecrow Top", RC_FIRE_TEMPLE_GS_SCARECROW_TOP },
|
|
||||||
{ "Fire Temple GS Scarecrow Climb", RC_FIRE_TEMPLE_GS_SCARECROW_CLIMB },
|
|
||||||
{ "Fire Temple MQ GS Above Fire Wall Maze", RC_FIRE_TEMPLE_MQ_GS_ABOVE_FIRE_WALL_MAZE },
|
|
||||||
{ "Fire Temple MQ GS Fire Wall Maze Center", RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_CENTER },
|
|
||||||
{ "Fire Temple MQ GS Big Lava Room Open Door", RC_FIRE_TEMPLE_MQ_GS_BIG_LAVA_ROOM_OPEN_DOOR },
|
|
||||||
{ "Fire Temple MQ GS Fire Wall Maze Side Room", RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_SIDE_ROOM },
|
|
||||||
{ "Fire Temple MQ GS Skull on Fire", RC_FIRE_TEMPLE_MQ_GS_SKULL_ON_FIRE },
|
|
||||||
{ "Water Temple GS Behind Gate", RC_WATER_TEMPLE_GS_BEHIND_GATE },
|
|
||||||
{ "Water Temple GS Falling Platform Room", RC_WATER_TEMPLE_GS_FALLING_PLATFORM_ROOM },
|
|
||||||
{ "Water Temple GS Central Pillar", RC_WATER_TEMPLE_GS_CENTRAL_PILLAR },
|
|
||||||
{ "Water Temple GS Near Boss Key Chest", RC_WATER_TEMPLE_GS_NEAR_BOSS_KEY_CHEST },
|
|
||||||
{ "Water Temple GS River", RC_WATER_TEMPLE_GS_RIVER },
|
|
||||||
{ "Water Temple MQ GS Before Upper Water Switch", RC_WATER_TEMPLE_MQ_GS_BEFORE_UPPER_WATER_SWITCH },
|
|
||||||
{ "Water Temple MQ GS Freestanding Key Area", RC_WATER_TEMPLE_MQ_GS_FREESTANDING_KEY_AREA },
|
|
||||||
{ "Water Temple MQ GS Lizalfos Hallway", RC_WATER_TEMPLE_MQ_GS_LIZALFOS_HALLWAY },
|
|
||||||
{ "Water Temple MQ GS River", RC_WATER_TEMPLE_MQ_GS_RIVER },
|
|
||||||
{ "Water Temple MQ GS Triple Wall Torch", RC_WATER_TEMPLE_MQ_GS_TRIPLE_WALL_TORCH },
|
|
||||||
{ "Spirit Temple GS Hall After Sun Block Room", RC_SPIRIT_TEMPLE_GS_HALL_AFTER_SUN_BLOCK_ROOM },
|
|
||||||
{ "Spirit Temple GS Boulder Room", RC_SPIRIT_TEMPLE_GS_BOULDER_ROOM },
|
|
||||||
{ "Spirit Temple GS Lobby", RC_SPIRIT_TEMPLE_GS_LOBBY },
|
|
||||||
{ "Spirit Temple GS Sun on Floor Room", RC_SPIRIT_TEMPLE_GS_SUN_ON_FLOOR_ROOM },
|
|
||||||
{ "Spirit Temple GS Metal Fence", RC_SPIRIT_TEMPLE_GS_METAL_FENCE },
|
|
||||||
{ "Spirit Temple MQ GS Symphony Room", RC_SPIRIT_TEMPLE_MQ_GS_SYMPHONY_ROOM },
|
|
||||||
{ "Spirit Temple MQ GS Leever Room", RC_SPIRIT_TEMPLE_MQ_GS_LEEVER_ROOM },
|
|
||||||
{ "Spirit Temple MQ GS Nine Thrones Room West", RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_WEST },
|
|
||||||
{ "Spirit Temple MQ GS Nine Thrones Room North", RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_NORTH },
|
|
||||||
{ "Spirit Temple MQ GS Sun Block Room", RC_SPIRIT_TEMPLE_MQ_GS_SUN_BLOCK_ROOM },
|
|
||||||
{ "Shadow Temple GS Single Giant Pot", RC_SHADOW_TEMPLE_GS_SINGLE_GIANT_POT },
|
|
||||||
{ "Shadow Temple GS Falling Spikes Room", RC_SHADOW_TEMPLE_GS_FALLING_SPIKES_ROOM },
|
|
||||||
{ "Shadow Temple GS Triple Giant Pot", RC_SHADOW_TEMPLE_GS_TRIPLE_GIANT_POT },
|
|
||||||
{ "Shadow Temple GS Like Like Room", RC_SHADOW_TEMPLE_GS_LIKE_LIKE_ROOM },
|
|
||||||
{ "Shadow Temple GS Near Ship", RC_SHADOW_TEMPLE_GS_NEAR_SHIP },
|
|
||||||
{ "Shadow Temple MQ GS Falling Spikes Room", RC_SHADOW_TEMPLE_MQ_GS_FALLING_SPIKES_ROOM },
|
|
||||||
{ "Shadow Temple MQ GS Wind Hint Room", RC_SHADOW_TEMPLE_MQ_GS_WIND_HINT_ROOM },
|
|
||||||
{ "Shadow Temple MQ GS After Wind", RC_SHADOW_TEMPLE_MQ_GS_AFTER_WIND },
|
|
||||||
{ "Shadow Temple MQ GS After Ship", RC_SHADOW_TEMPLE_MQ_GS_AFTER_SHIP },
|
|
||||||
{ "Shadow Temple MQ GS Near Boss", RC_SHADOW_TEMPLE_MQ_GS_NEAR_BOSS },
|
|
||||||
{ "Bottom of the Well GS Like Like Cage", RC_BOTTOM_OF_THE_WELL_GS_LIKE_LIKE_CAGE },
|
|
||||||
{ "Bottom of the Well GS East Inner Room", RC_BOTTOM_OF_THE_WELL_GS_EAST_INNER_ROOM },
|
|
||||||
{ "Bottom of the Well GS West Inner Room", RC_BOTTOM_OF_THE_WELL_GS_WEST_INNER_ROOM },
|
|
||||||
{ "Bottom of the Well MQ GS Basement", RC_BOTTOM_OF_THE_WELL_MQ_GS_BASEMENT },
|
|
||||||
{ "Bottom of the Well MQ GS Coffin Room", RC_BOTTOM_OF_THE_WELL_MQ_GS_COFFIN_ROOM },
|
|
||||||
{ "Bottom of the Well MQ GS West Inner Room", RC_BOTTOM_OF_THE_WELL_MQ_GS_WEST_INNER_ROOM },
|
|
||||||
{ "Ice Cavern GS Push Block Room", RC_ICE_CAVERN_GS_PUSH_BLOCK_ROOM },
|
|
||||||
{ "Ice Cavern GS Spinning Scythe Room", RC_ICE_CAVERN_GS_SPINNING_SCYTHE_ROOM },
|
|
||||||
{ "Ice Cavern GS Heart Piece Room", RC_ICE_CAVERN_GS_HEART_PIECE_ROOM },
|
|
||||||
{ "Ice Cavern MQ GS Scarecrow", RC_ICE_CAVERN_MQ_GS_SCARECROW },
|
|
||||||
{ "Ice Cavern MQ GS Ice Block", RC_ICE_CAVERN_MQ_GS_ICE_BLOCK },
|
|
||||||
{ "Ice Cavern MQ GS Red Ice", RC_ICE_CAVERN_MQ_GS_RED_ICE },
|
|
||||||
{ "KF GS Bean Patch", RC_KF_GS_BEAN_PATCH },
|
|
||||||
{ "KF GS Know It All House", RC_KF_GS_KNOW_IT_ALL_HOUSE },
|
|
||||||
{ "KF GS House of Twins", RC_KF_GS_HOUSE_OF_TWINS },
|
|
||||||
{ "LW GS Bean Patch Near Bridge", RC_LW_GS_BEAN_PATCH_NEAR_BRIDGE },
|
|
||||||
{ "LW GS Bean Patch Near Theater", RC_LW_GS_BEAN_PATCH_NEAR_THEATER },
|
|
||||||
{ "LW GS Above Theater", RC_LW_GS_ABOVE_THEATER },
|
|
||||||
{ "SFM GS", RC_SFM_GS },
|
|
||||||
{ "HF GS Cow Grotto", RC_HF_GS_COW_GROTTO },
|
|
||||||
{ "HF GS Near Kak Grotto", RC_HF_GS_NEAR_KAK_GROTTO },
|
|
||||||
{ "LH GS Bean Patch", RC_LH_GS_BEAN_PATCH },
|
|
||||||
{ "LH GS Small Island", RC_LH_GS_SMALL_ISLAND },
|
|
||||||
{ "LH GS Lab Wall", RC_LH_GS_LAB_WALL },
|
|
||||||
{ "LH GS Lab Crate", RC_LH_GS_LAB_CRATE },
|
|
||||||
{ "LH GS Tree", RC_LH_GS_TREE },
|
|
||||||
{ "GV GS Bean Patch", RC_GV_GS_BEAN_PATCH },
|
|
||||||
{ "GV GS Small Bridge", RC_GV_GS_SMALL_BRIDGE },
|
|
||||||
{ "GV GS Pillar", RC_GV_GS_PILLAR },
|
|
||||||
{ "GV GS Behind Tent", RC_GV_GS_BEHIND_TENT },
|
|
||||||
{ "GF GS Archery Range", RC_GF_GS_ARCHERY_RANGE },
|
|
||||||
{ "GF GS Top Floor", RC_GF_GS_TOP_FLOOR },
|
|
||||||
{ "Wasteland GS", RC_WASTELAND_GS },
|
|
||||||
{ "Colossus GS Bean Patch", RC_COLOSSUS_GS_BEAN_PATCH },
|
|
||||||
{ "Colossus GS Hill", RC_COLOSSUS_GS_HILL },
|
|
||||||
{ "Colossus GS Tree", RC_COLOSSUS_GS_TREE },
|
|
||||||
{ "OGC GS", RC_OGC_GS },
|
|
||||||
{ "HC GS Storms Grotto", RC_HC_GS_STORMS_GROTTO },
|
|
||||||
{ "HC GS Tree", RC_HC_GS_TREE },
|
|
||||||
{ "Market GS Guard House", RC_MARKET_GS_GUARD_HOUSE },
|
|
||||||
{ "Kak GS House Under Construction", RC_KAK_GS_HOUSE_UNDER_CONSTRUCTION },
|
|
||||||
{ "Kak GS Skulltula House", RC_KAK_GS_SKULLTULA_HOUSE },
|
|
||||||
{ "Kak GS Guards House", RC_KAK_GS_GUARDS_HOUSE },
|
|
||||||
{ "Kak GS Tree", RC_KAK_GS_TREE },
|
|
||||||
{ "Kak GS Watchtower", RC_KAK_GS_WATCHTOWER },
|
|
||||||
{ "Kak GS Above Impas House", RC_KAK_GS_ABOVE_IMPAS_HOUSE },
|
|
||||||
{ "Graveyard GS Wall", RC_GRAVEYARD_GS_WALL },
|
|
||||||
{ "Graveyard GS Bean Patch", RC_GRAVEYARD_GS_BEAN_PATCH },
|
|
||||||
{ "DMC GS Bean Patch", RC_DMC_GS_BEAN_PATCH },
|
|
||||||
{ "DMC GS Crate", RC_DMC_GS_CRATE },
|
|
||||||
{ "DMT GS Bean Patch", RC_DMT_GS_BEAN_PATCH },
|
|
||||||
{ "DMT GS Near Kak", RC_DMT_GS_NEAR_KAK },
|
|
||||||
{ "DMT GS Above Dodongos Cavern", RC_DMT_GS_ABOVE_DODONGOS_CAVERN },
|
|
||||||
{ "DMT GS Falling Rocks Path", RC_DMT_GS_FALLING_ROCKS_PATH },
|
|
||||||
{ "GC GS Center Platform", RC_GC_GS_CENTER_PLATFORM },
|
|
||||||
{ "GC GS Boulder Maze", RC_GC_GS_BOULDER_MAZE },
|
|
||||||
{ "ZR GS Ladder", RC_ZR_GS_LADDER },
|
|
||||||
{ "ZR GS Tree", RC_ZR_GS_TREE },
|
|
||||||
{ "ZR GS Above Bridge", RC_ZR_GS_ABOVE_BRIDGE },
|
|
||||||
{ "ZR GS Near Raised Grottos", RC_ZR_GS_NEAR_RAISED_GROTTOS },
|
|
||||||
{ "ZD GS Frozen Waterfall", RC_ZD_GS_FROZEN_WATERFALL },
|
|
||||||
{ "ZF GS Above The Log", RC_ZF_GS_ABOVE_THE_LOG },
|
|
||||||
{ "ZF GS Hidden Cave", RC_ZF_GS_HIDDEN_CAVE },
|
|
||||||
{ "ZF GS Tree", RC_ZF_GS_TREE },
|
|
||||||
{ "LLR GS Back Wall", RC_LLR_GS_BACK_WALL },
|
|
||||||
{ "LLR GS Rain Shed", RC_LLR_GS_RAIN_SHED },
|
|
||||||
{ "LLR GS House Window", RC_LLR_GS_HOUSE_WINDOW },
|
|
||||||
{ "LLR GS Tree", RC_LLR_GS_TREE },
|
|
||||||
{ "Link's Pocket", RC_LINKS_POCKET },
|
|
||||||
{ "Queen Gohma", RC_QUEEN_GOHMA },
|
|
||||||
{ "King Dodongo", RC_KING_DODONGO },
|
|
||||||
{ "Barinade", RC_BARINADE },
|
|
||||||
{ "Phantom Ganon", RC_PHANTOM_GANON },
|
|
||||||
{ "Volvagia", RC_VOLVAGIA },
|
|
||||||
{ "Morpha", RC_MORPHA },
|
|
||||||
{ "Twinrova", RC_TWINROVA },
|
|
||||||
{ "Bongo Bongo", RC_BONGO_BONGO },
|
|
||||||
{ "Ganon", RC_UNKNOWN_CHECK },
|
|
||||||
{ "Deku Tree Queen Gohma Heart Container", RC_DEKU_TREE_QUEEN_GOHMA_HEART },
|
|
||||||
{ "Dodongos Cavern King Dodongo Heart Container", RC_DODONGOS_CAVERN_KING_DODONGO_HEART },
|
|
||||||
{ "Jabu Jabus Belly Barinade Heart Container", RC_JABU_JABUS_BELLY_BARINADE_HEART },
|
|
||||||
{ "Forest Temple Phantom Ganon Heart Container", RC_FOREST_TEMPLE_PHANTOM_GANON_HEART },
|
|
||||||
{ "Fire Temple Volvagia Heart Container", RC_FIRE_TEMPLE_VOLVAGIA_HEART },
|
|
||||||
{ "Water Temple Morpha Heart Container", RC_WATER_TEMPLE_MORPHA_HEART },
|
|
||||||
{ "Spirit Temple Twinrova Heart Container", RC_SPIRIT_TEMPLE_TWINROVA_HEART },
|
|
||||||
{ "Shadow Temple Bongo Bongo Heart Container", RC_SHADOW_TEMPLE_BONGO_BONGO_HEART },
|
|
||||||
{ "ToT Light Arrow Cutscene", RC_TOT_LIGHT_ARROWS_CUTSCENE },
|
|
||||||
{ "LW Gift From Saria", RC_LW_GIFT_FROM_SARIA },
|
|
||||||
{ "ZF Great Fairy Reward", RC_ZF_GREAT_FAIRY_REWARD },
|
|
||||||
{ "HC Great Fairy Reward", RC_HC_GREAT_FAIRY_REWARD },
|
|
||||||
{ "Colossus Great Fairy Reward", RC_COLOSSUS_GREAT_FAIRY_REWARD },
|
|
||||||
{ "DMT Great Fairy Reward", RC_DMT_GREAT_FAIRY_REWARD },
|
|
||||||
{ "DMC Great Fairy Reward", RC_DMC_GREAT_FAIRY_REWARD },
|
|
||||||
{ "OGC Great Fairy Reward", RC_OGC_GREAT_FAIRY_REWARD },
|
|
||||||
{ "Sheik in Forest", RC_SHEIK_IN_FOREST },
|
|
||||||
{ "Sheik in Crater", RC_SHEIK_IN_CRATER },
|
|
||||||
{ "Sheik in Ice Cavern", RC_SHEIK_IN_ICE_CAVERN },
|
|
||||||
{ "Sheik at Colossus", RC_SHEIK_AT_COLOSSUS },
|
|
||||||
{ "Sheik in Kakariko", RC_SHEIK_IN_KAKARIKO },
|
|
||||||
{ "Sheik at Temple", RC_SHEIK_AT_TEMPLE },
|
|
||||||
{ "Song from Impa", RC_SONG_FROM_IMPA },
|
|
||||||
{ "Song from Malon", RC_SONG_FROM_MALON },
|
|
||||||
{ "Song from Saria", RC_SONG_FROM_SARIA },
|
|
||||||
{ "Song from Composers Grave", RC_SONG_FROM_ROYAL_FAMILYS_TOMB },
|
|
||||||
{ "Song from Ocarina of Time", RC_SONG_FROM_OCARINA_OF_TIME },
|
|
||||||
{ "Song from Windmill", RC_SONG_FROM_WINDMILL },
|
|
||||||
{ "KF Links House Cow", RC_KF_LINKS_HOUSE_COW },
|
|
||||||
{ "HF Cow Grotto Cow", RC_HF_COW_GROTTO_COW },
|
|
||||||
{ "LLR Stables Left Cow", RC_LLR_STABLES_LEFT_COW },
|
|
||||||
{ "LLR Stables Right Cow", RC_LLR_STABLES_RIGHT_COW },
|
|
||||||
{ "LLR Tower Left Cow", RC_LLR_TOWER_LEFT_COW },
|
|
||||||
{ "LLR Tower Right Cow", RC_LLR_TOWER_RIGHT_COW },
|
|
||||||
{ "Kak Impas House Cow", RC_KAK_IMPAS_HOUSE_COW },
|
|
||||||
{ "DMT Cow Grotto Cow", RC_DMT_COW_GROTTO_COW },
|
|
||||||
{ "GV Cow", RC_GV_COW },
|
|
||||||
{ "Jabu Jabus Belly MQ Cow", RC_JABU_JABUS_BELLY_MQ_COW },
|
|
||||||
{ "KF Shop Item 1", RC_KF_SHOP_ITEM_1 },
|
|
||||||
{ "KF Shop Item 2", RC_KF_SHOP_ITEM_2 },
|
|
||||||
{ "KF Shop Item 3", RC_KF_SHOP_ITEM_3 },
|
|
||||||
{ "KF Shop Item 4", RC_KF_SHOP_ITEM_4 },
|
|
||||||
{ "KF Shop Item 5", RC_KF_SHOP_ITEM_5 },
|
|
||||||
{ "KF Shop Item 6", RC_KF_SHOP_ITEM_6 },
|
|
||||||
{ "KF Shop Item 7", RC_KF_SHOP_ITEM_7 },
|
|
||||||
{ "KF Shop Item 8", RC_KF_SHOP_ITEM_8 },
|
|
||||||
{ "Kak Potion Shop Item 1", RC_KAK_POTION_SHOP_ITEM_1 },
|
|
||||||
{ "Kak Potion Shop Item 2", RC_KAK_POTION_SHOP_ITEM_2 },
|
|
||||||
{ "Kak Potion Shop Item 3", RC_KAK_POTION_SHOP_ITEM_3 },
|
|
||||||
{ "Kak Potion Shop Item 4", RC_KAK_POTION_SHOP_ITEM_4 },
|
|
||||||
{ "Kak Potion Shop Item 5", RC_KAK_POTION_SHOP_ITEM_5 },
|
|
||||||
{ "Kak Potion Shop Item 6", RC_KAK_POTION_SHOP_ITEM_6 },
|
|
||||||
{ "Kak Potion Shop Item 7", RC_KAK_POTION_SHOP_ITEM_7 },
|
|
||||||
{ "Kak Potion Shop Item 8", RC_KAK_POTION_SHOP_ITEM_8 },
|
|
||||||
{ "MK Bombchu Shop Item 1", RC_MARKET_BOMBCHU_SHOP_ITEM_1 },
|
|
||||||
{ "MK Bombchu Shop Item 2", RC_MARKET_BOMBCHU_SHOP_ITEM_2 },
|
|
||||||
{ "MK Bombchu Shop Item 3", RC_MARKET_BOMBCHU_SHOP_ITEM_3 },
|
|
||||||
{ "MK Bombchu Shop Item 4", RC_MARKET_BOMBCHU_SHOP_ITEM_4 },
|
|
||||||
{ "MK Bombchu Shop Item 5", RC_MARKET_BOMBCHU_SHOP_ITEM_5 },
|
|
||||||
{ "MK Bombchu Shop Item 6", RC_MARKET_BOMBCHU_SHOP_ITEM_6 },
|
|
||||||
{ "MK Bombchu Shop Item 7", RC_MARKET_BOMBCHU_SHOP_ITEM_7 },
|
|
||||||
{ "MK Bombchu Shop Item 8", RC_MARKET_BOMBCHU_SHOP_ITEM_8 },
|
|
||||||
{ "MK Potion Shop Item 1", RC_MARKET_POTION_SHOP_ITEM_1 },
|
|
||||||
{ "MK Potion Shop Item 2", RC_MARKET_POTION_SHOP_ITEM_2 },
|
|
||||||
{ "MK Potion Shop Item 3", RC_MARKET_POTION_SHOP_ITEM_3 },
|
|
||||||
{ "MK Potion Shop Item 4", RC_MARKET_POTION_SHOP_ITEM_4 },
|
|
||||||
{ "MK Potion Shop Item 5", RC_MARKET_POTION_SHOP_ITEM_5 },
|
|
||||||
{ "MK Potion Shop Item 6", RC_MARKET_POTION_SHOP_ITEM_6 },
|
|
||||||
{ "MK Potion Shop Item 7", RC_MARKET_POTION_SHOP_ITEM_7 },
|
|
||||||
{ "MK Potion Shop Item 8", RC_MARKET_POTION_SHOP_ITEM_8 },
|
|
||||||
{ "MK Bazaar Item 1", RC_MARKET_BAZAAR_ITEM_1 },
|
|
||||||
{ "MK Bazaar Item 2", RC_MARKET_BAZAAR_ITEM_2 },
|
|
||||||
{ "MK Bazaar Item 3", RC_MARKET_BAZAAR_ITEM_3 },
|
|
||||||
{ "MK Bazaar Item 4", RC_MARKET_BAZAAR_ITEM_4 },
|
|
||||||
{ "MK Bazaar Item 5", RC_MARKET_BAZAAR_ITEM_5 },
|
|
||||||
{ "MK Bazaar Item 6", RC_MARKET_BAZAAR_ITEM_6 },
|
|
||||||
{ "MK Bazaar Item 7", RC_MARKET_BAZAAR_ITEM_7 },
|
|
||||||
{ "MK Bazaar Item 8", RC_MARKET_BAZAAR_ITEM_8 },
|
|
||||||
{ "Kak Bazaar Item 1", RC_KAK_BAZAAR_ITEM_1 },
|
|
||||||
{ "Kak Bazaar Item 2", RC_KAK_BAZAAR_ITEM_2 },
|
|
||||||
{ "Kak Bazaar Item 3", RC_KAK_BAZAAR_ITEM_3 },
|
|
||||||
{ "Kak Bazaar Item 4", RC_KAK_BAZAAR_ITEM_4 },
|
|
||||||
{ "Kak Bazaar Item 5", RC_KAK_BAZAAR_ITEM_5 },
|
|
||||||
{ "Kak Bazaar Item 6", RC_KAK_BAZAAR_ITEM_6 },
|
|
||||||
{ "Kak Bazaar Item 7", RC_KAK_BAZAAR_ITEM_7 },
|
|
||||||
{ "Kak Bazaar Item 8", RC_KAK_BAZAAR_ITEM_8 },
|
|
||||||
{ "ZD Shop Item 1", RC_ZD_SHOP_ITEM_1 },
|
|
||||||
{ "ZD Shop Item 2", RC_ZD_SHOP_ITEM_2 },
|
|
||||||
{ "ZD Shop Item 3", RC_ZD_SHOP_ITEM_3 },
|
|
||||||
{ "ZD Shop Item 4", RC_ZD_SHOP_ITEM_4 },
|
|
||||||
{ "ZD Shop Item 5", RC_ZD_SHOP_ITEM_5 },
|
|
||||||
{ "ZD Shop Item 6", RC_ZD_SHOP_ITEM_6 },
|
|
||||||
{ "ZD Shop Item 7", RC_ZD_SHOP_ITEM_7 },
|
|
||||||
{ "ZD Shop Item 8", RC_ZD_SHOP_ITEM_8 },
|
|
||||||
{ "GC Shop Item 1", RC_GC_SHOP_ITEM_1 },
|
|
||||||
{ "GC Shop Item 2", RC_GC_SHOP_ITEM_2 },
|
|
||||||
{ "GC Shop Item 3", RC_GC_SHOP_ITEM_3 },
|
|
||||||
{ "GC Shop Item 4", RC_GC_SHOP_ITEM_4 },
|
|
||||||
{ "GC Shop Item 5", RC_GC_SHOP_ITEM_5 },
|
|
||||||
{ "GC Shop Item 6", RC_GC_SHOP_ITEM_6 },
|
|
||||||
{ "GC Shop Item 7", RC_GC_SHOP_ITEM_7 },
|
|
||||||
{ "GC Shop Item 8", RC_GC_SHOP_ITEM_8 },
|
|
||||||
{ "Colossus Gossip Stone", RC_COLOSSUS_GOSSIP_STONE },
|
|
||||||
{ "DMC Gossip Stone", RC_DMC_GOSSIP_STONE },
|
|
||||||
{ "DMC Upper Grotto Gossip Stone", RC_DMC_UPPER_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "DMT Gossip Stone", RC_DMT_GOSSIP_STONE },
|
|
||||||
{ "DMT Storms Grotto Gossip Stone", RC_DMT_STORMS_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "Dodongo's Cavern Gossip Stone", RC_DODONGOS_CAVERN_GOSSIP_STONE },
|
|
||||||
{ "Fairy Gossip Stone", RC_FAIRY_GOSSIP_STONE },
|
|
||||||
{ "GC Maze Gossip Stone", RC_GC_MAZE_GOSSIP_STONE },
|
|
||||||
{ "GC Medigoron Gossip Stone", RC_GC_MEDIGORON_GOSSIP_STONE },
|
|
||||||
{ "GV Gossip Stone", RC_GV_GOSSIP_STONE },
|
|
||||||
{ "GY Gossip Stone", RC_GY_GOSSIP_STONE },
|
|
||||||
{ "HC Malon Gossip Stone", RC_HC_MALON_GOSSIP_STONE },
|
|
||||||
{ "HC Rock Wall Gossip Stone", RC_HC_ROCK_WALL_GOSSIP_STONE },
|
|
||||||
{ "HC Storms Grotto Gossip Stone", RC_HC_STORMS_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "HF Cow Grotto Gossip Stone", RC_HF_COW_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "HF Near Market Gossip Stone", RC_HF_NEAR_MARKET_GOSSIP_STONE },
|
|
||||||
{ "HF Open Grotto Gossip Stone", RC_HF_OPEN_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "HF Southeast Gossip Stone", RC_HF_SOUTHEAST_GOSSIP_STONE },
|
|
||||||
{ "Jabu Gossip Stone", RC_JABU_GOSSIP_STONE },
|
|
||||||
{ "KF Deku Tree Left Gossip Stone", RC_KF_DEKU_TREE_LEFT_GOSSIP_STONE },
|
|
||||||
{ "KF Deku Tree Right Gossip Stone", RC_KF_DEKU_TREE_RIGHT_GOSSIP_STONE },
|
|
||||||
{ "KF Gossip Stone", RC_KF_GOSSIP_STONE },
|
|
||||||
{ "KF Storms Gossip Stone", RC_KF_STORMS_GOSSIP_STONE },
|
|
||||||
{ "Kak Open Grotto Gossip Stone", RC_KAK_OPEN_GROTTO_GOSSIP_STONE },
|
|
||||||
{ "LH Lab Gossip Stone", RC_LH_LAB_GOSSIP_STONE },
|
|
||||||
{ "LH Southeast Gossip Stone", RC_LH_SOUTHEAST_GOSSIP_STONE },
|
|
||||||
{ "LH Southwest Gossip Stone", RC_LH_SOUTHWEST_GOSSIP_STONE },
|
|
||||||
{ "LW Gossip Stone", RC_LW_GOSSIP_STONE },
|
|
||||||
{ "LW Near Shortcuts Gossip Stone", RC_LW_NEAR_SHORTCUTS_GOSSIP_STONE },
|
|
||||||
{ "SFM Maze Lower Gossip Stone", RC_SFM_MAZE_LOWER_GOSSIP_STONE },
|
|
||||||
{ "SFM Maze Upper Gossip Stone", RC_SFM_MAZE_UPPER_GOSSIP_STONE },
|
|
||||||
{ "SFM Saria Gossip Stone", RC_SFM_SARIA_GOSSIP_STONE },
|
|
||||||
{ "ToT Left Center Gossip Stone", RC_TOT_LEFT_CENTER_GOSSIP_STONE },
|
|
||||||
{ "ToT Left Gossip Stone", RC_TOT_LEFT_GOSSIP_STONE },
|
|
||||||
{ "ToT Right Center Gossip Stone", RC_TOT_RIGHT_CENTER_GOSSIP_STONE },
|
|
||||||
{ "ToT Right Gossip Stone", RC_TOT_RIGHT_GOSSIP_STONE },
|
|
||||||
{ "ZD Gossip Stone", RC_ZD_GOSSIP_STONE },
|
|
||||||
{ "ZR Near Domain Gossip Stone", RC_ZR_NEAR_DOMAIN_GOSSIP_STONE },
|
|
||||||
{ "ZR Near Grottos Gossip Stone", RC_ZR_NEAR_GROTTOS_GOSSIP_STONE },
|
|
||||||
{ "ZR Open Grotto Gossip Stone", RC_ZR_OPEN_GROTTO_GOSSIP_STONE }
|
|
||||||
};
|
|
||||||
|
|
||||||
std::unordered_map<s16, s16> getItemIdToItemId = {
|
std::unordered_map<s16, s16> getItemIdToItemId = {
|
||||||
{ GI_BOW, ITEM_BOW },
|
{ GI_BOW, ITEM_BOW },
|
||||||
{ GI_ARROW_FIRE, ITEM_ARROW_FIRE },
|
{ GI_ARROW_FIRE, ITEM_ARROW_FIRE },
|
||||||
@ -3561,13 +2830,6 @@ void GenerateRandomizerImgui() {
|
|||||||
cvarSettings[RSK_STARTING_CONSUMABLES] = CVar_GetS32("gRandomizeStartingConsumables", 0);
|
cvarSettings[RSK_STARTING_CONSUMABLES] = CVar_GetS32("gRandomizeStartingConsumables", 0);
|
||||||
cvarSettings[RSK_FULL_WALLETS] = CVar_GetS32("gRandomizeFullWallets", 0);
|
cvarSettings[RSK_FULL_WALLETS] = CVar_GetS32("gRandomizeFullWallets", 0);
|
||||||
|
|
||||||
cvarSettings[RSK_EXCLUDE_DEKU_THEATER_MASK_OF_TRUTH] = CVar_GetS32("gRandomizeExcludeDekuTheaterMaskOfTruth", 0);
|
|
||||||
cvarSettings[RSK_EXCLUDE_KAK_10_GOLD_SKULLTULA_REWARD] = CVar_GetS32("gRandomizeExcludeKak10SkullReward", 0);
|
|
||||||
cvarSettings[RSK_EXCLUDE_KAK_20_GOLD_SKULLTULA_REWARD] = CVar_GetS32("gRandomizeExcludeKak20SkullReward", 0);
|
|
||||||
cvarSettings[RSK_EXCLUDE_KAK_30_GOLD_SKULLTULA_REWARD] = CVar_GetS32("gRandomizeExcludeKak30SkullReward", 0);
|
|
||||||
cvarSettings[RSK_EXCLUDE_KAK_40_GOLD_SKULLTULA_REWARD] = CVar_GetS32("gRandomizeExcludeKak40SkullReward", 0);
|
|
||||||
cvarSettings[RSK_EXCLUDE_KAK_50_GOLD_SKULLTULA_REWARD] = CVar_GetS32("gRandomizeExcludeKak50SkullReward", 0);
|
|
||||||
|
|
||||||
// RANDOTODO implement chest minigame shuffle with keysanity
|
// RANDOTODO implement chest minigame shuffle with keysanity
|
||||||
cvarSettings[RSK_SHUFFLE_CHEST_MINIGAME] = false;
|
cvarSettings[RSK_SHUFFLE_CHEST_MINIGAME] = false;
|
||||||
|
|
||||||
@ -3587,7 +2849,15 @@ void GenerateRandomizerImgui() {
|
|||||||
|
|
||||||
cvarSettings[RSK_SKULLS_SUNS_SONG] = CVar_GetS32("gRandomizeGsExpectSunsSong", 0);
|
cvarSettings[RSK_SKULLS_SUNS_SONG] = CVar_GetS32("gRandomizeGsExpectSunsSong", 0);
|
||||||
|
|
||||||
RandoMain::GenerateRando(cvarSettings);
|
// todo: this efficently when we build out cvar array support
|
||||||
|
std::set<RandomizerCheck> excludedLocations;
|
||||||
|
std::stringstream excludedLocationStringStream(CVar_GetString("gRandomizeExcludedLocations", ""));
|
||||||
|
std::string excludedLocationString;
|
||||||
|
while(getline(excludedLocationStringStream, excludedLocationString, ',')) {
|
||||||
|
excludedLocations.insert((RandomizerCheck)std::stoi(excludedLocationString));
|
||||||
|
}
|
||||||
|
|
||||||
|
RandoMain::GenerateRando(cvarSettings, excludedLocations);
|
||||||
|
|
||||||
CVar_SetS32("gRandoGenerating", 0);
|
CVar_SetS32("gRandoGenerating", 0);
|
||||||
CVar_Save();
|
CVar_Save();
|
||||||
@ -4461,41 +3731,126 @@ void DrawRandoEditor(bool& open) {
|
|||||||
ImGui::EndTabItem();
|
ImGui::EndTabItem();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static bool locationsTabOpen = false;
|
||||||
if (ImGui::BeginTabItem("Locations")) {
|
if (ImGui::BeginTabItem("Locations")) {
|
||||||
ImGui::PushStyleVar(ImGuiStyleVar_CellPadding, cellPadding);
|
ImGui::PushStyleVar(ImGuiStyleVar_CellPadding, cellPadding);
|
||||||
|
if (!locationsTabOpen) {
|
||||||
|
locationsTabOpen = true;
|
||||||
|
RandomizerCheckObjects::UpdateImGuiVisibility();
|
||||||
|
// todo: this efficently when we build out cvar array support
|
||||||
|
std::stringstream excludedLocationStringStream(CVar_GetString("gRandomizeExcludedLocations", ""));
|
||||||
|
std::string excludedLocationString;
|
||||||
|
excludedLocations.clear();
|
||||||
|
while(getline(excludedLocationStringStream, excludedLocationString, ',')) {
|
||||||
|
excludedLocations.insert((RandomizerCheck)std::stoi(excludedLocationString));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (ImGui::BeginTable("tableRandoLocations", 2,
|
if (ImGui::BeginTable("tableRandoLocations", 2,
|
||||||
ImGuiTableFlags_BordersH | ImGuiTableFlags_BordersV)) {
|
ImGuiTableFlags_BordersH | ImGuiTableFlags_BordersV)) {
|
||||||
ImGui::TableSetupColumn("Exclude Locations", ImGuiTableColumnFlags_WidthStretch, 200.0f);
|
ImGui::TableSetupColumn("Included", ImGuiTableColumnFlags_WidthStretch, 200.0f);
|
||||||
ImGui::TableSetupColumn(" ", ImGuiTableColumnFlags_WidthStretch, 200.0f);
|
ImGui::TableSetupColumn("Excluded", ImGuiTableColumnFlags_WidthStretch, 200.0f);
|
||||||
ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true);
|
ImGui::PushItemFlag(ImGuiItemFlags_Disabled, true);
|
||||||
ImGui::TableHeadersRow();
|
ImGui::TableHeadersRow();
|
||||||
ImGui::PopItemFlag();
|
ImGui::PopItemFlag();
|
||||||
ImGui::TableNextRow();
|
ImGui::TableNextRow();
|
||||||
|
|
||||||
// COLUMN 1 - EXCLUDE LOCATIONS
|
// COLUMN 1 - INCLUDED LOCATIONS
|
||||||
ImGui::TableNextColumn();
|
|
||||||
window->DC.CurrLineTextBaseOffset = 0.0f;
|
|
||||||
SohImGui::EnhancementCheckbox("Deku Theater Mask of Truth", "gRandomizeExcludeDekuTheaterMaskOfTruth");
|
|
||||||
PaddedSeparator();
|
|
||||||
SohImGui::EnhancementCheckbox("10 Skulltula Reward", "gRandomizeExcludeKak10SkullReward");
|
|
||||||
PaddedSeparator();
|
|
||||||
SohImGui::EnhancementCheckbox("20 Skulltula Reward", "gRandomizeExcludeKak20SkullReward");
|
|
||||||
PaddedSeparator();
|
|
||||||
SohImGui::EnhancementCheckbox("30 Skulltula Reward", "gRandomizeExcludeKak30SkullReward");
|
|
||||||
PaddedSeparator();
|
|
||||||
SohImGui::EnhancementCheckbox("40 Skulltula Reward", "gRandomizeExcludeKak40SkullReward");
|
|
||||||
PaddedSeparator();
|
|
||||||
SohImGui::EnhancementCheckbox("50 Skulltula Reward", "gRandomizeExcludeKak50SkullReward");
|
|
||||||
|
|
||||||
// COLUMN 2 - EXCLUDE LOCATIONS
|
|
||||||
ImGui::TableNextColumn();
|
ImGui::TableNextColumn();
|
||||||
window->DC.CurrLineTextBaseOffset = 0.0f;
|
window->DC.CurrLineTextBaseOffset = 0.0f;
|
||||||
|
|
||||||
|
static ImGuiTextFilter locationSearch;
|
||||||
|
locationSearch.Draw();
|
||||||
|
|
||||||
|
ImGui::BeginChild("ChildIncludedLocations", ImVec2(0, -8));
|
||||||
|
for (auto areaIt : RandomizerCheckObjects::GetAllRCObjects()) {
|
||||||
|
bool hasItems = false;
|
||||||
|
for (auto locationIt : areaIt.second) {
|
||||||
|
if (locationIt.visibleInImgui &&
|
||||||
|
!excludedLocations.count(locationIt.rc) &&
|
||||||
|
locationSearch.PassFilter(locationIt.rcSpoilerName.c_str())) {
|
||||||
|
|
||||||
|
hasItems = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasItems) {
|
||||||
|
ImGui::SetNextItemOpen(true, ImGuiCond_Once);
|
||||||
|
if (ImGui::TreeNode(RandomizerCheckObjects::GetRCAreaName(areaIt.first).c_str())) {
|
||||||
|
for (auto locationIt : areaIt.second) {
|
||||||
|
if (locationIt.visibleInImgui &&
|
||||||
|
!excludedLocations.count(locationIt.rc) &&
|
||||||
|
locationSearch.PassFilter(locationIt.rcSpoilerName.c_str())) {
|
||||||
|
|
||||||
|
if (ImGui::ArrowButton(std::to_string(locationIt.rc).c_str(), ImGuiDir_Right)) {
|
||||||
|
excludedLocations.insert(locationIt.rc);
|
||||||
|
// todo: this efficently when we build out cvar array support
|
||||||
|
std::string excludedLocationString = "";
|
||||||
|
for (auto excludedLocationIt : excludedLocations) {
|
||||||
|
excludedLocationString += std::to_string(excludedLocationIt);
|
||||||
|
excludedLocationString += ",";
|
||||||
|
}
|
||||||
|
CVar_SetString("gRandomizeExcludedLocations", excludedLocationString.c_str());
|
||||||
|
SohImGui::needs_save = true;
|
||||||
|
}
|
||||||
|
ImGui::SameLine();
|
||||||
|
ImGui::Text(locationIt.rcShortName.c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::TreePop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::EndChild();
|
||||||
|
|
||||||
|
// COLUMN 2 - EXCLUDED LOCATIONS
|
||||||
|
ImGui::TableNextColumn();
|
||||||
|
window->DC.CurrLineTextBaseOffset = 0.0f;
|
||||||
|
|
||||||
|
ImGui::BeginChild("ChildExcludedLocations", ImVec2(0, -8));
|
||||||
|
for (auto areaIt : RandomizerCheckObjects::GetAllRCObjects()) {
|
||||||
|
bool hasItems = false;
|
||||||
|
for (auto locationIt : areaIt.second) {
|
||||||
|
if (locationIt.visibleInImgui && excludedLocations.count(locationIt.rc)) {
|
||||||
|
hasItems = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (hasItems) {
|
||||||
|
ImGui::SetNextItemOpen(true, ImGuiCond_Once);
|
||||||
|
if (ImGui::TreeNode(RandomizerCheckObjects::GetRCAreaName(areaIt.first).c_str())) {
|
||||||
|
for (auto locationIt : areaIt.second) {
|
||||||
|
auto elfound = excludedLocations.find(locationIt.rc);
|
||||||
|
if (locationIt.visibleInImgui && elfound != excludedLocations.end()) {
|
||||||
|
if (ImGui::ArrowButton(std::to_string(locationIt.rc).c_str(), ImGuiDir_Left)) {
|
||||||
|
excludedLocations.erase(elfound);
|
||||||
|
// todo: this efficently when we build out cvar array support
|
||||||
|
std::string excludedLocationString = "";
|
||||||
|
for (auto excludedLocationIt : excludedLocations) {
|
||||||
|
excludedLocationString += std::to_string(excludedLocationIt);
|
||||||
|
excludedLocationString += ",";
|
||||||
|
}
|
||||||
|
CVar_SetString("gRandomizeExcludedLocations", excludedLocationString.c_str());
|
||||||
|
SohImGui::needs_save = true;
|
||||||
|
}
|
||||||
|
ImGui::SameLine();
|
||||||
|
ImGui::Text(locationIt.rcShortName.c_str());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::TreePop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ImGui::EndChild();
|
||||||
|
|
||||||
ImGui::EndTable();
|
ImGui::EndTable();
|
||||||
}
|
}
|
||||||
ImGui::PopStyleVar(1);
|
ImGui::PopStyleVar(1);
|
||||||
ImGui::EndTabItem();
|
ImGui::EndTabItem();
|
||||||
|
} else {
|
||||||
|
locationsTabOpen = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ImGui::BeginTabItem("Tricks/Glitches")) {
|
if (ImGui::BeginTabItem("Tricks/Glitches")) {
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
char tex[512];
|
char tex[512];
|
||||||
uint16_t width;
|
uint16_t width;
|
||||||
@ -753,6 +755,7 @@ typedef enum {
|
|||||||
RC_ZR_NEAR_DOMAIN_GOSSIP_STONE,
|
RC_ZR_NEAR_DOMAIN_GOSSIP_STONE,
|
||||||
RC_ZR_NEAR_GROTTOS_GOSSIP_STONE,
|
RC_ZR_NEAR_GROTTOS_GOSSIP_STONE,
|
||||||
RC_ZR_OPEN_GROTTO_GOSSIP_STONE,
|
RC_ZR_OPEN_GROTTO_GOSSIP_STONE,
|
||||||
|
RC_GANONDORF_HINT,
|
||||||
RC_MAX
|
RC_MAX
|
||||||
} RandomizerCheck;
|
} RandomizerCheck;
|
||||||
|
|
||||||
@ -993,13 +996,7 @@ typedef enum {
|
|||||||
RSK_SKIP_CHILD_ZELDA,
|
RSK_SKIP_CHILD_ZELDA,
|
||||||
RSK_STARTING_CONSUMABLES,
|
RSK_STARTING_CONSUMABLES,
|
||||||
RSK_FULL_WALLETS,
|
RSK_FULL_WALLETS,
|
||||||
RSK_EXCLUDE_DEKU_THEATER_MASK_OF_TRUTH,
|
|
||||||
RSK_LANGUAGE,
|
RSK_LANGUAGE,
|
||||||
RSK_EXCLUDE_KAK_10_GOLD_SKULLTULA_REWARD,
|
|
||||||
RSK_EXCLUDE_KAK_20_GOLD_SKULLTULA_REWARD,
|
|
||||||
RSK_EXCLUDE_KAK_30_GOLD_SKULLTULA_REWARD,
|
|
||||||
RSK_EXCLUDE_KAK_40_GOLD_SKULLTULA_REWARD,
|
|
||||||
RSK_EXCLUDE_KAK_50_GOLD_SKULLTULA_REWARD,
|
|
||||||
RSK_SHUFFLE_CHEST_MINIGAME,
|
RSK_SHUFFLE_CHEST_MINIGAME,
|
||||||
RSK_CUCCO_COUNT,
|
RSK_CUCCO_COUNT,
|
||||||
RSK_BIG_POE_COUNT,
|
RSK_BIG_POE_COUNT,
|
||||||
|
972
soh/soh/Enhancements/randomizer/randomizer_check_objects.cpp
Normal file
972
soh/soh/Enhancements/randomizer/randomizer_check_objects.cpp
Normal file
@ -0,0 +1,972 @@
|
|||||||
|
#include "randomizer_check_objects.h"
|
||||||
|
#include <map>
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
#include <Cvar.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
typedef struct {
|
||||||
|
RandomizerCheck rc;
|
||||||
|
RandomizerCheckVanillaOrMQ vOrMQ;
|
||||||
|
RandomizerCheckType rcType;
|
||||||
|
RandomizerCheckArea rcArea;
|
||||||
|
bool visibleInImgui;
|
||||||
|
std::string rcShortName;
|
||||||
|
std::string rcSpoilerName;
|
||||||
|
} RandomizerCheckObject;
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define RC_OBJECT(rc, rc_v_or_mq, rc_type, rc_area, rc_shortname, rc_spoilername) \
|
||||||
|
{rc, rc_v_or_mq, rc_type, rc_area, false, rc_shortname, rc_spoilername}
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsKF = {
|
||||||
|
RC_OBJECT(RC_KF_KOKIRI_SWORD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Kokiri Sword Chest", "KF Kokiri Sword Chest"),
|
||||||
|
RC_OBJECT(RC_KF_MIDOS_TOP_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Mido Top Left Chest", "KF Mido Top Left Chest"),
|
||||||
|
RC_OBJECT(RC_KF_MIDOS_TOP_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Mido Top Right Chest", "KF Mido Top Right Chest"),
|
||||||
|
RC_OBJECT(RC_KF_MIDOS_BOTTOM_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Mido Bottom Left Chest", "KF Mido Bottom Left Chest"),
|
||||||
|
RC_OBJECT(RC_KF_MIDOS_BOTTOM_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Mido Bottom Right Chest", "KF Mido Bottom Right Chest"),
|
||||||
|
RC_OBJECT(RC_KF_STORMS_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KOKIRI_FOREST, "Storms Grotto Chest", "KF Storms Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_KF_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KOKIRI_FOREST, "GS Bean Patch", "KF GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_KF_GS_KNOW_IT_ALL_HOUSE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KOKIRI_FOREST, "GS Know It All House", "KF GS Know It All House"),
|
||||||
|
RC_OBJECT(RC_KF_GS_HOUSE_OF_TWINS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KOKIRI_FOREST, "GS House of Twins", "KF GS House of Twins"),
|
||||||
|
RC_OBJECT(RC_KF_LINKS_HOUSE_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_KOKIRI_FOREST, "Links House Cow", "KF Links House Cow"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 1", "KF Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 2", "KF Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 3", "KF Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 4", "KF Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 5", "KF Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 6", "KF Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 7", "KF Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_KF_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KOKIRI_FOREST, "Shop Item 8", "KF Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_KF_DEKU_TREE_LEFT_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_KOKIRI_FOREST, "Deku Tree Left Gossip Stone", "KF Deku Tree Left Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_KF_DEKU_TREE_RIGHT_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_KOKIRI_FOREST, "Deku Tree Right Gossip Stone", "KF Deku Tree Right Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_KF_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_KOKIRI_FOREST, "Gossip Stone", "KF Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_KF_STORMS_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_KOKIRI_FOREST, "Storms Gossip Stone", "KF Storms Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsLW = {
|
||||||
|
RC_OBJECT(RC_LW_NEAR_SHORTCUTS_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Near Shortcuts Grotto Chest", "LW Near Shortcuts Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_LW_SKULL_KID, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Skull Kid", "LW Skull Kid"),
|
||||||
|
RC_OBJECT(RC_LW_TRADE_COJIRO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Trade Cojiro", "LW Trade Cojiro"),
|
||||||
|
RC_OBJECT(RC_LW_TRADE_ODD_POTION, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Trade Odd Potion", "LW Trade Odd Potion"),
|
||||||
|
RC_OBJECT(RC_LW_OCARINA_MEMORY_GAME, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Ocarina Memory Game", "LW Ocarina Memory Game"),
|
||||||
|
RC_OBJECT(RC_LW_TARGET_IN_WOODS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Target in Woods", "LW Target in Woods"),
|
||||||
|
RC_OBJECT(RC_LW_DEKU_SCRUB_NEAR_DEKU_THEATER_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Scrub Near Deku Theater Right", "LW Deku Scrub Near Deku Theater Right"),
|
||||||
|
RC_OBJECT(RC_LW_DEKU_SCRUB_NEAR_DEKU_THEATER_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Scrub Near Deku Theater Left", "LW Deku Scrub Near Deku Theater Left"),
|
||||||
|
RC_OBJECT(RC_LW_DEKU_SCRUB_NEAR_BRIDGE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Scrub Near Bridge", "LW Deku Scrub Near Bridge"),
|
||||||
|
RC_OBJECT(RC_LW_DEKU_SCRUB_GROTTO_REAR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Scrub Grotto Rear", "LW Deku Scrub Grotto Rear"),
|
||||||
|
RC_OBJECT(RC_LW_DEKU_SCRUB_GROTTO_FRONT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Scrub Grotto Front", "LW Deku Scrub Grotto Front"),
|
||||||
|
RC_OBJECT(RC_DEKU_THEATER_SKULL_MASK, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Theater Skull Mask", "Deku Theater Skull Mask"),
|
||||||
|
RC_OBJECT(RC_DEKU_THEATER_MASK_OF_TRUTH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Deku Theater Mask of Truth", "Deku Theater Mask of Truth"),
|
||||||
|
RC_OBJECT(RC_LW_GS_BEAN_PATCH_NEAR_BRIDGE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LOST_WOODS, "GS Bean Patch Near Bridge", "LW GS Bean Patch Near Bridge"),
|
||||||
|
RC_OBJECT(RC_LW_GS_BEAN_PATCH_NEAR_THEATER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LOST_WOODS, "GS Bean Patch Near Theater", "LW GS Bean Patch Near Theater"),
|
||||||
|
RC_OBJECT(RC_LW_GS_ABOVE_THEATER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LOST_WOODS, "GS Above Theater", "LW GS Above Theater"),
|
||||||
|
RC_OBJECT(RC_LW_GIFT_FROM_SARIA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LOST_WOODS, "Gift From Saria", "LW Gift From Saria"),
|
||||||
|
RC_OBJECT(RC_LW_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_LOST_WOODS, "Gossip Stone", "LW Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_LW_NEAR_SHORTCUTS_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_LOST_WOODS, "Near Shortcuts Gossip Stone", "LW Near Shortcuts Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsSFM = {
|
||||||
|
RC_OBJECT(RC_SFM_WOLFOS_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SACRED_FOREST_MEADOW, "Wolfos Grotto Chest", "SFM Wolfos Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_SFM_DEKU_SCRUB_GROTTO_REAR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SACRED_FOREST_MEADOW, "Deku Scrub Grotto Rear", "SFM Deku Scrub Grotto Rear"),
|
||||||
|
RC_OBJECT(RC_SFM_DEKU_SCRUB_GROTTO_FRONT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SACRED_FOREST_MEADOW, "Deku Scrub Grotto Front", "SFM Deku Scrub Grotto Front"),
|
||||||
|
RC_OBJECT(RC_SFM_GS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SACRED_FOREST_MEADOW, "GS", "SFM GS"),
|
||||||
|
RC_OBJECT(RC_SHEIK_IN_FOREST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SACRED_FOREST_MEADOW, "Sheik in Forest", "Sheik in Forest"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_SARIA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SACRED_FOREST_MEADOW, "Song from Saria", "Song from Saria"),
|
||||||
|
RC_OBJECT(RC_SFM_MAZE_LOWER_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_SACRED_FOREST_MEADOW, "Maze Lower Gossip Stone", "SFM Maze Lower Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_SFM_MAZE_UPPER_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_SACRED_FOREST_MEADOW, "Maze Upper Gossip Stone", "SFM Maze Upper Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_SFM_SARIA_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_SACRED_FOREST_MEADOW, "Saria Gossip Stone", "SFM Saria Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsHF = {
|
||||||
|
RC_OBJECT(RC_HF_SOUTHEAST_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Southeast Grotto Chest", "HF Southeast Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_HF_OPEN_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Open Grotto Chest", "HF Open Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_HF_NEAR_MARKET_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Near Market Grotto Chest", "HF Near Market Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_HF_OCARINA_OF_TIME_ITEM, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Ocarina of Time Item", "HF Ocarina of Time Item"),
|
||||||
|
RC_OBJECT(RC_HF_TEKTITE_GROTTO_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Tektite Grotto Freestanding PoH", "HF Tektite Grotto Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_HF_DEKU_SCRUB_GROTTO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Deku Scrub Grotto", "HF Deku Scrub Grotto"),
|
||||||
|
RC_OBJECT(RC_HF_GS_COW_GROTTO, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_HYRULE_FIELD, "GS Cow Grotto", "HF GS Cow Grotto"),
|
||||||
|
RC_OBJECT(RC_HF_GS_NEAR_KAK_GROTTO, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_HYRULE_FIELD, "GS Near Kak Grotto", "HF GS Near Kak Grotto"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_OCARINA_OF_TIME, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_FIELD, "Song from Ocarina of Time", "Song from Ocarina of Time"),
|
||||||
|
RC_OBJECT(RC_HF_COW_GROTTO_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_HYRULE_FIELD, "Cow Grotto Cow", "HF Cow Grotto Cow"),
|
||||||
|
RC_OBJECT(RC_HF_COW_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_FIELD, "Cow Grotto Gossip Stone", "HF Cow Grotto Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_HF_NEAR_MARKET_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_FIELD, "Near Market Gossip Stone", "HF Near Market Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_HF_OPEN_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_FIELD, "Open Grotto Gossip Stone", "HF Open Grotto Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_HF_SOUTHEAST_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_FIELD, "Southeast Gossip Stone", "HF Southeast Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsLH = {
|
||||||
|
RC_OBJECT(RC_LH_CHILD_FISHING, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Child Fishing", "LH Child Fishing"),
|
||||||
|
RC_OBJECT(RC_LH_ADULT_FISHING, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Adult Fishing", "LH Adult Fishing"),
|
||||||
|
RC_OBJECT(RC_LH_LAB_DIVE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Lab Dive", "LH Lab Dive"),
|
||||||
|
RC_OBJECT(RC_LH_TRADE_FROG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Lab Trade Eyeball Frog", "LH Lab Trade Eyeball Frog"),
|
||||||
|
RC_OBJECT(RC_LH_UNDERWATER_ITEM, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Underwater Item", "LH Underwater Item"),
|
||||||
|
RC_OBJECT(RC_LH_SUN, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Sun", "LH Sun"),
|
||||||
|
RC_OBJECT(RC_LH_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Freestanding PoH", "LH Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_LH_DEKU_SCRUB_GROTTO_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Deku Scrub Grotto Left", "LH Deku Scrub Grotto Left"),
|
||||||
|
RC_OBJECT(RC_LH_DEKU_SCRUB_GROTTO_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Deku Scrub Grotto Right", "LH Deku Scrub Grotto Right"),
|
||||||
|
RC_OBJECT(RC_LH_DEKU_SCRUB_GROTTO_CENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LAKE_HYLIA, "Deku Scrub Grotto Center", "LH Deku Scrub Grotto Center"),
|
||||||
|
RC_OBJECT(RC_LH_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LAKE_HYLIA, "GS Bean Patch", "LH GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_LH_GS_SMALL_ISLAND, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LAKE_HYLIA, "GS Small Island", "LH GS Small Island"),
|
||||||
|
RC_OBJECT(RC_LH_GS_LAB_WALL, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LAKE_HYLIA, "GS Lab Wall", "LH GS Lab Wall"),
|
||||||
|
RC_OBJECT(RC_LH_GS_LAB_CRATE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LAKE_HYLIA, "GS Lab Crate", "LH GS Lab Crate"),
|
||||||
|
RC_OBJECT(RC_LH_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LAKE_HYLIA, "GS Tree", "LH GS Tree"),
|
||||||
|
RC_OBJECT(RC_LH_LAB_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_LAKE_HYLIA, "Lab Gossip Stone", "LH Lab Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_LH_SOUTHEAST_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_LAKE_HYLIA, "Southeast Gossip Stone", "LH Southeast Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_LH_SOUTHWEST_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_LAKE_HYLIA, "Southwest Gossip Stone", "LH Southwest Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGV = {
|
||||||
|
RC_OBJECT(RC_GV_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Chest", "GV Chest"),
|
||||||
|
RC_OBJECT(RC_GV_TRADE_SAW, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Trade Saw", "GV Trade Saw"),
|
||||||
|
RC_OBJECT(RC_GV_WATERFALL_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Waterfall Freestanding PoH", "GV Waterfall Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_GV_CRATE_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Crate Freestanding PoH", "GV Crate Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_GV_DEKU_SCRUB_GROTTO_REAR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Deku Scrub Grotto Rear", "GV Deku Scrub Grotto Rear"),
|
||||||
|
RC_OBJECT(RC_GV_DEKU_SCRUB_GROTTO_FRONT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_VALLEY, "Deku Scrub Grotto Front", "GV Deku Scrub Grotto Front"),
|
||||||
|
RC_OBJECT(RC_GV_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_VALLEY, "GS Bean Patch", "GV GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_GV_GS_SMALL_BRIDGE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_VALLEY, "GS Small Bridge", "GV GS Small Bridge"),
|
||||||
|
RC_OBJECT(RC_GV_GS_PILLAR, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_VALLEY, "GS Pillar", "GV GS Pillar"),
|
||||||
|
RC_OBJECT(RC_GV_GS_BEHIND_TENT, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_VALLEY, "GS Behind Tent", "GV GS Behind Tent"),
|
||||||
|
RC_OBJECT(RC_GV_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_GERUDO_VALLEY, "Cow", "GV Cow"),
|
||||||
|
RC_OBJECT(RC_GV_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_GERUDO_VALLEY, "Gossip Stone", "GV Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGF = {
|
||||||
|
RC_OBJECT(RC_GF_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "Chest", "GF Chest"),
|
||||||
|
RC_OBJECT(RC_GF_HBA_1000_POINTS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF HBA 1000 Points", "GF HBA 1000 Points"),
|
||||||
|
RC_OBJECT(RC_GF_HBA_1500_POINTS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF HBA 1500 Points", "GF HBA 1500 Points"),
|
||||||
|
RC_OBJECT(RC_GF_GERUDO_MEMBERSHIP_CARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF Gerudo Membership Card", "GF Gerudo Membership Card"),
|
||||||
|
RC_OBJECT(RC_GF_NORTH_F1_CARPENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF North F1 Carpenter", "GF North F1 Carpenter"),
|
||||||
|
RC_OBJECT(RC_GF_NORTH_F2_CARPENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF North F2 Carpenter", "GF North F2 Carpenter"),
|
||||||
|
RC_OBJECT(RC_GF_SOUTH_F1_CARPENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF South F1 Carpenter", "GF South F1 Carpenter"),
|
||||||
|
RC_OBJECT(RC_GF_SOUTH_F2_CARPENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_FORTRESS, "GF South F2 Carpenter", "GF South F2 Carpenter"),
|
||||||
|
RC_OBJECT(RC_GF_GS_ARCHERY_RANGE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_FORTRESS, "GS Archery Range", "GF GS Archery Range"),
|
||||||
|
RC_OBJECT(RC_GF_GS_TOP_FLOOR, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GERUDO_FORTRESS, "GS Top Floor", "GF GS Top Floor"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsWL = {
|
||||||
|
RC_OBJECT(RC_WASTELAND_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WASTELAND, "Chest", "Wasteland Chest"),
|
||||||
|
RC_OBJECT(RC_WASTELAND_BOMBCHU_SALESMAN, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WASTELAND, "Carpet Salesman", "Wasteland Carpet Salesman"),
|
||||||
|
RC_OBJECT(RC_WASTELAND_GS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WASTELAND, "GS", "Wasteland GS"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsCL = {
|
||||||
|
RC_OBJECT(RC_COLOSSUS_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DESERT_COLOSSUS, "Freestanding PoH", "Colossus Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_DEKU_SCRUB_GROTTO_REAR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DESERT_COLOSSUS, "Deku Scrub Grotto Rear", "Colossus Deku Scrub Grotto Rear"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_DEKU_SCRUB_GROTTO_FRONT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DESERT_COLOSSUS, "Deku Scrub Grotto Front", "Colossus Deku Scrub Grotto Front"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DESERT_COLOSSUS, "GS Bean Patch", "Colossus GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_GS_HILL, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DESERT_COLOSSUS, "GS Hill", "Colossus GS Hill"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DESERT_COLOSSUS, "GS Tree", "Colossus GS Tree"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DESERT_COLOSSUS, "Great Fairy Reward", "Colossus Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_SHEIK_AT_COLOSSUS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DESERT_COLOSSUS, "Sheik at Colossus", "Sheik at Colossus"),
|
||||||
|
RC_OBJECT(RC_COLOSSUS_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DESERT_COLOSSUS, "Gossip Stone", "Colossus Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsMK = {
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Treasure Chest Game Reward", "MK Treasure Chest Game Reward"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_BOWLING_FIRST_PRIZE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Bombchu Bowling First Prize", "MK Bombchu Bowling First Prize"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_BOWLING_SECOND_PRIZE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Bombchu Bowling Second Prize", "MK Bombchu Bowling Second Prize"),
|
||||||
|
RC_OBJECT(RC_MARKET_LOST_DOG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Lost Dog", "MK Lost Dog"),
|
||||||
|
RC_OBJECT(RC_MARKET_SHOOTING_GALLERY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Shooting Gallery", "MK Shooting Gallery"),
|
||||||
|
RC_OBJECT(RC_MARKET_10_BIG_POES, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "10 Big Poes", "MK 10 Big Poes"),
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_ITEM_1, RCVORMQ_VANILLA, RCTYPE_CHEST_GAME, RCAREA_MARKET, "Chest Game First Room Chest", "MK Chest Game First Room Chest"),
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_ITEM_2, RCVORMQ_VANILLA, RCTYPE_CHEST_GAME, RCAREA_MARKET, "Chest Game Second Room Chest", "MK Chest Game Second Room Chest"),
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_ITEM_3, RCVORMQ_VANILLA, RCTYPE_CHEST_GAME, RCAREA_MARKET, "Chest Game Third Room Chest", "MK Chest Game Third Room Chest"),
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_ITEM_4, RCVORMQ_VANILLA, RCTYPE_CHEST_GAME, RCAREA_MARKET, "Chest Game Fourth Room Chest", "MK Chest Game Fourth Room Chest"),
|
||||||
|
RC_OBJECT(RC_MARKET_TREASURE_CHEST_GAME_ITEM_5, RCVORMQ_VANILLA, RCTYPE_CHEST_GAME, RCAREA_MARKET, "Chest Game Fifth Room Chest", "MK Chest Game Fifth Room Chest"),
|
||||||
|
RC_OBJECT(RC_MARKET_GS_GUARD_HOUSE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_MARKET, "Market GS Guard House", "Market GS Guard House"),
|
||||||
|
RC_OBJECT(RC_TOT_LIGHT_ARROWS_CUTSCENE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "ToT Light Arrow Cutscene", "ToT Light Arrow Cutscene"),
|
||||||
|
RC_OBJECT(RC_SHEIK_AT_TEMPLE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_MARKET, "Sheik at Temple", "Sheik at Temple"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 1", "MK Bombchu Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 2", "MK Bombchu Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 3", "MK Bombchu Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 4", "MK Bombchu Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 5", "MK Bombchu Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 6", "MK Bombchu Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 7", "MK Bombchu Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_MARKET_BOMBCHU_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bombchu Shop Item 8", "MK Bombchu Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 1", "MK Potion Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 2", "MK Potion Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 3", "MK Potion Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 4", "MK Potion Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 5", "MK Potion Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 6", "MK Potion Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 7", "MK Potion Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_MARKET_POTION_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Potion Shop Item 8", "MK Potion Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 1", "MK Bazaar Item 1"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 2", "MK Bazaar Item 2"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 3", "MK Bazaar Item 3"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 4", "MK Bazaar Item 4"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 5", "MK Bazaar Item 5"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 6", "MK Bazaar Item 6"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 7", "MK Bazaar Item 7"),
|
||||||
|
RC_OBJECT(RC_MARKET_BAZAAR_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_MARKET, "Bazaar Item 8", "MK Bazaar Item 8"),
|
||||||
|
RC_OBJECT(RC_TOT_LEFT_CENTER_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_MARKET, "ToT Left Center Gossip Stone", "ToT Left Center Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_TOT_LEFT_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_MARKET, "ToT Left Gossip Stone", "ToT Left Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_TOT_RIGHT_CENTER_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_MARKET, "ToT Right Center Gossip Stone", "ToT Right Center Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_TOT_RIGHT_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_MARKET, "ToT Right Gossip Stone", "ToT Right Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsHC = {
|
||||||
|
RC_OBJECT(RC_HC_MALON_EGG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_CASTLE, "Malon Egg", "HC Malon Egg"),
|
||||||
|
RC_OBJECT(RC_HC_ZELDAS_LETTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_CASTLE, "Zeldas Letter", "HC Zeldas Letter"),
|
||||||
|
RC_OBJECT(RC_OGC_GS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_HYRULE_CASTLE, "OGC GS", "OGC GS"),
|
||||||
|
RC_OBJECT(RC_HC_GS_STORMS_GROTTO, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_HYRULE_CASTLE, "GS Storms Grotto", "HC GS Storms Grotto"),
|
||||||
|
RC_OBJECT(RC_HC_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_HYRULE_CASTLE, "GS Tree", "HC GS Tree"),
|
||||||
|
RC_OBJECT(RC_HC_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_CASTLE, "Great Fairy Reward", "HC Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_OGC_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_CASTLE, "OGC Great Fairy Reward", "OGC Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_IMPA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_HYRULE_CASTLE, "Song from Impa", "Song from Impa"),
|
||||||
|
RC_OBJECT(RC_HC_MALON_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_CASTLE, "Malon Gossip Stone", "HC Malon Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_HC_ROCK_WALL_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_CASTLE, "Rock Wall Gossip Stone", "HC Rock Wall Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_HC_STORMS_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_HYRULE_CASTLE, "Storms Grotto Gossip Stone", "HC Storms Grotto Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsKV = {
|
||||||
|
RC_OBJECT(RC_KAK_REDEAD_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Redead Grotto Chest", "Kak Redead Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_KAK_OPEN_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Open Grotto Chest", "Kak Open Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_KAK_10_GOLD_SKULLTULA_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "10 Gold Skulltula Reward", "Kak 10 Gold Skulltula Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_20_GOLD_SKULLTULA_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "20 Gold Skulltula Reward", "Kak 20 Gold Skulltula Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_30_GOLD_SKULLTULA_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "30 Gold Skulltula Reward", "Kak 30 Gold Skulltula Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_40_GOLD_SKULLTULA_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "40 Gold Skulltula Reward", "Kak 40 Gold Skulltula Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_50_GOLD_SKULLTULA_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "50 Gold Skulltula Reward", "Kak 50 Gold Skulltula Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_MAN_ON_ROOF, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Man on Roof", "Kak Man on Roof"),
|
||||||
|
RC_OBJECT(RC_KAK_SHOOTING_GALLERY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Shooting Gallery Reward", "Kak Shooting Gallery Reward"),
|
||||||
|
RC_OBJECT(RC_KAK_TRADE_ODD_MUSHROOM, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Trade Odd Mushroom", "Kak Trade Odd Mushroom"),
|
||||||
|
RC_OBJECT(RC_KAK_ANJU_AS_ADULT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Anju as Adult", "Kak Anju as Adult"),
|
||||||
|
RC_OBJECT(RC_KAK_ANJU_AS_CHILD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Anju as Child", "Kak Anju as Child"),
|
||||||
|
RC_OBJECT(RC_KAK_TRADE_POCKET_CUCCO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Trade Pocket Cucco", "Kak Trade Pocket Cucco"),
|
||||||
|
RC_OBJECT(RC_KAK_IMPAS_HOUSE_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Impas House Freestanding PoH", "Kak Impas House Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_KAK_WINDMILL_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Windmill Freestanding PoH", "Kak Windmill Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_HOUSE_UNDER_CONSTRUCTION, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS House Under Construction", "Kak GS House Under Construction"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_SKULLTULA_HOUSE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS Skulltula House", "Kak GS Skulltula House"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_GUARDS_HOUSE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS Guards House", "Kak GS Guards House"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS Tree", "Kak GS Tree"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_WATCHTOWER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS Watchtower", "Kak GS Watchtower"),
|
||||||
|
RC_OBJECT(RC_KAK_GS_ABOVE_IMPAS_HOUSE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_KAKARIKO_VILLAGE, "GS Above Impas House", "Kak GS Above Impas House"),
|
||||||
|
RC_OBJECT(RC_SHEIK_IN_KAKARIKO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Sheik in Kakariko", "Sheik in Kakariko"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_WINDMILL, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_KAKARIKO_VILLAGE, "Song from Windmill", "Song from Windmill"),
|
||||||
|
RC_OBJECT(RC_KAK_IMPAS_HOUSE_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_KAKARIKO_VILLAGE, "Impas House Cow", "Kak Impas House Cow"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 1", "Kak Potion Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 2", "Kak Potion Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 3", "Kak Potion Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 4", "Kak Potion Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 5", "Kak Potion Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 6", "Kak Potion Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 7", "Kak Potion Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_KAK_POTION_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Potion Shop Item 8", "Kak Potion Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 1", "Kak Bazaar Item 1"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 2", "Kak Bazaar Item 2"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 3", "Kak Bazaar Item 3"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 4", "Kak Bazaar Item 4"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 5", "Kak Bazaar Item 5"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 6", "Kak Bazaar Item 6"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 7", "Kak Bazaar Item 7"),
|
||||||
|
RC_OBJECT(RC_KAK_BAZAAR_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_KAKARIKO_VILLAGE, "Bazaar Item 8", "Kak Bazaar Item 8"),
|
||||||
|
RC_OBJECT(RC_KAK_OPEN_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_KAKARIKO_VILLAGE, "Open Grotto Gossip Stone", "Kak Open Grotto Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGY = {
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_SHIELD_GRAVE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Shield Grave Chest", "GY Shield Grave Chest"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_HEART_PIECE_GRAVE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Heart Piece Grave Chest", "GY Heart Piece Grave Chest"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_ROYAL_FAMILYS_TOMB_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Composers Grave Chest", "GY Composers Grave Chest"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_HOOKSHOT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Hookshot Chest", "GY Hookshot Chest"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_DAMPE_RACE_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Dampe Race Freestanding PoH", "GY Dampe Race Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Freestanding PoH", "GY Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_DAMPE_GRAVEDIGGING_TOUR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Dampe Gravedigging Tour", "GY Dampe Gravedigging Tour"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_GS_WALL, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GRAVEYARD, "GS Wall", "Graveyard GS Wall"),
|
||||||
|
RC_OBJECT(RC_GRAVEYARD_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GRAVEYARD, "GS Bean Patch", "Graveyard GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_ROYAL_FAMILYS_TOMB, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GRAVEYARD, "Song from Composers Grave", "Song from Composers Grave"),
|
||||||
|
RC_OBJECT(RC_GY_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_GRAVEYARD, "Gossip Stone", "GY Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsDMT = {
|
||||||
|
RC_OBJECT(RC_DMT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Chest", "DMT Chest"),
|
||||||
|
RC_OBJECT(RC_DMT_STORMS_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Storms Grotto Chest", "DMT Storms Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_DMT_TRADE_BROKEN_SWORD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Trade Broken Sword", "DMT Trade Broken Sword"),
|
||||||
|
RC_OBJECT(RC_DMT_TRADE_EYEDROPS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Trade Eyedrops", "DMT Trade Eyedrops"),
|
||||||
|
RC_OBJECT(RC_DMT_TRADE_CLAIM_CHECK, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Trade Claim Check", "DMT Trade Claim Check"),
|
||||||
|
RC_OBJECT(RC_DMT_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Freestanding PoH", "DMT Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_DMT_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_TRAIL, "GS Bean Patch", "DMT GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_DMT_GS_NEAR_KAK, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_TRAIL, "GS Near Kak", "DMT GS Near Kak"),
|
||||||
|
RC_OBJECT(RC_DMT_GS_ABOVE_DODONGOS_CAVERN, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_TRAIL, "GS Above Dodongos Cavern", "DMT GS Above Dodongos Cavern"),
|
||||||
|
RC_OBJECT(RC_DMT_GS_FALLING_ROCKS_PATH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_TRAIL, "GS Falling Rocks Path", "DMT GS Falling Rocks Path"),
|
||||||
|
RC_OBJECT(RC_DMT_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_TRAIL, "Great Fairy Reward", "DMT Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_DMT_COW_GROTTO_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_DEATH_MOUNTAIN_TRAIL, "Cow Grotto Cow", "DMT Cow Grotto Cow"),
|
||||||
|
RC_OBJECT(RC_DMT_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DEATH_MOUNTAIN_TRAIL, "Gossip Stone", "DMT Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_DMT_STORMS_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DEATH_MOUNTAIN_TRAIL, "Storms Grotto Gossip Stone", "DMT Storms Grotto Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGC = {
|
||||||
|
RC_OBJECT(RC_GC_MAZE_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Maze Left Chest", "GC Maze Left Chest"),
|
||||||
|
RC_OBJECT(RC_GC_MAZE_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Maze Right Chest", "GC Maze Right Chest"),
|
||||||
|
RC_OBJECT(RC_GC_MAZE_CENTER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Maze Center Chest", "GC Maze Center Chest"),
|
||||||
|
RC_OBJECT(RC_GC_ROLLING_GORON_AS_CHILD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Rolling Goron as Child", "GC Rolling Goron as Child"),
|
||||||
|
RC_OBJECT(RC_GC_ROLLING_GORON_AS_ADULT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Rolling Goron as Adult", "GC Rolling Goron as Adult"),
|
||||||
|
RC_OBJECT(RC_GC_DARUNIAS_JOY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Darunias Joy", "GC Darunias Joy"),
|
||||||
|
RC_OBJECT(RC_GC_POT_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Pot Freestanding PoH", "GC Pot Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_GC_DEKU_SCRUB_GROTTO_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Deku Scrub Grotto Left", "GC Deku Scrub Grotto Left"),
|
||||||
|
RC_OBJECT(RC_GC_DEKU_SCRUB_GROTTO_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Deku Scrub Grotto Right", "GC Deku Scrub Grotto Right"),
|
||||||
|
RC_OBJECT(RC_GC_DEKU_SCRUB_GROTTO_CENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Deku Scrub Grotto Center", "GC Deku Scrub Grotto Center"),
|
||||||
|
RC_OBJECT(RC_GC_MEDIGORON, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GORON_CITY, "Medigoron", "GC Medigoron"),
|
||||||
|
RC_OBJECT(RC_GC_GS_CENTER_PLATFORM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GORON_CITY, "GS Center Platform", "GC GS Center Platform"),
|
||||||
|
RC_OBJECT(RC_GC_GS_BOULDER_MAZE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_GORON_CITY, "GS Boulder Maze", "GC GS Boulder Maze"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 1", "GC Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 2", "GC Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 3", "GC Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 4", "GC Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 5", "GC Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 6", "GC Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 7", "GC Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_GC_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_GORON_CITY, "Shop Item 8", "GC Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_GC_MAZE_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_GORON_CITY, "Maze Gossip Stone", "GC Maze Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_GC_MEDIGORON_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_GORON_CITY, "Medigoron Gossip Stone", "GC Medigoron Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsDMC = {
|
||||||
|
RC_OBJECT(RC_DMC_UPPER_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Upper Grotto Chest", "DMC Upper Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_DMC_WALL_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Wall Freestanding PoH", "DMC Wall Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_DMC_VOLCANO_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Volcano Freestanding PoH", "DMC Volcano Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_DMC_DEKU_SCRUB, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Deku Scrub", "DMC Deku Scrub"),
|
||||||
|
RC_OBJECT(RC_DMC_DEKU_SCRUB_GROTTO_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Deku Scrub Grotto Left", "DMC Deku Scrub Grotto Left"),
|
||||||
|
RC_OBJECT(RC_DMC_DEKU_SCRUB_GROTTO_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Deku Scrub Grotto Right", "DMC Deku Scrub Grotto Right"),
|
||||||
|
RC_OBJECT(RC_DMC_DEKU_SCRUB_GROTTO_CENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Deku Scrub Grotto Center", "DMC Deku Scrub Grotto Center"),
|
||||||
|
RC_OBJECT(RC_DMC_GS_BEAN_PATCH, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_CRATER, "GS Bean Patch", "DMC GS Bean Patch"),
|
||||||
|
RC_OBJECT(RC_DMC_GS_CRATE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEATH_MOUNTAIN_CRATER, "GS Crate", "DMC GS Crate"),
|
||||||
|
RC_OBJECT(RC_DMC_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Great Fairy Reward", "DMC Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_SHEIK_IN_CRATER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEATH_MOUNTAIN_CRATER, "Sheik in Crater", "Sheik in Crater"),
|
||||||
|
RC_OBJECT(RC_DMC_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DEATH_MOUNTAIN_CRATER, "Gossip Stone", "DMC Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_DMC_UPPER_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DEATH_MOUNTAIN_CRATER, "Upper Grotto Gossip Stone", "DMC Upper Grotto Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsZR = {
|
||||||
|
RC_OBJECT(RC_ZR_OPEN_GROTTO_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Open Grotto Chest", "ZR Open Grotto Chest"),
|
||||||
|
RC_OBJECT(RC_ZR_MAGIC_BEAN_SALESMAN, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Magic Bean Salesman", "ZR Magic Bean Salesman"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_ZELDAS_LULLABY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Zelda's Lullaby", "ZR Frogs Zelda's Lullaby"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_EPONAS_SONG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Epona's Song", "ZR Frogs Epona's Song"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_SARIAS_SONG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Saria's Song", "ZR Frogs Saria's Song"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_SUNS_SONG, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Sun's Song", "ZR Frogs Sun's Song"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_SONG_OF_TIME, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Song of Time", "ZR Frogs Song of Time"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_IN_THE_RAIN, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs in the Rain", "ZR Frogs in the Rain"),
|
||||||
|
RC_OBJECT(RC_ZR_FROGS_OCARINA_GAME, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Frogs Ocarina Game", "ZR Frogs Ocarina Game"),
|
||||||
|
RC_OBJECT(RC_ZR_NEAR_OPEN_GROTTO_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Near Open Grotto Freestanding PoH", "ZR Near Open Grotto Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ZR_NEAR_DOMAIN_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Near Domain Freestanding PoH", "ZR Near Domain Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ZR_DEKU_SCRUB_GROTTO_REAR, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Deku Scrub Grotto Rear", "ZR Deku Scrub Grotto Rear"),
|
||||||
|
RC_OBJECT(RC_ZR_DEKU_SCRUB_GROTTO_FRONT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_RIVER, "Deku Scrub Grotto Front", "ZR Deku Scrub Grotto Front"),
|
||||||
|
RC_OBJECT(RC_ZR_GS_LADDER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_RIVER, "GS Ladder", "ZR GS Ladder"),
|
||||||
|
RC_OBJECT(RC_ZR_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_RIVER, "GS Tree", "ZR GS Tree"),
|
||||||
|
RC_OBJECT(RC_ZR_GS_ABOVE_BRIDGE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_RIVER, "GS Above Bridge", "ZR GS Above Bridge"),
|
||||||
|
RC_OBJECT(RC_ZR_GS_NEAR_RAISED_GROTTOS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_RIVER, "GS Near Raised Grottos", "ZR GS Near Raised Grottos"),
|
||||||
|
RC_OBJECT(RC_ZR_NEAR_DOMAIN_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_RIVER, "Near Domain Gossip Stone", "ZR Near Domain Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_ZR_NEAR_GROTTOS_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_RIVER, "Near Grottos Gossip Stone", "ZR Near Grottos Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_ZR_OPEN_GROTTO_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_RIVER, "Open Grotto Gossip Stone", "ZR Open Grotto Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsZD = {
|
||||||
|
RC_OBJECT(RC_ZD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_DOMAIN, "Chest", "ZD Chest"),
|
||||||
|
RC_OBJECT(RC_ZD_DIVING_MINIGAME, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_DOMAIN, "Diving Minigame", "ZD Diving Minigame"),
|
||||||
|
RC_OBJECT(RC_ZD_KING_ZORA_THAWED, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_DOMAIN, "King Zora Thawed", "ZD King Zora Thawed"),
|
||||||
|
RC_OBJECT(RC_ZD_TRADE_PRESCRIPTION, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_DOMAIN, "Trade Prescription", "ZD Trade Prescription"),
|
||||||
|
RC_OBJECT(RC_ZD_GS_FROZEN_WATERFALL, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_DOMAIN, "GS Frozen Waterfall", "ZD GS Frozen Waterfall"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_1, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 1", "ZD Shop Item 1"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_2, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 2", "ZD Shop Item 2"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_3, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 3", "ZD Shop Item 3"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_4, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 4", "ZD Shop Item 4"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_5, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 5", "ZD Shop Item 5"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_6, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 6", "ZD Shop Item 6"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_7, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 7", "ZD Shop Item 7"),
|
||||||
|
RC_OBJECT(RC_ZD_SHOP_ITEM_8, RCVORMQ_VANILLA, RCTYPE_SHOP, RCAREA_ZORAS_DOMAIN, "Shop Item 8", "ZD Shop Item 8"),
|
||||||
|
RC_OBJECT(RC_ZD_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_DOMAIN, "Gossip Stone", "ZD Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsZF = {
|
||||||
|
RC_OBJECT(RC_ZF_ICEBERC_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_FOUNTAIN, "Iceberg Freestanding PoH", "ZF Iceberg Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ZF_BOTTOM_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_FOUNTAIN, "Bottom Freestanding PoH", "ZF Bottom Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ZF_GS_ABOVE_THE_LOG, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_FOUNTAIN, "GS Above The Log", "ZF GS Above The Log"),
|
||||||
|
RC_OBJECT(RC_ZF_GS_HIDDEN_CAVE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_FOUNTAIN, "GS Hidden Cave", "ZF GS Hidden Cave"),
|
||||||
|
RC_OBJECT(RC_ZF_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ZORAS_FOUNTAIN, "GS Tree", "ZF GS Tree"),
|
||||||
|
RC_OBJECT(RC_ZF_GREAT_FAIRY_REWARD, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ZORAS_FOUNTAIN, "Great Fairy Reward", "ZF Great Fairy Reward"),
|
||||||
|
RC_OBJECT(RC_FAIRY_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_FOUNTAIN, "Fairy Gossip Stone", "Fairy Gossip Stone"),
|
||||||
|
RC_OBJECT(RC_JABU_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_ZORAS_FOUNTAIN, "Jabu Gossip Stone", "Jabu Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsLLR = {
|
||||||
|
RC_OBJECT(RC_LLR_TALONS_CHICKENS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Talons Chickens", "LLR Talons Chickens"),
|
||||||
|
RC_OBJECT(RC_LLR_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Freestanding PoH", "LLR Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_LLR_DEKU_SCRUB_GROTTO_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Deku Scrub Grotto Left", "LLR Deku Scrub Grotto Left"),
|
||||||
|
RC_OBJECT(RC_LLR_DEKU_SCRUB_GROTTO_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Deku Scrub Grotto Right", "LLR Deku Scrub Grotto Right"),
|
||||||
|
RC_OBJECT(RC_LLR_DEKU_SCRUB_GROTTO_CENTER, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Deku Scrub Grotto Center", "LLR Deku Scrub Grotto Center"),
|
||||||
|
RC_OBJECT(RC_LLR_GS_BACK_WALL, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LON_LON_RANCH, "GS Back Wall", "LLR GS Back Wall"),
|
||||||
|
RC_OBJECT(RC_LLR_GS_RAIN_SHED, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LON_LON_RANCH, "GS Rain Shed", "LLR GS Rain Shed"),
|
||||||
|
RC_OBJECT(RC_LLR_GS_HOUSE_WINDOW, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LON_LON_RANCH, "GS House Window", "LLR GS House Window"),
|
||||||
|
RC_OBJECT(RC_LLR_GS_TREE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_LON_LON_RANCH, "GS Tree", "LLR GS Tree"),
|
||||||
|
RC_OBJECT(RC_SONG_FROM_MALON, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_LON_LON_RANCH, "Song from Malon", "Song from Malon"),
|
||||||
|
RC_OBJECT(RC_LLR_STABLES_LEFT_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_LON_LON_RANCH, "Stables Left Cow", "LLR Stables Left Cow"),
|
||||||
|
RC_OBJECT(RC_LLR_STABLES_RIGHT_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_LON_LON_RANCH, "Stables Right Cow", "LLR Stables Right Cow"),
|
||||||
|
RC_OBJECT(RC_LLR_TOWER_LEFT_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_LON_LON_RANCH, "Tower Left Cow", "LLR Tower Left Cow"),
|
||||||
|
RC_OBJECT(RC_LLR_TOWER_RIGHT_COW, RCVORMQ_VANILLA, RCTYPE_COW, RCAREA_LON_LON_RANCH, "Tower Right Cow", "LLR Tower Right Cow"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsDT = {
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_DEKU_TREE, "Map Chest", "Deku Tree Map Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_DEKU_TREE, "Compass Chest", "Deku Tree Compass Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_COMPASS_ROOM_SIDE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Compass Room Side Chest", "Deku Tree Compass Room Side Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_BASEMENT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Basement Chest", "Deku Tree Basement Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_SLINGSHOT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Slingshot Chest", "Deku Tree Slingshot Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_SLINGSHOT_ROOM_SIDE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Slingshot Room Side Chest", "Deku Tree Slingshot Room Side Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_DEKU_TREE, "MQ Map Chest", "Deku Tree MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_DEKU_TREE, "MQ Compass Chest", "Deku Tree MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_SLINGSHOT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ Slingshot Chest", "Deku Tree MQ Slingshot Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_SLINGSHOT_ROOM_BACK_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ Slingshot Room Back Chest", "Deku Tree MQ Slingshot Room Back Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_BASEMENT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ Basement Chest", "Deku Tree MQ Basement Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_BEFORE_SPINNING_LOG_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ Before Spinning Log Chest", "Deku Tree MQ Before Spinning Log Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_AFTER_SPINNING_LOG_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ After Spinning Log Chest", "Deku Tree MQ After Spinning Log Chest"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_DEKU_SCRUB, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "MQ Deku Scrub", "Deku Tree MQ Deku Scrub"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_GS_BASEMENT_BACK_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "GS Basement Back Room", "Deku Tree GS Basement Back Room"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_GS_BASEMENT_GATE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "GS Basement Gate", "Deku Tree GS Basement Gate"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_GS_BASEMENT_VINES, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "GS Basement Vines", "Deku Tree GS Basement Vines"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_GS_COMPASS_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "GS Compass Room", "Deku Tree GS Compass Room"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_GS_LOBBY, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "MQ GS Lobby", "Deku Tree MQ GS Lobby"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_GS_COMPASS_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "MQ GS Compass Room", "Deku Tree MQ GS Compass Room"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_GS_BASEMENT_GRAVES_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "MQ GS Basement Graves Room", "Deku Tree MQ GS Basement Graves Room"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_MQ_GS_BASEMENT_BACK_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DEKU_TREE, "MQ GS Basement Back Room", "Deku Tree MQ GS Basement Back Room"),
|
||||||
|
RC_OBJECT(RC_QUEEN_GOHMA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Queen Gohma", "Queen Gohma"),
|
||||||
|
RC_OBJECT(RC_DEKU_TREE_QUEEN_GOHMA_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DEKU_TREE, "Queen Gohma Heart Container", "Deku Tree Queen Gohma Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsDC = {
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_BOSS_ROOM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Boss Room Chest", "Dodongos Cavern Boss Room Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_DODONGOS_CAVERN, "Map Chest", "Dodongos Cavern Map Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_DODONGOS_CAVERN, "Compass Chest", "Dodongos Cavern Compass Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_BOMB_FLOWER_PLATFORM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Bomb Flower Platform Chest", "Dodongos Cavern Bomb Flower Platform Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_BOMB_BAG_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Bomb Bag Chest", "Dodongos Cavern Bomb Bag Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_END_OF_BRIDGE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "End Of Bridge Chest", "Dodongos Cavern End Of Bridge Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_DEKU_SCRUB_NEAR_BOMB_BAG_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Near Bomb Bag Left", "Dodongos Cavern Deku Scrub Near Bomb Bag Left"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_DEKU_SCRUB_SIDE_ROOM_NEAR_DODONGOS, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Side Room Near Dodongos", "Dodongos Cavern Deku Scrub Side Room Near Dodongos"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_DEKU_SCRUB_NEAR_BOMB_BAG_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Near Bomb Bag Right", "Dodongos Cavern Deku Scrub Near Bomb Bag Right"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_DEKU_SCRUB_LOBBY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Lobby", "Dodongos Cavern Deku Scrub Lobby"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_DODONGOS_CAVERN, "MQ Map Chest", "Dodongos Cavern MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_BOMB_BAG_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "MQ Bomb Bag Chest", "Dodongos Cavern MQ Bomb Bag Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_DODONGOS_CAVERN, "MQ Compass Chest", "Dodongos Cavern MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_LARVAE_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "MQ Larvae Room Chest", "Dodongos Cavern MQ Larvae Room Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "MQ Torch Puzzle Room Chest", "Dodongos Cavern MQ Torch Puzzle Room Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_UNDER_GRAVE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "MQ Under Grave Chest", "Dodongos Cavern MQ Under Grave Chest"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_REAR, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Lobby Rear", "Dodongos Cavern Deku Scrub Lobby Rear"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_FRONT, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Lobby Front", "Dodongos Cavern Deku Scrub Lobby Front"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_STAIRCASE, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Staircase", "Dodongos Cavern Deku Scrub Staircase"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_SIDE_ROOM_NEAR_LOWER_LIZALFOS, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "Deku Scrub Side Room Near Lower Lizalfos", "Dodongos Cavern Deku Scrub Side Room Near Lower Lizalfos"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GS_VINES_ABOVE_STAIRS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "GS Vines Above Stairs", "Dodongos Cavern GS Vines Above Stairs"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GS_SCARECROW, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "GS Scarecrow", "Dodongos Cavern GS Scarecrow"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GS_ALCOVE_ABOVE_STAIRS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "GS Alcove Above Stairs", "Dodongos Cavern GS Alcove Above Stairs"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GS_BACK_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "GS Back Room", "Dodongos Cavern GS Back Room"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GS_SIDE_ROOM_NEAR_LOWER_LIZALFOS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "GS Side Room Near Lower Lizalfos", "Dodongos Cavern GS Side Room Near Lower Lizalfos"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_GS_SCRUB_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "MQ GS Scrub Room", "Dodongos Cavern MQ GS Scrub Room"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_GS_SONG_OF_TIME_BLOCK_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "MQ GS Song of Time Block Room", "Dodongos Cavern MQ GS Song of Time Block Room"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_GS_LIZALFOS_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "MQ GS Lizalfos Room", "Dodongos Cavern MQ GS Lizalfos Room"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_GS_LARVAE_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "MQ GS Larvae Room", "Dodongos Cavern MQ GS Larvae Room"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_MQ_GS_BACK_AREA, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_DODONGOS_CAVERN, "MQ GS Back Room", "Dodongos Cavern MQ GS Back Room"),
|
||||||
|
RC_OBJECT(RC_KING_DODONGO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "King Dodongo", "King Dodongo"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_KING_DODONGO_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_DODONGOS_CAVERN, "King Dodongo Heart Container", "Dodongos Cavern King Dodongo Heart Container"),
|
||||||
|
RC_OBJECT(RC_DODONGOS_CAVERN_GOSSIP_STONE, RCVORMQ_VANILLA, RCTYPE_GOSSIP_STONE, RCAREA_DODONGOS_CAVERN, "Gossip Stone", "Dodongo's Cavern Gossip Stone"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsJB = {
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_JABU_JABUS_BELLY, "Map Chest", "Jabu Jabus Belly Map Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_JABU_JABUS_BELLY, "Compass Chest", "Jabu Jabus Belly Compass Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_BOOMERANG_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "Boomerang Chest", "Jabu Jabus Belly Boomerang Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_DEKU_SCRUB, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "Deku Scrub", "Jabu Jabus Belly Deku Scrub"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_FIRST_ROOM_SIDE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ First Room Side Chest", "Jabu Jabus Belly MQ First Room Side Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_JABU_JABUS_BELLY, "MQ Map Chest", "Jabu Jabus Belly MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_SECOND_ROOM_LOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Second Room Lower Chest", "Jabu Jabus Belly MQ Second Room Lower Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_JABU_JABUS_BELLY, "MQ Compass Chest", "Jabu Jabus Belly MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_SECOND_ROOM_UPPER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Second Room Upper Chest", "Jabu Jabus Belly MQ Second Room Upper Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_SWITCHES_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Basement Near Switches Chest", "Jabu Jabus Belly MQ Basement Near Switches Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_VINES_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Basement Near Vines Chest", "Jabu Jabus Belly MQ Basement Near Vines Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_NEAR_BOSS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Near Boss Chest", "Jabu Jabus Belly MQ Near Boss Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_FALLING_LIKE_LIKE_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Falling Like Like Room Chest", "Jabu Jabus Belly MQ Falling Like Like Room Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_ROOM_SMALL_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Boomerang Room Small Chest", "Jabu Jabus Belly MQ Boomerang Room Small Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "MQ Boomerang Chest", "Jabu Jabus Belly MQ Boomerang Chest"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_GS_LOBBY_BASEMENT_LOWER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "GS Lobby Basement Lower", "Jabu Jabus Belly GS Lobby Basement Lower"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_GS_LOBBY_BASEMENT_UPPER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "GS Lobby Basement Upper", "Jabu Jabus Belly GS Lobby Basement Upper"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_GS_NEAR_BOSS, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "GS Near Boss", "Jabu Jabus Belly GS Near Boss"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_GS_WATER_SWITCH_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "GS Water Switch Room", "Jabu Jabus Belly GS Water Switch Room"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_GS_TAILPASARAN_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "MQ GS Tail Parasan Room", "Jabu Jabus Belly MQ GS Tail Parasan Room"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_GS_INVISIBLE_ENEMIES_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "MQ GS Invisible Enemies Room", "Jabu Jabus Belly MQ GS Invisible Enemies Room"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_GS_BOOMERANG_CHEST_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "MQ GS Boomerang Chest Room", "Jabu Jabus Belly MQ GS Boomerang Chest Room"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_MQ_GS_NEAR_BOSS, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_JABU_JABUS_BELLY, "MQ GS Near Boss", "Jabu Jabus Belly MQ GS Near Boss"),
|
||||||
|
RC_OBJECT(RC_BARINADE, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "Barinade", "Barinade"),
|
||||||
|
RC_OBJECT(RC_JABU_JABUS_BELLY_BARINADE_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_JABU_JABUS_BELLY, "Barinade Heart Container", "Jabu Jabus Belly Barinade Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsFST = {
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_FIRST_ROOM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "First Room Chest", "Forest Temple First Room Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_FIRST_STALFOS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "First Stalfos Chest", "Forest Temple First Stalfos Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_RAISED_ISLAND_COURTYARD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Raised Island Courtyard Chest", "Forest Temple Raised Island Courtyard Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_FOREST_TEMPLE, "Map Chest", "Forest Temple Map Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_WELL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Well Chest", "Forest Temple Well Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_FALLING_CEILING_ROOM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Falling Ceiling Room Chest", "Forest Temple Falling Ceiling Room Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_EYE_SWITCH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Eye Switch Chest", "Forest Temple Eye Switch Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Boss Key Chest", "Forest Temple Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_FLOORMASTER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Floormaster Chest", "Forest Temple Floormaster Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_BOW_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Bow Chest", "Forest Temple Bow Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_RED_POE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Red Poe Chest", "Forest Temple Red Poe Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_BLUE_POE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Blue Poe Chest", "Forest Temple Blue Poe Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_BASEMENT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Basement Chest", "Forest Temple Basement Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_FIRST_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ First Room Chest", "Forest Temple MQ First Room Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_WOLFOS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Wolfos Chest", "Forest Temple MQ Wolfos Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_BOW_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Bow Chest", "Forest Temple MQ Bow Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_RAISED_ISLAND_COURTYARD_LOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Raised Island Courtyard Lower Chest", "Forest Temple MQ Raised Island Courtyard Lower Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_RAISED_ISLAND_COURTYARD_UPPER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Raised Island Courtyard Upper Chest", "Forest Temple MQ Raised Island Courtyard Upper Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_WELL_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Well Chest", "Forest Temple MQ Well Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_FOREST_TEMPLE, "MQ Map Chest", "Forest Temple MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_FOREST_TEMPLE, "MQ Compass Chest", "Forest Temple MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_FALLING_CEILING_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Falling Ceiling Room Chest", "Forest Temple MQ Falling Ceiling Room Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_BASEMENT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Basement Chest", "Forest Temple MQ Basement Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_REDEAD_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Redead Chest", "Forest Temple MQ Redead Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_BOSS_KEY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "MQ Boss Key Chest", "Forest Temple MQ Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_GS_RAISED_ISLAND_COURTYARD, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "GS Raised Island Courtyard", "Forest Temple GS Raised Island Courtyard"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_GS_FIRST_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "GS First Room", "Forest Temple GS First Room"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_GS_LEVEL_ISLAND_COURTYARD, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "GS Level Island Courtyard", "Forest Temple GS Level Island Courtyard"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_GS_LOBBY, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "GS Lobby", "Forest Temple GS Lobby"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_GS_BASEMENT, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "GS Basement", "Forest Temple GS Basement"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_GS_FIRST_HALLWAY, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "MQ GS First Hallway", "Forest Temple MQ GS First Hallway"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_GS_BLOCK_PUSH_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "MQ GS Block Push Room", "Forest Temple MQ GS Block Push Room"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_GS_RAISED_ISLAND_COURTYARD, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "MQ GS Raised Island Courtyard", "Forest Temple MQ GS Raised Island Courtyard"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_GS_LEVEL_ISLAND_COURTYARD, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "MQ GS Level Island Courtyard", "Forest Temple MQ GS Level Island Courtyard"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_MQ_GS_WELL, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FOREST_TEMPLE, "MQ GS Well", "Forest Temple MQ GS Well"),
|
||||||
|
RC_OBJECT(RC_PHANTOM_GANON, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Phantom Ganon", "Phantom Ganon"),
|
||||||
|
RC_OBJECT(RC_FOREST_TEMPLE_PHANTOM_GANON_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FOREST_TEMPLE, "Phantom Ganon Heart Container", "Forest Temple Phantom Ganon Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsFRT = {
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_NEAR_BOSS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Near Boss Chest", "Fire Temple Near Boss Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_FLARE_DANCER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Flare Dancer Chest", "Fire Temple Flare Dancer Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Boss Key Chest", "Fire Temple Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BIG_LAVA_ROOM_BLOCKED_DOOR_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Big Lava Room Blocked Door Chest", "Fire Temple Big Lava Room Blocked Door Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BIG_LAVA_ROOM_LOWER_OPEN_DOOR_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Big Lava Room Lower Open Door Chest", "Fire Temple Big Lava Room Lower Open Door Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BOULDER_MAZE_LOWER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Boulder Maze Lower Chest", "Fire Temple Boulder Maze Lower Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BOULDER_MAZE_UPPER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Boulder Maze Upper Chest", "Fire Temple Boulder Maze Upper Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BOULDER_MAZE_SIDE_ROOM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Boulder Maze Side Room Chest", "Fire Temple Boulder Maze Side Room Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_BOULDER_MAZE_SHORTCUT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Boulder Maze Shortcut Chest", "Fire Temple Boulder Maze Shortcut Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_SCARECROW_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Scarecrow Chest", "Fire Temple Scarecrow Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_FIRE_TEMPLE, "Map Chest", "Fire Temple Map Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_FIRE_TEMPLE, "Compass Chest", "Fire Temple Compass Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_HIGHEST_GORON_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Highest Goron Chest", "Fire Temple Highest Goron Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MEGATON_HAMMER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Megaton Hammer Chest", "Fire Temple Megaton Hammer Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_NEAR_BOSS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Near Boss Chest", "Fire Temple MQ Near Boss Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_MEGATON_HAMMER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Megaton Hammer Chest", "Fire Temple MQ Megaton Hammer Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_FIRE_TEMPLE, "MQ Compass Chest", "Fire Temple MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_LOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Lizalfos Maze Lower Chest", "Fire Temple MQ Lizalfos Maze Lower Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_UPPER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Lizalfos Maze Upper Chest", "Fire Temple MQ Lizalfos Maze Upper Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_CHEST_ON_FIRE, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Chest on Fire", "Fire Temple MQ Chest on Fire"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_MAP_ROOM_SIDE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Map Room Side Chest", "Fire Temple MQ Map Room Side Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_FIRE_TEMPLE, "MQ Map Chest", "Fire Temple MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_BOSS_KEY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Boss Key Chest", "Fire Temple MQ Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_BIG_LAVA_ROOM_BLOCKED_DOOR_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Big Lava Room Blocked Door Chest", "Fire Temple MQ Big Lava Room Blocked Door Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_SIDE_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Lizalfos Maze Side Room Chest", "Fire Temple MQ Lizalfos Maze Side Room Chest"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "MQ Freestanding Key", "Fire Temple MQ Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_GS_SONG_OF_TIME_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "GS Song of Time Room", "Fire Temple GS Song of Time Room"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_GS_BOSS_KEY_LOOP, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "GS Boss Key Loop", "Fire Temple GS Boss Key Loop"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_GS_BOULDER_MAZE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "GS Boulder Maze", "Fire Temple GS Boulder Maze"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_GS_SCARECROW_TOP, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "GS Scarecrow Top", "Fire Temple GS Scarecrow Top"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_GS_SCARECROW_CLIMB, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "GS Scarecrow Climb", "Fire Temple GS Scarecrow Climb"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_GS_ABOVE_FIRE_WALL_MAZE, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "MQ GS Above Fire Wall Maze", "Fire Temple MQ GS Above Fire Wall Maze"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_CENTER, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "MQ GS Fire Wall Maze Center", "Fire Temple MQ GS Fire Wall Maze Center"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_GS_BIG_LAVA_ROOM_OPEN_DOOR, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "MQ GS Big Lava Room Open Door", "Fire Temple MQ GS Big Lava Room Open Door"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_SIDE_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "MQ GS Fire Wall Maze Side Room", "Fire Temple MQ GS Fire Wall Maze Side Room"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_MQ_GS_SKULL_ON_FIRE, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_FIRE_TEMPLE, "MQ GS Skull on Fire", "Fire Temple MQ GS Skull on Fire"),
|
||||||
|
RC_OBJECT(RC_VOLVAGIA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Volvagia", "Volvagia"),
|
||||||
|
RC_OBJECT(RC_FIRE_TEMPLE_VOLVAGIA_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_FIRE_TEMPLE, "Volvagia Heart Container", "Fire Temple Volvagia Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsWT = {
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_WATER_TEMPLE, "Map Chest", "Water Temple Map Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_WATER_TEMPLE, "Compass Chest", "Water Temple Compass Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_TORCHES_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Torches Chest", "Water Temple Torches Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_DRAGON_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Dragon Chest", "Water Temple Dragon Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_CENTRAL_BOW_TARGET_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Central Bow Target Chest", "Water Temple Central Bow Target Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_CENTRAL_PILLAR_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Central Pillar Chest", "Water Temple Central Pillar Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_CRACKED_WALL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Cracked Wall Chest", "Water Temple Cracked Wall Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Boss Key Chest", "Water Temple Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_LONGSHOT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Longshot Chest", "Water Temple Longshot Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_RIVER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "River Chest", "Water Temple River Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_CENTRAL_PILLAR_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "MQ Central Pillar Chest", "Water Temple MQ Central Pillar Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_BOSS_KEY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "MQ Boss Key Chest", "Water Temple MQ Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_LONGSHOT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "MQ Longshot Chest", "Water Temple MQ Longshot Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_WATER_TEMPLE, "MQ Compass Chest", "Water Temple MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_WATER_TEMPLE, "MQ Map Chest", "Water Temple MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "MQ Freestanding Key", "Water Temple MQ Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_GS_BEHIND_GATE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "GS Behind Gate", "Water Temple GS Behind Gate"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_GS_FALLING_PLATFORM_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "GS Falling Platform Room", "Water Temple GS Falling Platform Room"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_GS_CENTRAL_PILLAR, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "GS Central Pillar", "Water Temple GS Central Pillar"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_GS_NEAR_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "GS Near Boss Key Chest", "Water Temple GS Near Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_GS_RIVER, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "GS River", "Water Temple GS River"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_GS_BEFORE_UPPER_WATER_SWITCH, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "MQ GS Before Upper Water Switch", "Water Temple MQ GS Before Upper Water Switch"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_GS_FREESTANDING_KEY_AREA, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "MQ GS Freestanding Key Area", "Water Temple MQ GS Freestanding Key Area"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_GS_LIZALFOS_HALLWAY, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "MQ GS Lizalfos Hallway", "Water Temple MQ GS Lizalfos Hallway"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_GS_RIVER, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "MQ GS River", "Water Temple MQ GS River"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MQ_GS_TRIPLE_WALL_TORCH, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_WATER_TEMPLE, "MQ GS Triple Wall Torch", "Water Temple MQ GS Triple Wall Torch"),
|
||||||
|
RC_OBJECT(RC_MORPHA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Morpha", "Morpha"),
|
||||||
|
RC_OBJECT(RC_WATER_TEMPLE_MORPHA_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_WATER_TEMPLE, "Morpha Heart Container", "Water Temple Morpha Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsSPT = {
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_SILVER_GAUNTLETS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Silver Gauntlets Chest", "Spirit Temple Silver Gauntlets Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MIRROR_SHIELD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Mirror Shield Chest", "Spirit Temple Mirror Shield Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_CHILD_BRIDGE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Child Bridge Chest", "Spirit Temple Child Bridge Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_CHILD_EARLY_TORCHES_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Child Early Torches Chest", "Spirit Temple Child Early Torches Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_SPIRIT_TEMPLE, "Compass Chest", "Spirit Temple Compass Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_EARLY_ADULT_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Early Adult Right Chest", "Spirit Temple Early Adult Right Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_FIRST_MIRROR_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "First Mirror Left Chest", "Spirit Temple First Mirror Left Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_FIRST_MIRROR_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "First Mirror Right Chest", "Spirit Temple First Mirror Right Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_SPIRIT_TEMPLE, "Map Chest", "Spirit Temple Map Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_CHILD_CLIMB_NORTH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Child Climb North Chest", "Spirit Temple Child Climb North Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_CHILD_CLIMB_EAST_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Child Climb East Chest", "Spirit Temple Child Climb East Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_SUN_BLOCK_ROOM_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Sun Block Room Chest", "Spirit Temple Sun Block Room Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_STATUE_ROOM_HAND_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Statue Room Hand Chest", "Spirit Temple Statue Room Hand Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_STATUE_ROOM_NORTHEAST_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Statue Room Northeast Chest", "Spirit Temple Statue Room Northeast Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_NEAR_FOUR_ARMOS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Near Four Armos Chest", "Spirit Temple Near Four Armos Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_HALLWAY_RIGHT_INVISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Hallway Right Invisible Chest", "Spirit Temple Hallway Right Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_HALLWAY_LEFT_INVISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Hallway Left Invisible Chest", "Spirit Temple Hallway Left Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Boss Key Chest", "Spirit Temple Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_TOPMOST_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Topmost Chest", "Spirit Temple Topmost Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_ENTRANCE_FRONT_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Entrance Front Left Chest", "Spirit Temple MQ Entrance Front Left Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_ENTRANCE_BACK_RIGHT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Entrance Back Right Chest", "Spirit Temple MQ Entrance Back Right Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_ENTRANCE_FRONT_RIGHT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Entrance Front Right Chest", "Spirit Temple MQ Entrance Front Right Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_ENTRANCE_BACK_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Entrance Back Left Chest", "Spirit Temple MQ Entrance Back Left Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_CHILD_HAMMER_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Child Hammer Switch Chest", "Spirit Temple MQ Child Hammer Switch Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_SPIRIT_TEMPLE, "MQ Map Chest", "Spirit Temple MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_MAP_ROOM_ENEMY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Map Room Enemy Chest", "Spirit Temple MQ Map Room Enemy Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_NORTH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Child Climb North Chest", "Spirit Temple MQ Child Climb North Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_SOUTH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Child Climb South Chest", "Spirit Temple MQ Child Climb South Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_SPIRIT_TEMPLE, "MQ Compass Chest", "Spirit Temple MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_LULLABY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Statue Room Lullaby Chest", "Spirit Temple MQ Statue Room Lullaby Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_INVISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Statue Room Invisible Chest", "Spirit Temple MQ Statue Room Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_SILVER_BLOCK_HALLWAY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Silver Block Hallway Chest", "Spirit Temple MQ Silver Block Hallway Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_SUN_BLOCK_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Sun Block Room Chest", "Spirit Temple MQ Sun Block Room Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_SYMPHONY_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Symphony Room Chest", "Spirit Temple MQ Symphony Room Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_LEEVER_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Leever Room Chest", "Spirit Temple MQ Leever Room Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_BEAMOS_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Beamos Room Chest", "Spirit Temple MQ Beamos Room Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_CHEST_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Chest Switch Chest", "Spirit Temple MQ Chest Switch Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_BOSS_KEY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Boss Key Chest", "Spirit Temple MQ Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_MIRROR_PUZZLE_INVISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "MQ Mirror Puzzle Invisible Chest", "Spirit Temple MQ Mirror Puzzle Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_GS_HALL_AFTER_SUN_BLOCK_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "GS Hall After Sun Block Room", "Spirit Temple GS Hall After Sun Block Room"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_GS_BOULDER_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "GS Boulder Room", "Spirit Temple GS Boulder Room"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_GS_LOBBY, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "GS Lobby", "Spirit Temple GS Lobby"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_GS_SUN_ON_FLOOR_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "GS Sun on Floor Room", "Spirit Temple GS Sun on Floor Room"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_GS_METAL_FENCE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "GS Metal Fence", "Spirit Temple GS Metal Fence"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_GS_SYMPHONY_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "MQ GS Symphony Room", "Spirit Temple MQ GS Symphony Room"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_GS_LEEVER_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "MQ GS Leever Room", "Spirit Temple MQ GS Leever Room"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_WEST, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "MQ GS Nine Thrones Room West", "Spirit Temple MQ GS Nine Thrones Room West"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_NORTH, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "MQ GS Nine Thrones Room North", "Spirit Temple MQ GS Nine Thrones Room North"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_MQ_GS_SUN_BLOCK_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SPIRIT_TEMPLE, "MQ GS Sun Block Room", "Spirit Temple MQ GS Sun Block Room"),
|
||||||
|
RC_OBJECT(RC_TWINROVA, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Twinrova", "Twinrova"),
|
||||||
|
RC_OBJECT(RC_SPIRIT_TEMPLE_TWINROVA_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SPIRIT_TEMPLE, "Twinrova Heart Container", "Spirit Temple Twinrova Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsSDT = {
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_SHADOW_TEMPLE, "Map Chest", "Shadow Temple Map Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_HOVER_BOOTS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Hover Boots Chest", "Shadow Temple Hover Boots Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_SHADOW_TEMPLE, "Compass Chest", "Shadow Temple Compass Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_EARLY_SILVER_RUPEE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Early Silver Rupee Chest", "Shadow Temple Early Silver Rupee Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_INVISIBLE_BLADES_VISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Invisible Blades Visible Chest", "Shadow Temple Invisible Blades Visible Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_INVISIBLE_BLADES_INVISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Invisible Blades Invisible Chest", "Shadow Temple Invisible Blades Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_FALLING_SPIKES_LOWER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Falling Spikes Lower Chest", "Shadow Temple Falling Spikes Lower Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_FALLING_SPIKES_UPPER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Falling Spikes Upper Chest", "Shadow Temple Falling Spikes Upper Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_FALLING_SPIKES_SWITCH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Falling Spikes Switch Chest", "Shadow Temple Falling Spikes Switch Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_INVISIBLE_SPIKES_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Invisible Spikes Chest", "Shadow Temple Invisible Spikes Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_WIND_HINT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Wind Hint Chest", "Shadow Temple Wind Hint Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_AFTER_WIND_ENEMY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "After Wind Enemy Chest", "Shadow Temple After Wind Enemy Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_AFTER_WIND_HIDDEN_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "After Wind Hidden Chest", "Shadow Temple After Wind Hidden Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_SPIKE_WALLS_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Spike Walls Left Chest", "Shadow Temple Spike Walls Left Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Boss Key Chest", "Shadow Temple Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_INVISIBLE_FLOORMASTER_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Invisible Floormaster Chest", "Shadow Temple Invisible Floormaster Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_FREESTANDING_KEY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Freestanding Key", "Shadow Temple Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_SHADOW_TEMPLE, "MQ Compass Chest", "Shadow Temple MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_HOVER_BOOTS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Hover Boots Chest", "Shadow Temple MQ Hover Boots Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_EARLY_GIBDOS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Early Gibdos Chest", "Shadow Temple MQ Early Gibdos Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_SHADOW_TEMPLE, "MQ Map Chest", "Shadow Temple MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_BEAMOS_SILVER_RUPEES_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Beamos Silver Rupees Chest", "Shadow Temple MQ Beamos Silver Rupees Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Falling Spikes Switch Chest", "Shadow Temple MQ Falling Spikes Switch Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_LOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Falling Spikes Lower Chest", "Shadow Temple MQ Falling Spikes Lower Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_FALLING_SPIKES_UPPER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Falling Spikes Upper Chest", "Shadow Temple MQ Falling Spikes Upper Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_INVISIBLE_SPIKES_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Invisible Spikes Chest", "Shadow Temple MQ Invisible Spikes Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_BOSS_KEY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Boss Key Chest", "Shadow Temple MQ Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_SPIKE_WALLS_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Spike Walls Left Chest", "Shadow Temple MQ Spike Walls Left Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_STALFOS_ROOM_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Stalfos Room Chest", "Shadow Temple MQ Stalfos Room Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_INVISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Invisible Blades Invisible Chest", "Shadow Temple MQ Invisible Blades Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_VISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Invisible Blades Visible Chest", "Shadow Temple MQ Invisible Blades Visible Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_BOMB_FLOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Bomb Flower Chest", "Shadow Temple MQ Bomb Flower Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_WIND_HINT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Wind Hint Chest", "Shadow Temple MQ Wind Hint Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_AFTER_WIND_HIDDEN_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ After Wind Hidden Chest", "Shadow Temple MQ After Wind Hidden Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_AFTER_WIND_ENEMY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ After Wind Enemy Chest", "Shadow Temple MQ After Wind Enemy Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_NEAR_SHIP_INVISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Near Ship Invisible Chest", "Shadow Temple MQ Near Ship Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "MQ Freestanding Key", "Shadow Temple MQ Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_GS_SINGLE_GIANT_POT, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "GS Single Giant Pot", "Shadow Temple GS Single Giant Pot"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_GS_FALLING_SPIKES_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "GS Falling Spikes Room", "Shadow Temple GS Falling Spikes Room"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_GS_TRIPLE_GIANT_POT, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "GS Triple Giant Pot", "Shadow Temple GS Triple Giant Pot"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_GS_LIKE_LIKE_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "GS Like Like Room", "Shadow Temple GS Like Like Room"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_GS_NEAR_SHIP, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "GS Near Ship", "Shadow Temple GS Near Ship"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_GS_FALLING_SPIKES_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "MQ GS Falling Spikes Room", "Shadow Temple MQ GS Falling Spikes Room"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_GS_WIND_HINT_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "MQ GS Wind Hint Room", "Shadow Temple MQ GS Wind Hint Room"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_GS_AFTER_WIND, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "MQ GS After Wind", "Shadow Temple MQ GS After Wind"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_GS_AFTER_SHIP, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "MQ GS After Ship", "Shadow Temple MQ GS After Ship"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_MQ_GS_NEAR_BOSS, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_SHADOW_TEMPLE, "MQ GS Near Boss", "Shadow Temple MQ GS Near Boss"),
|
||||||
|
RC_OBJECT(RC_BONGO_BONGO, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Bongo Bongo", "Bongo Bongo"),
|
||||||
|
RC_OBJECT(RC_SHADOW_TEMPLE_BONGO_BONGO_HEART, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_SHADOW_TEMPLE, "Bongo Bongo Heart Container", "Shadow Temple Bongo Bongo Heart Container"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsBW = {
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_FRONT_LEFT_FAKE_WALL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Front Left Fake Wall Chest", "Bottom of the Well Front Left Fake Wall Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_FRONT_CENTER_BOMBABLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Front Center Bombable Chest", "Bottom of the Well Front Center Bombable Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_RIGHT_BOTTOM_FAKE_WALL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Right Bottom Fake Wall Chest", "Bottom of the Well Right Bottom Fake Wall Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_BOTTOM_OF_THE_WELL, "Compass Chest", "Bottom of the Well Compass Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_CENTER_SKULLTULA_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Center Skulltula Chest", "Bottom of the Well Center Skulltula Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_BACK_LEFT_BOMBABLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Back Left Bombable Chest", "Bottom of the Well Back Left Bombable Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_LENS_OF_TRUTH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Lens of Truth Chest", "Bottom of the Well Lens of Truth Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_INVISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Invisible Chest", "Bottom of the Well Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_UNDERWATER_FRONT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Underwater Front Chest", "Bottom of the Well Underwater Front Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_UNDERWATER_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Underwater Left Chest", "Bottom of the Well Underwater Left Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_BOTTOM_OF_THE_WELL, "Map Chest", "Bottom of the Well Map Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_FIRE_KEESE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Fire Keese Chest", "Bottom of the Well Fire Keese Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_LIKE_LIKE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Like Like Chest", "Bottom of the Well Like Like Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_FREESTANDING_KEY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "Freestanding Key", "Bottom of the Well Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_BOTTOM_OF_THE_WELL, "MQ Map Chest", "Bottom of the Well MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_LENS_OF_TRUTH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "MQ Lens of Truth Chest", "Bottom of the Well MQ Lens of Truth Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_BOTTOM_OF_THE_WELL, "MQ Compass Chest", "Bottom of the Well MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_DEAD_HAND_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "MQ Dead Hand Freestanding Key", "Bottom of the Well MQ Dead Hand Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_EAST_INNER_ROOM_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_BOTTOM_OF_THE_WELL, "MQ East Inner Room Freestanding Key", "Bottom of the Well MQ East Inner Room Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_GS_LIKE_LIKE_CAGE, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "GS Like Like Cage", "Bottom of the Well GS Like Like Cage"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_GS_EAST_INNER_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "GS East Inner Room", "Bottom of the Well GS East Inner Room"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_GS_WEST_INNER_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "GS West Inner Room", "Bottom of the Well GS West Inner Room"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_GS_BASEMENT, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "MQ GS Basement", "Bottom of the Well MQ GS Basement"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_GS_COFFIN_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "MQ GS Coffin Room", "Bottom of the Well MQ GS Coffin Room"),
|
||||||
|
RC_OBJECT(RC_BOTTOM_OF_THE_WELL_MQ_GS_WEST_INNER_ROOM, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_BOTTOM_OF_THE_WELL, "MQ GS West Inner Room", "Bottom of the Well MQ GS West Inner Room"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsIC = {
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MAP_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_ICE_CAVERN, "Map Chest", "Ice Cavern Map Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_COMPASS_CHEST, RCVORMQ_VANILLA, RCTYPE_MAP_COMPASS, RCAREA_ICE_CAVERN, "Compass Chest", "Ice Cavern Compass Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_IRON_BOOTS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ICE_CAVERN, "Iron Boots Chest", "Ice Cavern Iron Boots Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_FREESTANDING_POH, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ICE_CAVERN, "Freestanding PoH", "Ice Cavern Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_IRON_BOOTS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_ICE_CAVERN, "MQ Iron Boots Chest", "Ice Cavern MQ Iron Boots Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_COMPASS_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_ICE_CAVERN, "MQ Compass Chest", "Ice Cavern MQ Compass Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_MAP_CHEST, RCVORMQ_MQ, RCTYPE_MAP_COMPASS, RCAREA_ICE_CAVERN, "MQ Map Chest", "Ice Cavern MQ Map Chest"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_FREESTANDING_POH, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_ICE_CAVERN, "MQ Freestanding PoH", "Ice Cavern MQ Freestanding PoH"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_GS_PUSH_BLOCK_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "GS Push Block Room", "Ice Cavern GS Push Block Room"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_GS_SPINNING_SCYTHE_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "GS Spinning Scythe Room", "Ice Cavern GS Spinning Scythe Room"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_GS_HEART_PIECE_ROOM, RCVORMQ_VANILLA, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "GS Heart Piece Room", "Ice Cavern GS Heart Piece Room"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_GS_SCARECROW, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "MQ GS Scarecrow", "Ice Cavern MQ GS Scarecrow"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_GS_ICE_BLOCK, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "MQ GS Ice Block", "Ice Cavern MQ GS Ice Block"),
|
||||||
|
RC_OBJECT(RC_ICE_CAVERN_MQ_GS_RED_ICE, RCVORMQ_MQ, RCTYPE_SKULL_TOKEN, RCAREA_ICE_CAVERN, "MQ GS Red Ice", "Ice Cavern MQ GS Red Ice"),
|
||||||
|
RC_OBJECT(RC_SHEIK_IN_ICE_CAVERN, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_ICE_CAVERN, "Sheik in Ice Cavern", "Sheik in Ice Cavern"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGTG = {
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_LOBBY_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Lobby Left Chest", "Gerudo Training Grounds Lobby Left Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_LOBBY_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Lobby Right Chest", "Gerudo Training Grounds Lobby Right Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_STALFOS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Stalfos Chest", "Gerudo Training Grounds Stalfos Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_BEAMOS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Beamos Chest", "Gerudo Training Grounds Beamos Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HIDDEN_CEILING_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Hidden Ceiling Chest", "Gerudo Training Grounds Hidden Ceiling Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_PATH_FIRST_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Path First Chest", "Gerudo Training Grounds Maze Path First Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_PATH_SECOND_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Path Second Chest", "Gerudo Training Grounds Maze Path Second Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_PATH_THIRD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Path Third Chest", "Gerudo Training Grounds Maze Path Third Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_PATH_FINAL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Path Final Chest", "Gerudo Training Grounds Maze Path Final Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_RIGHT_CENTRAL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Right Central Chest", "Gerudo Training Grounds Maze Right Central Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MAZE_RIGHT_SIDE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Maze Right Side Chest", "Gerudo Training Grounds Maze Right Side Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_UNDERWATER_SILVER_RUPEE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Underwater Silver Rupee Chest", "Gerudo Training Grounds Underwater Silver Rupee Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HAMMER_ROOM_CLEAR_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Hammer Room Clear Chest", "Gerudo Training Grounds Hammer Room Clear Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HAMMER_ROOM_SWITCH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Hammer Room Switch Chest", "Gerudo Training Grounds Hammer Room Switch Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_EYE_STATUE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Eye Statue Chest", "Gerudo Training Grounds Eye Statue Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_NEAR_SCARECROW_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Near Scarecrow Chest", "Gerudo Training Grounds Near Scarecrow Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_BEFORE_HEAVY_BLOCK_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Before Heavy Block Chest", "Gerudo Training Grounds Before Heavy Block Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_FIRST_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Heavy Block First Chest", "Gerudo Training Grounds Heavy Block First Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_SECOND_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Heavy Block Second Chest", "Gerudo Training Grounds Heavy Block Second Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_THIRD_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Heavy Block Third Chest", "Gerudo Training Grounds Heavy Block Third Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_HEAVY_BLOCK_FOURTH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Heavy Block Fourth Chest", "Gerudo Training Grounds Heavy Block Fourth Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_FREESTANDING_KEY, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "Freestanding Key", "Gerudo Training Grounds Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_LOBBY_RIGHT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Lobby Right Chest", "Gerudo Training Grounds MQ Lobby Right Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_LOBBY_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Lobby Left Chest", "Gerudo Training Grounds MQ Lobby Left Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_FIRST_IRON_KNUCKLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ First Iron Knuckle Chest", "Gerudo Training Grounds MQ First Iron Knuckle Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_BEFORE_HEAVY_BLOCK_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Before Heavy Block Chest", "Gerudo Training Grounds MQ Before Heavy Block Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_EYE_STATUE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Eye Statue Chest", "Gerudo Training Grounds MQ Eye Statue Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_FLAME_CIRCLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Flame Circle Chest", "Gerudo Training Grounds MQ Flame Circle Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_SECOND_IRON_KNUCKLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Second Iron Knuckle Chest", "Gerudo Training Grounds MQ Second Iron Knuckle Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_DINOLFOS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Dinolfos Chest", "Gerudo Training Grounds MQ Dinolfos Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_ICE_ARROWS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Ice Arrows Chest", "Gerudo Training Grounds MQ Ice Arrows Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_MAZE_RIGHT_CENTRAL_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Maze Right Central Chest", "Gerudo Training Grounds MQ Maze Right Central Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_FIRST_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Maze Path First Chest", "Gerudo Training Grounds MQ Maze Path First Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_MAZE_RIGHT_SIDE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Maze Right Side Chest", "Gerudo Training Grounds MQ Maze Right Side Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_THIRD_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Maze Path Third Chest", "Gerudo Training Grounds MQ Maze Path Third Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_MAZE_PATH_SECOND_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Maze Path Second Chest", "Gerudo Training Grounds MQ Maze Path Second Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_HIDDEN_CEILING_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Hidden Ceiling Chest", "Gerudo Training Grounds MQ Hidden Ceiling Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_UNDERWATER_SILVER_RUPEE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Underwater Silver Rupee Chest", "Gerudo Training Grounds MQ Underwater Silver Rupee Chest"),
|
||||||
|
RC_OBJECT(RC_GERUDO_TRAINING_GROUND_MQ_HEAVY_BLOCK_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GERUDO_TRAINING_GROUND, "MQ Heavy Block Chest", "Gerudo Training Grounds MQ Heavy Block Chest"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::vector<RandomizerCheckObject> rcObjectsGNC = {
|
||||||
|
RC_OBJECT(RC_GANONS_TOWER_BOSS_KEY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Boss Key Chest", "Ganon's Tower Boss Key Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_FOREST_TRIAL_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Forest Trial Chest", "Ganon's Castle Forest Trial Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_WATER_TRIAL_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Water Trial Left Chest", "Ganon's Castle Water Trial Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_WATER_TRIAL_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Water Trial Right Chest", "Ganon's Castle Water Trial Right Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_SHADOW_TRIAL_FRONT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Shadow Trial Front Chest", "Ganon's Castle Shadow Trial Front Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_SHADOW_TRIAL_GOLDEN_GAUNTLETS_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Shadow Trial Golden Gauntlets Chest", "Ganon's Castle Shadow Trial Golden Gauntlets Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_SPIRIT_TRIAL_CRYSTAL_SWITCH_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Spirit Trial Crystal Switch Chest", "Ganon's Castle Spirit Trial Crystal Switch Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_SPIRIT_TRIAL_INVISIBLE_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Spirit Trial Invisible Chest", "Ganon's Castle Spirit Trial Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_FIRST_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial First Left Chest", "Ganon's Castle Light Trial First Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Second Left Chest", "Ganon's Castle Light Trial Second Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_LEFT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Third Left Chest", "Ganon's Castle Light Trial Third Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_FIRST_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial First Right Chest", "Ganon's Castle Light Trial First Right Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Second Right Chest", "Ganon's Castle Light Trial Second Right Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_RIGHT_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Third Right Chest", "Ganon's Castle Light Trial Third Right Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_INVISIBLE_ENEMIES_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Invisible Enemies Chest", "Ganon's Castle Light Trial Invisible Enemies Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_LIGHT_TRIAL_LULLABY_CHEST, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Light Trial Lullaby Chest", "Ganon's Castle Light Trial Lullaby Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_DEKU_SCRUB_CENTER_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Deku Scrub Center-Left", "Ganon's Castle Deku Scrub Center-Left"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_DEKU_SCRUB_CENTER_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Deku Scrub Center-Right", "Ganon's Castle Deku Scrub Center-Right"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_DEKU_SCRUB_RIGHT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Deku Scrub Right", "Ganon's Castle Deku Scrub Right"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_DEKU_SCRUB_LEFT, RCVORMQ_VANILLA, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "Deku Scrub Left", "Ganon's Castle Deku Scrub Left"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_WATER_TRIAL_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Water Trial Chest", "Ganon's Castle MQ Water Trial Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_FOREST_TRIAL_EYE_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Forest Trial Eye Switch Chest", "Ganon's Castle MQ Forest Trial Eye Switch Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_FOREST_TRIAL_FROZEN_EYE_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Forest Trial Frozen Eye Switch Chest", "Ganon's Castle MQ Forest Trial Frozen Eye Switch Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_LIGHT_TRIAL_LULLABY_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Light Trial Lullaby Chest", "Ganon's Castle MQ Light Trial Lullaby Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SHADOW_TRIAL_BOMB_FLOWER_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Shadow Trial Bomb Flower Chest", "Ganon's Castle MQ Shadow Trial Bomb Flower Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SHADOW_TRIAL_EYE_SWITCH_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Shadow Trial Eye Switch Chest", "Ganon's Castle MQ Shadow Trial Eye Switch Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_GOLDEN_GAUNTLETS_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial Golden Gauntlets Chest", "Ganon's Castle MQ Spirit Trial Golden Gauntlets Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_BACK_RIGHT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial Sun Back Right Chest", "Ganon's Castle MQ Spirit Trial Sun Back Right Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_BACK_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial Sun Back Left Chest", "Ganon's Castle MQ Spirit Trial Sun Back Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_SUN_FRONT_LEFT_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial Sun Front Left Chest", "Ganon's Castle MQ Spirit Trial Sun Front Left Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_FIRST_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial First Chest", "Ganon's Castle MQ Spirit Trial First Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_SPIRIT_TRIAL_INVISIBLE_CHEST, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Spirit Trial Invisible Chest", "Ganon's Castle MQ Spirit Trial Invisible Chest"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_FOREST_TRIAL_FREESTANDING_KEY, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Forest Trial Freestanding Key", "Ganon's Castle MQ Forest Trial Freestanding Key"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_DEKU_SCRUB_RIGHT, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Deku Scrub Right", "Ganon's Castle MQ Deku Scrub Right"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER_LEFT, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Deku Scrub Center-Left", "Ganon's Castle MQ Deku Scrub Center-Left"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Deku Scrub Center", "Ganon's Castle MQ Deku Scrub Center"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_DEKU_SCRUB_CENTER_RIGHT, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Deku Scrub Center-Right", "Ganon's Castle MQ Deku Scrub Center-Right"),
|
||||||
|
RC_OBJECT(RC_GANONS_CASTLE_MQ_DEKU_SCRUB_LEFT, RCVORMQ_MQ, RCTYPE_STANDARD, RCAREA_GANONS_CASTLE, "MQ Deku Scrub Left", "Ganon's Castle MQ Deku Scrub Left"),
|
||||||
|
};
|
||||||
|
|
||||||
|
std::map<RandomizerCheckArea, std::string> rcAreaNames = {
|
||||||
|
{ RCAREA_KOKIRI_FOREST, "Kokiri Forest"},
|
||||||
|
{ RCAREA_LOST_WOODS, "Lost Woods"},
|
||||||
|
{ RCAREA_SACRED_FOREST_MEADOW, "Sacred Forest Meadow"},
|
||||||
|
{ RCAREA_HYRULE_FIELD, "Hyrule Field"},
|
||||||
|
{ RCAREA_LAKE_HYLIA, "Lake Hylia"},
|
||||||
|
{ RCAREA_GERUDO_VALLEY, "Gerudo Valley"},
|
||||||
|
{ RCAREA_GERUDO_FORTRESS, "Gerudo Fortress"},
|
||||||
|
{ RCAREA_WASTELAND, "Desert Wasteland"},
|
||||||
|
{ RCAREA_DESERT_COLOSSUS, "Desert Colossus"},
|
||||||
|
{ RCAREA_MARKET, "Hyrule Market"},
|
||||||
|
{ RCAREA_HYRULE_CASTLE, "Hyrule Castle"},
|
||||||
|
{ RCAREA_KAKARIKO_VILLAGE, "Kakariko Village"},
|
||||||
|
{ RCAREA_GRAVEYARD, "Graveyard"},
|
||||||
|
{ RCAREA_DEATH_MOUNTAIN_TRAIL, "Death Mountain Trail"},
|
||||||
|
{ RCAREA_GORON_CITY, "Goron City"},
|
||||||
|
{ RCAREA_DEATH_MOUNTAIN_CRATER, "Death Mountain Crater"},
|
||||||
|
{ RCAREA_ZORAS_RIVER, "Zora's River"},
|
||||||
|
{ RCAREA_ZORAS_DOMAIN, "Zora's Domain"},
|
||||||
|
{ RCAREA_ZORAS_FOUNTAIN, "Zora's Fountain"},
|
||||||
|
{ RCAREA_LON_LON_RANCH, "Lon Lon Ranch"},
|
||||||
|
{ RCAREA_DEKU_TREE, "Deku Tree"},
|
||||||
|
{ RCAREA_DODONGOS_CAVERN, "Dodongo's Cavern"},
|
||||||
|
{ RCAREA_JABU_JABUS_BELLY, "Jabu Jabu's Belly"},
|
||||||
|
{ RCAREA_FOREST_TEMPLE, "Forest Temple"},
|
||||||
|
{ RCAREA_FIRE_TEMPLE, "Fire Temple"},
|
||||||
|
{ RCAREA_WATER_TEMPLE, "Water Temple"},
|
||||||
|
{ RCAREA_SPIRIT_TEMPLE, "Spirit Temple"},
|
||||||
|
{ RCAREA_SHADOW_TEMPLE, "Shadow Temple"},
|
||||||
|
{ RCAREA_BOTTOM_OF_THE_WELL, "Bottom of the Well"},
|
||||||
|
{ RCAREA_ICE_CAVERN, "Ice Cavern"},
|
||||||
|
{ RCAREA_GERUDO_TRAINING_GROUND, "Gerudo Training Grounds"},
|
||||||
|
{ RCAREA_GANONS_CASTLE, "Ganon's Castle"},
|
||||||
|
};
|
||||||
|
|
||||||
|
std::map<RandomizerCheckArea, std::vector<RandomizerCheckObject>> rcObjects = {
|
||||||
|
{ RCAREA_KOKIRI_FOREST, rcObjectsKF },
|
||||||
|
{ RCAREA_LOST_WOODS, rcObjectsLW },
|
||||||
|
{ RCAREA_SACRED_FOREST_MEADOW, rcObjectsSFM },
|
||||||
|
{ RCAREA_HYRULE_FIELD, rcObjectsHF },
|
||||||
|
{ RCAREA_LAKE_HYLIA, rcObjectsLH },
|
||||||
|
{ RCAREA_GERUDO_VALLEY, rcObjectsGV },
|
||||||
|
{ RCAREA_GERUDO_FORTRESS, rcObjectsGF },
|
||||||
|
{ RCAREA_WASTELAND, rcObjectsWL },
|
||||||
|
{ RCAREA_DESERT_COLOSSUS, rcObjectsCL },
|
||||||
|
{ RCAREA_MARKET, rcObjectsMK },
|
||||||
|
{ RCAREA_HYRULE_CASTLE, rcObjectsHC },
|
||||||
|
{ RCAREA_KAKARIKO_VILLAGE, rcObjectsKV },
|
||||||
|
{ RCAREA_GRAVEYARD, rcObjectsGY },
|
||||||
|
{ RCAREA_DEATH_MOUNTAIN_TRAIL, rcObjectsDMT },
|
||||||
|
{ RCAREA_GORON_CITY, rcObjectsGC },
|
||||||
|
{ RCAREA_DEATH_MOUNTAIN_CRATER, rcObjectsDMC },
|
||||||
|
{ RCAREA_ZORAS_RIVER, rcObjectsZR },
|
||||||
|
{ RCAREA_ZORAS_DOMAIN, rcObjectsZD },
|
||||||
|
{ RCAREA_ZORAS_FOUNTAIN, rcObjectsZF },
|
||||||
|
{ RCAREA_LON_LON_RANCH, rcObjectsLLR },
|
||||||
|
{ RCAREA_DEKU_TREE, rcObjectsDT },
|
||||||
|
{ RCAREA_DODONGOS_CAVERN, rcObjectsDC },
|
||||||
|
{ RCAREA_JABU_JABUS_BELLY, rcObjectsJB },
|
||||||
|
{ RCAREA_FOREST_TEMPLE, rcObjectsFST },
|
||||||
|
{ RCAREA_FIRE_TEMPLE, rcObjectsFRT },
|
||||||
|
{ RCAREA_WATER_TEMPLE, rcObjectsWT },
|
||||||
|
{ RCAREA_SPIRIT_TEMPLE, rcObjectsSPT },
|
||||||
|
{ RCAREA_SHADOW_TEMPLE, rcObjectsSDT },
|
||||||
|
{ RCAREA_BOTTOM_OF_THE_WELL, rcObjectsBW },
|
||||||
|
{ RCAREA_ICE_CAVERN, rcObjectsIC },
|
||||||
|
{ RCAREA_GERUDO_TRAINING_GROUND, rcObjectsGTG },
|
||||||
|
{ RCAREA_GANONS_CASTLE, rcObjectsGNC },
|
||||||
|
};
|
||||||
|
|
||||||
|
bool RandomizerCheckObjects::AreaIsDungeon(RandomizerCheckArea area) {
|
||||||
|
return area == RCAREA_GANONS_CASTLE ||
|
||||||
|
area == RCAREA_GERUDO_TRAINING_GROUND ||
|
||||||
|
area == RCAREA_ICE_CAVERN ||
|
||||||
|
area == RCAREA_BOTTOM_OF_THE_WELL ||
|
||||||
|
area == RCAREA_SHADOW_TEMPLE ||
|
||||||
|
area == RCAREA_SPIRIT_TEMPLE ||
|
||||||
|
area == RCAREA_WATER_TEMPLE ||
|
||||||
|
area == RCAREA_FIRE_TEMPLE ||
|
||||||
|
area == RCAREA_FOREST_TEMPLE ||
|
||||||
|
area == RCAREA_JABU_JABUS_BELLY ||
|
||||||
|
area == RCAREA_DODONGOS_CAVERN ||
|
||||||
|
area == RCAREA_DEKU_TREE;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool RandomizerCheckObjects::AreaIsOverworld(RandomizerCheckArea area) {
|
||||||
|
return !AreaIsDungeon(area);
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string RandomizerCheckObjects::GetRCAreaName(RandomizerCheckArea area) {
|
||||||
|
return rcAreaNames[area];
|
||||||
|
}
|
||||||
|
|
||||||
|
std::map<RandomizerCheckArea, std::vector<RandomizerCheckObject>> RandomizerCheckObjects::GetAllRCObjects() {
|
||||||
|
return rcObjects;
|
||||||
|
}
|
||||||
|
|
||||||
|
void RandomizerCheckObjects::UpdateImGuiVisibility() {
|
||||||
|
for (auto& areaIt : rcObjects) {
|
||||||
|
for (auto& locationIt : areaIt.second) {
|
||||||
|
locationIt.visibleInImgui = (
|
||||||
|
(locationIt.vOrMQ != RCVORMQ_MQ) && // don't show MQ checks until we support MQ
|
||||||
|
(locationIt.rcType != RCTYPE_SHOP) && // don't show shop items until we have shopsanity
|
||||||
|
(locationIt.rcType != RCTYPE_GOSSIP_STONE) && // don't show gossip stones (maybe gossipsanity will be a thing eventually?)
|
||||||
|
(locationIt.rcType != RCTYPE_LINKS_POCKET) &&
|
||||||
|
(locationIt.rcType != RCTYPE_CHEST_GAME) && // don't show non final reward chest game checks until we support shuffling them
|
||||||
|
((locationIt.rcType != RCTYPE_SKULL_TOKEN) ||
|
||||||
|
(CVar_GetS32("gRandomizeShuffleTokens", 0) == 3) || // all tokens
|
||||||
|
((CVar_GetS32("gRandomizeShuffleTokens", 0) == 2) && RandomizerCheckObjects::AreaIsOverworld(locationIt.rcArea)) || // overworld tokens
|
||||||
|
((CVar_GetS32("gRandomizeShuffleTokens", 0) == 1) && RandomizerCheckObjects::AreaIsDungeon(locationIt.rcArea)) // dungeon tokens
|
||||||
|
) &&
|
||||||
|
((locationIt.rcType != RCTYPE_COW) || CVar_GetS32("gRandomizeShuffleCows", 0)) &&
|
||||||
|
((locationIt.rcType != RCTYPE_ADULT_TRADE) || CVar_GetS32("gRandomizeShuffleAdultTrade", 0)) &&
|
||||||
|
((locationIt.rc != RC_KF_KOKIRI_SWORD_CHEST) || CVar_GetS32("gRandomizeShuffleKokiriSword", 0)) &&
|
||||||
|
((locationIt.rc != RC_HC_MALON_EGG) || CVar_GetS32("gRandomizeShuffleWeirdEgg", 0)) &&
|
||||||
|
((locationIt.rc != RC_GF_GERUDO_MEMBERSHIP_CARD) || CVar_GetS32("gRandomizeShuffleGerudoToken", 0)) &&
|
||||||
|
((locationIt.rcType != RCTYPE_FROG_SONG) || CVar_GetS32("gRandomizeShuffleFrogSongRupees", 0)) &&
|
||||||
|
((locationIt.rcType != RCTYPE_MAP_COMPASS) || CVar_GetS32("gRandomizeStartingMapsCompasses", 0) != 1) && // 1 is the value for "vanilla" maps/compasses
|
||||||
|
((locationIt.rcType != RCTYPE_SMALL_KEY) || CVar_GetS32("gRandomizeKeysanity", 0) != 1) && // 1 is the value for "vanilla" small keys
|
||||||
|
((locationIt.rcType != RCTYPE_GF_KEY) || CVar_GetS32("randoShuffleGerudoFortressKeys", 0) != 0) && // 0 is the value for "vanilla" gf keys
|
||||||
|
((locationIt.rcType != RCTYPE_BOSS_KEY) || CVar_GetS32("gRandomizeBossKeysanity", 0) != 1) && // 1 is the value for "vanilla" boss keys
|
||||||
|
((locationIt.rcType != RCTYPE_GANON_BOSS_KEY) || CVar_GetS32("gRandomizeShuffleGanonBossKey", 0) != 0) // 0 is the value for "vanilla" ganon's boss key
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
83
soh/soh/Enhancements/randomizer/randomizer_check_objects.h
Normal file
83
soh/soh/Enhancements/randomizer/randomizer_check_objects.h
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
#pragma once
|
||||||
|
#include "randomizerTypes.h"
|
||||||
|
#include <string>
|
||||||
|
#include <vector>
|
||||||
|
#include <map>
|
||||||
|
|
||||||
|
// Check types based on main settings
|
||||||
|
typedef enum {
|
||||||
|
RCTYPE_STANDARD, // Base set of rando checks
|
||||||
|
RCTYPE_SKULL_TOKEN, // Gold Skulltulas
|
||||||
|
RCTYPE_COW, // Cows
|
||||||
|
RCTYPE_ADULT_TRADE, // Adult trade quest checks
|
||||||
|
RCTYPE_FROG_SONG, // Frog song purple rupee checks
|
||||||
|
RCTYPE_MAP_COMPASS, // Maps/Compasses
|
||||||
|
RCTYPE_SMALL_KEY, // Small Keys
|
||||||
|
RCTYPE_GF_KEY, // Gerudo Fortress Keys
|
||||||
|
RCTYPE_BOSS_KEY, // Boss Keys
|
||||||
|
RCTYPE_GANON_BOSS_KEY, // Ganon's boss key
|
||||||
|
RCTYPE_SHOP, // shops/scrubs
|
||||||
|
RCTYPE_CHEST_GAME, //todo replace this once we implement it, just using it to exclude for now
|
||||||
|
RCTYPE_LINKS_POCKET, //todo this feels hacky
|
||||||
|
RCTYPE_GOSSIP_STONE,
|
||||||
|
} RandomizerCheckType;
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
RCVORMQ_VANILLA,
|
||||||
|
RCVORMQ_MQ,
|
||||||
|
RCVORMQ_BOTH
|
||||||
|
} RandomizerCheckVanillaOrMQ;
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
RCAREA_KOKIRI_FOREST,
|
||||||
|
RCAREA_LOST_WOODS,
|
||||||
|
RCAREA_SACRED_FOREST_MEADOW,
|
||||||
|
RCAREA_HYRULE_FIELD,
|
||||||
|
RCAREA_LAKE_HYLIA,
|
||||||
|
RCAREA_GERUDO_VALLEY,
|
||||||
|
RCAREA_GERUDO_FORTRESS,
|
||||||
|
RCAREA_WASTELAND,
|
||||||
|
RCAREA_DESERT_COLOSSUS,
|
||||||
|
RCAREA_MARKET,
|
||||||
|
RCAREA_HYRULE_CASTLE,
|
||||||
|
RCAREA_KAKARIKO_VILLAGE,
|
||||||
|
RCAREA_GRAVEYARD,
|
||||||
|
RCAREA_DEATH_MOUNTAIN_TRAIL,
|
||||||
|
RCAREA_GORON_CITY,
|
||||||
|
RCAREA_DEATH_MOUNTAIN_CRATER,
|
||||||
|
RCAREA_ZORAS_RIVER,
|
||||||
|
RCAREA_ZORAS_DOMAIN,
|
||||||
|
RCAREA_ZORAS_FOUNTAIN,
|
||||||
|
RCAREA_LON_LON_RANCH,
|
||||||
|
RCAREA_DEKU_TREE,
|
||||||
|
RCAREA_DODONGOS_CAVERN,
|
||||||
|
RCAREA_JABU_JABUS_BELLY,
|
||||||
|
RCAREA_FOREST_TEMPLE,
|
||||||
|
RCAREA_FIRE_TEMPLE,
|
||||||
|
RCAREA_WATER_TEMPLE,
|
||||||
|
RCAREA_SPIRIT_TEMPLE,
|
||||||
|
RCAREA_SHADOW_TEMPLE,
|
||||||
|
RCAREA_BOTTOM_OF_THE_WELL,
|
||||||
|
RCAREA_ICE_CAVERN,
|
||||||
|
RCAREA_GERUDO_TRAINING_GROUND,
|
||||||
|
RCAREA_GANONS_CASTLE,
|
||||||
|
RCAREA_INVALID
|
||||||
|
} RandomizerCheckArea;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
RandomizerCheck rc;
|
||||||
|
RandomizerCheckVanillaOrMQ vOrMQ;
|
||||||
|
RandomizerCheckType rcType;
|
||||||
|
RandomizerCheckArea rcArea;
|
||||||
|
bool visibleInImgui;
|
||||||
|
std::string rcShortName;
|
||||||
|
std::string rcSpoilerName;
|
||||||
|
} RandomizerCheckObject;
|
||||||
|
|
||||||
|
namespace RandomizerCheckObjects {
|
||||||
|
bool AreaIsDungeon(RandomizerCheckArea area);
|
||||||
|
bool AreaIsOverworld(RandomizerCheckArea area);
|
||||||
|
std::string GetRCAreaName(RandomizerCheckArea area);
|
||||||
|
std::map<RandomizerCheckArea, std::vector<RandomizerCheckObject>> GetAllRCObjects();
|
||||||
|
void UpdateImGuiVisibility();
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user