Adds Silver Rupee Shuffle option to menu

This commit is contained in:
Christopher Leggett 2024-02-10 15:57:52 -05:00
parent fe9dcf1fc3
commit e53040e504
No known key found for this signature in database
GPG Key ID: 7093AE5FF7037D79
3 changed files with 23 additions and 0 deletions

View File

@ -393,6 +393,15 @@ void Settings::CreateOptionDescriptions() {
"Overworld - Boss Keys can only appear outside of dungeons.\n"
"\n"
"Anywhere - Boss Keys can appear anywhere in the world.";
mOptionDescriptions[RSK_SHUFFLE_SILVER_RUPEES] = "Vanilla - Silver Rupees will appear in their vanilla locations.\n"
"\n"
"Own dungeon - Silver Rupees can only appear in their respective dungeon.\n"
"\n"
"Any dungeon - Silver Rupees can only appear inside of any dungeon.\n"
"\n"
"Overworld - Silver Rupees can only appear outside of dungeons.\n"
"\n"
"Anywhere - Silver Rupees can appear anywhere in the world.";
mOptionDescriptions[RSK_GANONS_BOSS_KEY] =
"Vanilla - Ganon's Boss Key will appear in the vanilla location.\n"
"\n"

View File

@ -3661,6 +3661,7 @@ typedef enum {
RSK_FISHSANITY_POND_COUNT,
RSK_FISHSANITY_AGE_SPLIT,
RSK_SHUFFLE_FISHING_POLE,
RSK_SHUFFLE_SILVER_RUPEES,
RSK_MAX
} RandomizerSettingKey;
@ -3810,6 +3811,16 @@ typedef enum {
RO_DUNGEON_ITEM_LOC_ANYWHERE,
} RandoOptionDungeonItemLocation;
// Silver Rupees (vanilla, own dungeon, any dungeon, overworld,
// anywhere
typedef enum {
RO_SILVER_SHUFFLE_VANILLA,
RO_SILVER_SHUFFLE_OWN_DUNGEON,
RO_SILVER_SHUFFLE_ANY_DUNGEON,
RO_SILVER_SHUFFLE_OVERWORLD,
RO_SILVER_SHUFFLE_ANYWHERE,
} RandoOptionSilverRupeeLocation;
//Dungeon reward settings
typedef enum {
RO_DUNGEON_REWARDS_END_OF_DUNGEON,

View File

@ -126,6 +126,7 @@ void Settings::CreateOptions() {
mOptions[RSK_KEYSANITY] = Option::U8("Small Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, "gRandomizeKeysanity", mOptionDescriptions[RSK_KEYSANITY], WidgetType::Combobox, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
mOptions[RSK_GERUDO_KEYS] = Option::U8("Gerudo Fortress Keys", {"Vanilla", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, "gRandomizeGerudoKeys", mOptionDescriptions[RSK_GERUDO_KEYS], WidgetType::Combobox, RO_GERUDO_KEYS_VANILLA);
mOptions[RSK_BOSS_KEYSANITY] = Option::U8("Boss Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, "gRandomizeBossKeysanity", mOptionDescriptions[RSK_BOSS_KEYSANITY], WidgetType::Combobox, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
mOptions[RSK_SHUFFLE_SILVER_RUPEES] = Option::U8("Silver Rupees", {"Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, "gRandomizeSilverRupeeShuffle", mOptionDescriptions[RSK_SHUFFLE_SILVER_RUPEES], WidgetType::Combobox, RO_SILVER_SHUFFLE_VANILLA);
mOptions[RSK_GANONS_BOSS_KEY] = Option::U8("Ganon's Boss Key", {"Vanilla", "Own Dungeon", "Start With", "Any Dungeon", "Overworld", "Anywhere", "LACS-Vanilla", "LACS-Stones", "LACS-Medallions", "LACS-Rewards", "LACS-Dungeons", "LACS-Tokens", "Triforce Hunt"}, OptionCategory::Setting, "gRandomizeShuffleGanonBossKey", mOptionDescriptions[RSK_GANONS_BOSS_KEY], WidgetType::Combobox, RO_GANON_BOSS_KEY_VANILLA);
mOptions[RSK_LACS_STONE_COUNT] = Option::U8("Stone Count", {NumOpts(0, 4)}, OptionCategory::Setting, "gRandomizeLacsStoneCount", "", WidgetType::Slider, 3, true);
mOptions[RSK_LACS_MEDALLION_COUNT] = Option::U8("Medallion Count", {NumOpts(0, 7)}, OptionCategory::Setting, "gRandomizeLacsMedallionCount", "", WidgetType::Slider, 6, true);
@ -684,6 +685,7 @@ void Settings::CreateOptions() {
&mOptions[RSK_KEYSANITY],
&mOptions[RSK_GERUDO_KEYS],
&mOptions[RSK_BOSS_KEYSANITY],
&mOptions[RSK_SHUFFLE_SILVER_RUPEES],
&mOptions[RSK_GANONS_BOSS_KEY],
&mOptions[RSK_LACS_STONE_COUNT],
&mOptions[RSK_LACS_MEDALLION_COUNT],
@ -889,6 +891,7 @@ void Settings::CreateOptions() {
&mOptions[RSK_KEYSANITY],
&mOptions[RSK_GERUDO_KEYS],
&mOptions[RSK_BOSS_KEYSANITY],
&mOptions[RSK_SHUFFLE_SILVER_RUPEES],
&mOptions[RSK_GANONS_BOSS_KEY],
&mOptions[RSK_LACS_STONE_COUNT],
&mOptions[RSK_LACS_MEDALLION_COUNT],