mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-11-17 15:05:05 -05:00
Merge pull request #674 from aMannus/rando-settings-overhaul
Rando: Randomizer Settings Menu UX Rework
This commit is contained in:
commit
670f84e183
@ -52,19 +52,19 @@ namespace Settings {
|
||||
// Setting name, Options, Setting Descriptions (assigned in setting_descriptions.cpp) Category (default: Setting),Default index (default: 0), Default hidden (default: false)
|
||||
//Open Settings Any option index past the last description will use the last description
|
||||
Option RandomizeOpen = Option::Bool("Randomize Settings", {"No","Yes"}, {openRandomize}, OptionCategory::Toggle);
|
||||
Option OpenForest = Option::U8 ("Forest", {"Closed", "Open", "Closed Deku"}, {forestClosed, forestOpen, forestClosedDeku}, OptionCategory::Setting, OPENFOREST_OPEN);
|
||||
Option OpenForest = Option::U8 ("Forest", {"Closed", "Closed Deku", "Open"}, {forestClosed, forestClosedDeku, forestOpen}, OptionCategory::Setting, OPENFOREST_CLOSED);
|
||||
Option OpenKakariko = Option::U8 ("Kakariko Gate", {"Closed", "Open"}, {kakGateClosed, kakGateOpen});
|
||||
Option OpenDoorOfTime = Option::U8 ("Door of Time", {"Open", "Closed", "Intended"}, {doorOfTimeOpen, doorOfTimeClosed, doorOfTimeIntended});
|
||||
Option ZorasFountain = Option::U8 ("Zora's Fountain", {"Normal", "Adult", "Open"}, {fountainNormal, fountainAdult, fountainOpen});
|
||||
Option OpenDoorOfTime = Option::U8 ("Door of Time", {"Closed", "Song Only", "Open"}, {doorOfTimeIntended, doorOfTimeClosed, doorOfTimeOpen});
|
||||
Option ZorasFountain = Option::U8 ("Zora's Fountain", {"Closed", "Closed as child", "Open"}, {fountainNormal, fountainAdult, fountainOpen});
|
||||
Option GerudoFortress = Option::U8 ("Gerudo Fortress", {"Normal", "Fast", "Open"}, {gerudoNormal, gerudoFast, gerudoOpen});
|
||||
Option Bridge = Option::U8 ("Rainbow Bridge", {"Open", "Vanilla", "Stones", "Medallions", "Rewards", "Dungeons", "Tokens"}, {bridgeOpen, bridgeVanilla, bridgeStones, bridgeMedallions, bridgeRewards, bridgeDungeons, bridgeTokens}, OptionCategory::Setting, RAINBOWBRIDGE_VANILLA);
|
||||
Option BridgeStoneCount = Option::U8 (" Stone Count", {NumOpts(0, 3)}, {bridgeStoneCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeMedallionCount= Option::U8 (" Medallion Count", {NumOpts(0, 6)}, {bridgeMedallionCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeRewardCount = Option::U8 (" Reward Count", {NumOpts(0, 9)}, {bridgeRewardCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeDungeonCount = Option::U8 (" Dungeon Count", {NumOpts(0, 8)}, {bridgeDungeonCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeTokenCount = Option::U8 (" Token Count", {NumOpts(0, 100)}, {bridgeTokenCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option Bridge = Option::U8 ("Rainbow Bridge", {"Vanilla", "Always open", "Stones", "Medallions", "Dungeon rewards", "Dungeons", "Tokens"}, {bridgeVanilla, bridgeOpen, bridgeStones, bridgeMedallions, bridgeRewards, bridgeDungeons, bridgeTokens}, OptionCategory::Setting, RAINBOWBRIDGE_VANILLA);
|
||||
Option BridgeStoneCount = Option::U8 ("Stone Count", {NumOpts(0, 3)}, {bridgeStoneCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeMedallionCount= Option::U8 ("Medallion Count", {NumOpts(0, 6)}, {bridgeMedallionCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeRewardCount = Option::U8 ("Reward Count", {NumOpts(0, 9)}, {bridgeRewardCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeDungeonCount = Option::U8 ("Dungeon Count", {NumOpts(0, 8)}, {bridgeDungeonCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option BridgeTokenCount = Option::U8 ("Token Count", {NumOpts(0, 100)}, {bridgeTokenCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option RandomGanonsTrials = Option::Bool("Random Ganon's Trials", {"Off", "On"}, {randomGanonsTrialsDesc}, OptionCategory::Setting, ON);
|
||||
Option GanonsTrialsCount = Option::U8 (" Trial Count", {NumOpts(0, 6)}, {ganonsTrialCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option GanonsTrialsCount = Option::U8 ("Trial Count", {NumOpts(0, 6)}, {ganonsTrialCountDesc}, OptionCategory::Setting, 1, true);
|
||||
std::vector<Option *> openOptions = {
|
||||
&RandomizeOpen,
|
||||
&OpenForest,
|
||||
@ -87,10 +87,10 @@ namespace Settings {
|
||||
Option StartingAge = Option::U8 ("Starting Age", {"Adult", "Child", "Random"}, {ageDesc}, OptionCategory::Setting, AGE_CHILD);
|
||||
uint8_t ResolvedStartingAge;
|
||||
Option ShuffleEntrances = Option::Bool("Shuffle Entrances", {"Off", "On"}, {shuffleEntrancesDesc});
|
||||
Option ShuffleDungeonEntrances = Option::U8 (" Dungeon Entrances", {"Off", "On", "On + Ganon"}, {dungeonEntrancesDesc});
|
||||
Option ShuffleOverworldEntrances = Option::Bool(" Overworld Entrances", {"Off", "On"}, {overworldEntrancesDesc});
|
||||
Option ShuffleInteriorEntrances = Option::U8 (" Interior Entrances", {"Off", "Simple", "All"}, {interiorEntrancesOff, interiorEntrancesSimple, interiorEntrancesAll});
|
||||
Option ShuffleGrottoEntrances = Option::Bool(" Grottos Entrances", {"Off", "On"}, {grottoEntrancesDesc});
|
||||
Option ShuffleDungeonEntrances = Option::U8 ("Dungeon Entrances", {"Off", "On", "On + Ganon"}, {dungeonEntrancesDesc});
|
||||
Option ShuffleOverworldEntrances = Option::Bool("Overworld Entrances", {"Off", "On"}, {overworldEntrancesDesc});
|
||||
Option ShuffleInteriorEntrances = Option::U8 ("Interior Entrances", {"Off", "Simple", "All"}, {interiorEntrancesOff, interiorEntrancesSimple, interiorEntrancesAll});
|
||||
Option ShuffleGrottoEntrances = Option::Bool("Grottos Entrances", {"Off", "On"}, {grottoEntrancesDesc});
|
||||
Option BombchusInLogic = Option::Bool("Bombchus in Logic", {"Off", "On"}, {bombchuLogicDesc});
|
||||
Option AmmoDrops = Option::U8 ("Ammo Drops", {"On", "On + Bombchu", "Off"}, {defaultAmmoDropsDesc, bombchuDropsDesc, noAmmoDropsDesc}, OptionCategory::Setting, AMMODROPS_BOMBCHU);
|
||||
Option HeartDropRefill = Option::U8 ("Heart Drops and Refills",{"On", "No Drop", "No Refill", "Off"}, {defaultHeartDropsDesc, noHeartDropsDesc, noHeartRefillDesc, scarceHeartsDesc}, OptionCategory::Setting, HEARTDROPREFILL_VANILLA);
|
||||
@ -98,18 +98,18 @@ namespace Settings {
|
||||
uint8_t MQSet;
|
||||
bool DungeonModesKnown[12];
|
||||
Option SetDungeonTypes = Option::Bool("Set Dungeon Types", {"Off", "On"}, {setDungeonTypesDesc});
|
||||
Option MQDeku = Option::U8 (" Deku Tree", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQDodongo = Option::U8 (" Dodongo's Cavern", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQJabu = Option::U8 (" Jabu-Jabu's Belly", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQForest = Option::U8 (" Forest Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQFire = Option::U8 (" Fire Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQWater = Option::U8 (" Water Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQSpirit = Option::U8 (" Spirit Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQShadow = Option::U8 (" Shadow Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQBotW = Option::U8 (" Bottom of the Well", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQIceCavern = Option::U8 (" Ice Cavern", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQGTG = Option::U8 (" Training Grounds", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQCastle = Option::U8 (" Ganon's Castle", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQDeku = Option::U8 ("Deku Tree", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQDodongo = Option::U8 ("Dodongo's Cavern", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQJabu = Option::U8 ("Jabu-Jabu's Belly", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQForest = Option::U8 ("Forest Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQFire = Option::U8 ("Fire Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQWater = Option::U8 ("Water Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQSpirit = Option::U8 ("Spirit Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQShadow = Option::U8 ("Shadow Temple", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQBotW = Option::U8 ("Bottom of the Well", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQIceCavern = Option::U8 ("Ice Cavern", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQGTG = Option::U8 ("Training Grounds", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
Option MQCastle = Option::U8 ("Ganon's Castle", {"Vanilla", "Master Quest", "Random"}, {setDungeonTypesDesc});
|
||||
std::vector<Option *> worldOptions = {
|
||||
&RandomizeWorld,
|
||||
&StartingAge,
|
||||
@ -153,9 +153,9 @@ namespace Settings {
|
||||
|
||||
//Shuffle Settings
|
||||
Option RandomizeShuffle = Option::Bool("Randomize Settings", {"No","Yes"}, {shuffleRandomize}, OptionCategory::Toggle);
|
||||
Option ShuffleRewards = Option::U8 ("Shuffle Dungeon Rewards",{"End of Dungeons", "Any Dungeon", "Overworld", "Anywhere"}, {shuffleRewardsEndOfDungeon, shuffleRewardsAnyDungeon, shuffleRewardsOverworld, shuffleRewardsAnywhere});
|
||||
Option ShuffleRewards = Option::U8 ("Shuffle Dungeon Rewards",{"End of dungeons", "Any dungeon", "Overworld", "Anywhere"}, {shuffleRewardsEndOfDungeon, shuffleRewardsAnyDungeon, shuffleRewardsOverworld, shuffleRewardsAnywhere});
|
||||
Option LinksPocketItem = Option::U8 ("Link's Pocket", {"Dungeon Reward", "Advancement", "Anything", "Nothing"}, {linksPocketDungeonReward, linksPocketAdvancement, linksPocketAnything, linksPocketNothing});
|
||||
Option ShuffleSongs = Option::U8 ("Shuffle Songs", {"Song Locations", "Dungeon Rewards", "Anywhere"}, {songsSongLocations, songsDungeonRewards, songsAllLocations});
|
||||
Option ShuffleSongs = Option::U8 ("Shuffle Songs", {"Song locations", "Dungeon rewards", "Anywhere"}, {songsSongLocations, songsDungeonRewards, songsAllLocations});
|
||||
Option Shopsanity = Option::U8 ("Shopsanity", {MultiVecOpts({{"Off"}, NumOpts(0, 4), {"Random"}})}, {shopsOff, shopsZero, shopsOne, shopsTwo, shopsThree, shopsFour, shopsRandom});
|
||||
Option Tokensanity = Option::U8 ("Tokensanity", {"Off", "Dungeons", "Overworld", "All Tokens"}, {tokensOff, tokensDungeon, tokensOverworld, tokensAllTokens});
|
||||
Option Scrubsanity = Option::U8 ("Scrub Shuffle", {"Off", "Affordable", "Expensive", "Random Prices"}, {scrubsOff, scrubsAffordable, scrubsExpensive, scrubsRandomPrices});
|
||||
@ -163,7 +163,7 @@ namespace Settings {
|
||||
Option ShuffleKokiriSword = Option::Bool("Shuffle Kokiri Sword", {"Off", "On"}, {kokiriSwordDesc});
|
||||
Option ShuffleOcarinas = Option::Bool("Shuffle Ocarinas", {"Off", "On"}, {ocarinasDesc});
|
||||
Option ShuffleWeirdEgg = Option::Bool("Shuffle Weird Egg", {"Off", "On"}, {weirdEggDesc});
|
||||
Option ShuffleGerudoToken = Option::Bool("Shuffle Gerudo Membership Card", {"Off", "On"}, {gerudoTokenDesc});
|
||||
Option ShuffleGerudoToken = Option::Bool("Shuffle Gerudo Card", {"Off", "On"}, {gerudoTokenDesc});
|
||||
Option ShuffleMagicBeans = Option::Bool("Shuffle Magic Beans", {"Off", "On"}, {magicBeansDesc});
|
||||
Option ShuffleMerchants = Option::U8 ("Shuffle Merchants", {"Off", "On (No Hints)", "On (With Hints)"}, {merchantsDesc, merchantsHintsDesc});
|
||||
Option ShuffleAdultTradeQuest = Option::Bool("Shuffle Adult Trade", {"Off", "On"}, {adultTradeDesc});
|
||||
@ -189,7 +189,7 @@ namespace Settings {
|
||||
|
||||
//Shuffle Dungeon Items
|
||||
Option RandomizeDungeon = Option::Bool("Randomize Settings", {"No","Yes"}, {dungeonRandomize}, OptionCategory::Toggle);
|
||||
Option MapsAndCompasses = Option::U8 ("Maps/Compasses", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"},
|
||||
Option MapsAndCompasses = Option::U8 ("Start with Maps/Compasses", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"},
|
||||
{mapCompassStartWith, mapCompassVanilla, mapCompassOwnDungeon, mapCompassAnyDungeon, mapCompassOverworld, mapCompassAnywhere}, OptionCategory::Setting, MAPSANDCOMPASSES_OWN_DUNGEON);
|
||||
Option Keysanity = Option::U8 ("Small Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"},
|
||||
{smallKeyStartWith, smallKeyVanilla, smallKeyOwnDungeon, smallKeyAnyDungeon, smallKeyOverworld, smallKeyAnywhere}, OptionCategory::Setting, KEYSANITY_OWN_DUNGEON);
|
||||
@ -197,24 +197,24 @@ namespace Settings {
|
||||
{gerudoKeysVanilla, gerudoKeysAnyDungeon, gerudoKeysOverworld, gerudoKeysAnywhere});
|
||||
Option BossKeysanity = Option::U8 ("Boss Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"},
|
||||
{bossKeyStartWith, bossKeyVanilla, bossKeyOwnDungeon, bossKeyAnyDungeon, bossKeyOverworld, bossKeyAnywhere}, OptionCategory::Setting, BOSSKEYSANITY_OWN_DUNGEON);
|
||||
Option GanonsBossKey = Option::U8 ("Ganon's Boss Key", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere", "LACS-Vanilla", "LACS-Medallions", "LACS-Stones", "LACS-Rewards", "LACS-Dungeons", "LACS-Tokens"},
|
||||
{ganonKeyStartWith, ganonKeyVanilla, ganonKeyOwnDungeon, ganonKeyAnyDungeon, ganonKeyOverworld, ganonKeyAnywhere, ganonKeyLACS}, OptionCategory::Setting, GANONSBOSSKEY_OWN_DUNGEON);
|
||||
Option GanonsBossKey = Option::U8 ("Ganon's Boss Key", {"Vanilla", "Own dungeon", "Start with", "Any Dungeon", "Overworld", "Anywhere", "LACS-Vanilla", "LACS-Medallions", "LACS-Stones", "LACS-Rewards", "LACS-Dungeons", "LACS-Tokens"},
|
||||
{ganonKeyVanilla, ganonKeyOwnDungeon, ganonKeyStartWith, ganonKeyAnyDungeon, ganonKeyOverworld, ganonKeyAnywhere, ganonKeyLACS}, OptionCategory::Setting, GANONSBOSSKEY_VANILLA);
|
||||
uint8_t LACSCondition = 0;
|
||||
Option LACSMedallionCount = Option::U8 (" Medallion Count", {NumOpts(0, 6)}, {lacsMedallionCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSStoneCount = Option::U8 (" Stone Count", {NumOpts(0, 3)}, {lacsStoneCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSRewardCount = Option::U8 (" Reward Count", {NumOpts(0, 9)}, {lacsRewardCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSDungeonCount = Option::U8 (" Dungeon Count", {NumOpts(0, 8)}, {lacsDungeonCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSTokenCount = Option::U8 (" Token Count", {NumOpts(0, 100)}, {lacsTokenCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSMedallionCount = Option::U8 ("Medallion Count", {NumOpts(0, 6)}, {lacsMedallionCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSStoneCount = Option::U8 ("Stone Count", {NumOpts(0, 3)}, {lacsStoneCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSRewardCount = Option::U8 ("Reward Count", {NumOpts(0, 9)}, {lacsRewardCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSDungeonCount = Option::U8 ("Dungeon Count", {NumOpts(0, 8)}, {lacsDungeonCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option LACSTokenCount = Option::U8 ("Token Count", {NumOpts(0, 100)}, {lacsTokenCountDesc}, OptionCategory::Setting, 1, true);
|
||||
Option KeyRings = Option::Bool("Key Rings", {"Off", "On"}, {keyRingDesc});
|
||||
Option RingFortress = Option::Bool(" Gerudo Fortress", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingForest = Option::Bool(" Forest Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingFire = Option::Bool(" Fire Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingWater = Option::Bool(" Water Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingSpirit = Option::Bool(" Spirit Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingShadow = Option::Bool(" Shadow Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingWell = Option::Bool(" Bottom of the Well", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingGtg = Option::Bool(" GTG", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingCastle = Option::Bool(" Ganon's Castle", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingFortress = Option::Bool("Gerudo Fortress", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingForest = Option::Bool("Forest Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingFire = Option::Bool("Fire Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingWater = Option::Bool("Water Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingSpirit = Option::Bool("Spirit Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingShadow = Option::Bool("Shadow Temple", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingWell = Option::Bool("Bottom of the Well", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingGtg = Option::Bool("GTG", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
Option RingCastle = Option::Bool("Ganon's Castle", {"Off", "On"}, {keyRingDesc}, OptionCategory::Setting);
|
||||
|
||||
std::vector<Option *> shuffleDungeonItemOptions = {
|
||||
&RandomizeDungeon,
|
||||
@ -264,7 +264,7 @@ namespace Settings {
|
||||
Option KingZoraSpeed = Option::U8 ("King Zora Speed", {"Fast", "Vanilla", "Random"}, {kingZoraSpeedFast, kingZoraSpeedVanilla, kingZoraSpeedRandom});
|
||||
Option CompleteMaskQuest = Option::Bool("Complete Mask Quest", {"Off", "On"}, {completeMaskDesc});
|
||||
Option QuickText = Option::U8 ("Quick Text", {"0: Vanilla", "1: Skippable", "2: Instant", "3: Turbo"}, {quickTextDesc0, quickTextDesc1, quickTextDesc2, quickTextDesc3}, OptionCategory::Setting, QUICKTEXT_INSTANT);
|
||||
Option SkipSongReplays = Option::U8 (" Skip Song Replays", {"Don't Skip", "Skip (No SFX)", "Skip (Keep SFX)"}, {skipSongReplaysDesc});
|
||||
Option SkipSongReplays = Option::U8 ("Skip Song Replays", {"Don't Skip", "Skip (No SFX)", "Skip (Keep SFX)"}, {skipSongReplaysDesc});
|
||||
Option KeepFWWarpPoint = Option::Bool("Keep FW Warp Point", {"Off", "On"}, {keepFWWarpPointDesc});
|
||||
Option FastBunnyHood = Option::Bool("Fast Bunny Hood", {"Off", "On"}, {fastBunnyHoodDesc});
|
||||
std::vector<Option *> timesaverOptions = {
|
||||
@ -287,8 +287,8 @@ namespace Settings {
|
||||
|
||||
//Misc Settings
|
||||
Option GossipStoneHints = Option::U8 ("Gossip Stone Hints", {"No Hints", "Need Nothing", "Mask of Truth", "Stone of Agony"}, {gossipStonesHintsDesc}, OptionCategory::Setting, HINTS_NEED_NOTHING);
|
||||
Option ClearerHints = Option::U8 (" Hint Clarity", {"Obscure", "Ambiguous", "Clear"}, {obscureHintsDesc, ambiguousHintsDesc, clearHintsDesc});
|
||||
Option HintDistribution = Option::U8 (" Hint Distribution", {"Useless", "Balanced", "Strong", "Very Strong"}, {uselessHintsDesc, balancedHintsDesc, strongHintsDesc, veryStrongHintsDesc}, OptionCategory::Setting, 1); // Balanced
|
||||
Option ClearerHints = Option::U8 ("Hint Clarity", {"Obscure", "Ambiguous", "Clear"}, {obscureHintsDesc, ambiguousHintsDesc, clearHintsDesc});
|
||||
Option HintDistribution = Option::U8 ("Hint Distribution", {"Useless", "Balanced", "Strong", "Very Strong"}, {uselessHintsDesc, balancedHintsDesc, strongHintsDesc, veryStrongHintsDesc}, OptionCategory::Setting, 1); // Balanced
|
||||
Option CompassesShowReward = Option::U8 ("Compasses Show Rewards", {"No", "Yes"}, {compassesShowRewardsDesc}, OptionCategory::Setting, 1);
|
||||
Option CompassesShowWotH = Option::U8 ("Compasses Show WotH", {"No", "Yes"}, {compassesShowWotHDesc}, OptionCategory::Setting, 1);
|
||||
Option MapsShowDungeonMode = Option::U8 ("Maps Show Dungeon Modes",{"No", "Yes"}, {mapsShowDungeonModesDesc}, OptionCategory::Setting, 1);
|
||||
@ -321,22 +321,22 @@ namespace Settings {
|
||||
//Item Usability Settings
|
||||
Option FaroresWindAnywhere = Option::Bool("Farore's Wind Anywhere", {"Disabled", "Enabled"}, {faroresWindAnywhereDesc});
|
||||
Option AgeItemsToggle = Option::U8 ("Lift Age Restrictions", {"All Disabled", "All Enabled", "Choose"}, {ageRestrictionsDesc});
|
||||
Option StickAsAdult = Option::Bool(" Adult Deku Stick", {"Disabled", "Enabled"}, {adultStickDesc});
|
||||
Option BoomerangAsAdult = Option::Bool(" Adult Boomerang", {"Disabled", "Enabled"}, {adultBoomerangDesc});
|
||||
Option HammerAsChild = Option::Bool(" Child Hammer", {"Disabled", "Enabled"}, {childHammerDesc});
|
||||
Option SlingshotAsAdult = Option::Bool(" Adult Slingshot", {"Disabled", "Enabled"}, {adultSlingshotDesc});
|
||||
Option BowAsChild = Option::Bool(" Child Bow", {"Disabled", "Enabled"}, {childBowDesc});
|
||||
Option HookshotAsChild = Option::Bool(" Child Hookshot", {"Disabled", "Enabled"}, {childHookshotDesc});
|
||||
Option IronBootsAsChild = Option::Bool(" Child Iron Boots", {"Disabled", "Enabled"}, {childIronBootsDesc});
|
||||
Option HoverBootsAsChild = Option::Bool(" Child Hover Boots", {"Disabled", "Enabled"}, {childHoverBootsDesc});
|
||||
Option MasksAsAdult = Option::Bool(" Adult Masks", {"Disabled", "Enabled"}, {adultMasksDesc});
|
||||
Option KokiriSwordAsAdult = Option::Bool(" Adult Kokiri Sword", {"Disabled", "Enabled"}, {adultKokiriSwordDesc});
|
||||
Option MasterSwordAsChild = Option::Bool(" Child Master Sword", {"Disabled", "Enabled"}, {childMasterSwordDesc});
|
||||
Option BiggoronSwordAsChild= Option::Bool(" Child Biggoron Sword", {"Disabled", "Enabled"}, {childBiggoronSwordDesc});
|
||||
Option DekuShieldAsAdult = Option::Bool(" Adult Deku Shield", {"Disabled", "Enabled"}, {adultDekuShieldDesc});
|
||||
Option MirrorShieldAsChild = Option::Bool(" Child Mirror Shield", {"Disabled", "Enabled"}, {childMirrorShieldDesc});
|
||||
Option GoronTunicAsChild = Option::Bool(" Child Goron Tunic", {"Disabled", "Enabled"}, {childGoronTunicDesc});
|
||||
Option ZoraTunicAsChild = Option::Bool(" Child Zora Tunic", {"Disabled", "Enabled"}, {childZoraTunicDesc});
|
||||
Option StickAsAdult = Option::Bool("Adult Deku Stick", {"Disabled", "Enabled"}, {adultStickDesc});
|
||||
Option BoomerangAsAdult = Option::Bool("Adult Boomerang", {"Disabled", "Enabled"}, {adultBoomerangDesc});
|
||||
Option HammerAsChild = Option::Bool("Child Hammer", {"Disabled", "Enabled"}, {childHammerDesc});
|
||||
Option SlingshotAsAdult = Option::Bool("Adult Slingshot", {"Disabled", "Enabled"}, {adultSlingshotDesc});
|
||||
Option BowAsChild = Option::Bool("Child Bow", {"Disabled", "Enabled"}, {childBowDesc});
|
||||
Option HookshotAsChild = Option::Bool("Child Hookshot", {"Disabled", "Enabled"}, {childHookshotDesc});
|
||||
Option IronBootsAsChild = Option::Bool("Child Iron Boots", {"Disabled", "Enabled"}, {childIronBootsDesc});
|
||||
Option HoverBootsAsChild = Option::Bool("Child Hover Boots", {"Disabled", "Enabled"}, {childHoverBootsDesc});
|
||||
Option MasksAsAdult = Option::Bool("Adult Masks", {"Disabled", "Enabled"}, {adultMasksDesc});
|
||||
Option KokiriSwordAsAdult = Option::Bool("Adult Kokiri Sword", {"Disabled", "Enabled"}, {adultKokiriSwordDesc});
|
||||
Option MasterSwordAsChild = Option::Bool("Child Master Sword", {"Disabled", "Enabled"}, {childMasterSwordDesc});
|
||||
Option BiggoronSwordAsChild= Option::Bool("Child Biggoron Sword", {"Disabled", "Enabled"}, {childBiggoronSwordDesc});
|
||||
Option DekuShieldAsAdult = Option::Bool("Adult Deku Shield", {"Disabled", "Enabled"}, {adultDekuShieldDesc});
|
||||
Option MirrorShieldAsChild = Option::Bool("Child Mirror Shield", {"Disabled", "Enabled"}, {childMirrorShieldDesc});
|
||||
Option GoronTunicAsChild = Option::Bool("Child Goron Tunic", {"Disabled", "Enabled"}, {childGoronTunicDesc});
|
||||
Option ZoraTunicAsChild = Option::Bool("Child Zora Tunic", {"Disabled", "Enabled"}, {childZoraTunicDesc});
|
||||
Option GkDurability = Option::U8 ("GK Durability", {"Vanilla", "Random Risk", "Random Safe"}, {gkDurabilityVanilla, gkDurabilityRandomRisk, gkDurabilityRandomSafe});
|
||||
std::vector<Option *> itemUsabilityOptions = {
|
||||
&FaroresWindAnywhere,
|
||||
@ -430,7 +430,7 @@ namespace Settings {
|
||||
Option StartingStickCapacity = Option::U8 ("Deku Stick Capacity", {NumOpts(10, 30, 10, {}, " Deku Sticks")}, {""});
|
||||
Option StartingNutCapacity = Option::U8 ("Deku Nut Capacity", {NumOpts(20, 40, 10, {}, " Deku Nuts")}, {""});
|
||||
Option StartingSlingshot = Option::U8 ("Slingshot", {"Off", "Slingshot (30)", "Slingshot (40)", "Slingshot (50)"}, {""});
|
||||
Option StartingOcarina = Option::U8 ("Ocarina", {"Off", "Fairy Ocarina", "Ocarina of Time"}, {""});
|
||||
Option StartingOcarina = Option::U8 ("Start with Fairy Ocarina", {"Off", "Fairy Ocarina", "Ocarina of Time"}, {""});
|
||||
Option StartingBombBag = Option::U8 ("Bombs", {"Off", "Bomb Bag (20)", "Bomb Bag (30)", "Bomb Bag (40)"}, {""});
|
||||
Option StartingBombchus = Option::U8 ("Bombchus", {"Off", "20 Bombchus", "50 Bombchus"}, {""});
|
||||
Option StartingBoomerang = Option::U8 ("Boomerang", {"Off", "On"}, {""});
|
||||
@ -507,9 +507,9 @@ namespace Settings {
|
||||
&StartingPreludeOfLight,
|
||||
};
|
||||
|
||||
Option StartingKokiriSword = Option::U8 ("Kokiri Sword", {"Off", "On"}, {""});
|
||||
Option StartingKokiriSword = Option::U8 ("Start with Kokiri Sword", {"Off", "On"}, {""});
|
||||
Option StartingBiggoronSword = Option::U8 ("Biggoron Sword", {"Off", "Giant's Knife", "Biggoron Sword"}, {""});
|
||||
Option StartingDekuShield = Option::U8 ("Deku Shield", {"Off", "On"}, {""});
|
||||
Option StartingDekuShield = Option::U8 ("Start with Deku Shield", {"Off", "On"}, {""});
|
||||
Option StartingHylianShield = Option::U8 ("Hylian Shield", {"Off", "On"}, {""});
|
||||
Option StartingMirrorShield = Option::U8 ("Mirror Shield", {"Off", "On"}, {""});
|
||||
Option StartingGoronTunic = Option::U8 ("Goron Tunic", {"Off", "On"}, {""});
|
||||
|
@ -34,8 +34,8 @@ typedef enum {
|
||||
|
||||
typedef enum {
|
||||
OPENFOREST_CLOSED,
|
||||
OPENFOREST_OPEN,
|
||||
OPENFOREST_CLOSED_DEKU,
|
||||
OPENFOREST_OPEN,
|
||||
} OpenForestSetting;
|
||||
|
||||
typedef enum {
|
||||
@ -44,9 +44,9 @@ typedef enum {
|
||||
} OpenKakarikoSetting;
|
||||
|
||||
typedef enum {
|
||||
OPENDOOROFTIME_OPEN,
|
||||
OPENDOOROFTIME_CLOSED,
|
||||
OPENDOOROFTIME_INTENDED,
|
||||
OPENDOOROFTIME_CLOSED,
|
||||
OPENDOOROFTIME_OPEN,
|
||||
} OpenDoorOfTimeSetting;
|
||||
|
||||
typedef enum {
|
||||
@ -62,8 +62,8 @@ typedef enum {
|
||||
} GerudoFortressSetting;
|
||||
|
||||
typedef enum {
|
||||
RAINBOWBRIDGE_OPEN,
|
||||
RAINBOWBRIDGE_VANILLA,
|
||||
RAINBOWBRIDGE_OPEN,
|
||||
RAINBOWBRIDGE_STONES,
|
||||
RAINBOWBRIDGE_MEDALLIONS,
|
||||
RAINBOWBRIDGE_REWARDS,
|
||||
@ -212,9 +212,9 @@ typedef enum {
|
||||
} BossKeysanitySetting;
|
||||
|
||||
typedef enum {
|
||||
GANONSBOSSKEY_START_WITH,
|
||||
GANONSBOSSKEY_VANILLA,
|
||||
GANONSBOSSKEY_OWN_DUNGEON,
|
||||
GANONSBOSSKEY_START_WITH,
|
||||
GANONSBOSSKEY_ANY_DUNGEON,
|
||||
GANONSBOSSKEY_OVERWORLD,
|
||||
GANONSBOSSKEY_ANYWHERE,
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user