From c0ad43e50939fd57710c1b3c9cc85675a5091c26 Mon Sep 17 00:00:00 2001 From: Patrick12115 <115201185+Patrick12115@users.noreply.github.com> Date: Thu, 19 Jan 2023 04:54:29 -0500 Subject: [PATCH] Add Starting Songs Option (#2221) --- soh/soh/Enhancements/presets.h | 12 +++ .../randomizer/3drando/settings.cpp | 37 ++++++--- .../randomizer/3drando/spoiler_log.cpp | 22 +++++- .../Enhancements/randomizer/randomizer.cpp | 75 ++++++++++++++++++- .../Enhancements/randomizer/randomizerTypes.h | 12 +++ soh/src/code/z_sram.c | 13 ++++ 6 files changed, 157 insertions(+), 14 deletions(-) diff --git a/soh/soh/Enhancements/presets.h b/soh/soh/Enhancements/presets.h index 3cdcd6180..3a86dc341 100644 --- a/soh/soh/Enhancements/presets.h +++ b/soh/soh/Enhancements/presets.h @@ -260,11 +260,23 @@ const std::vector randomizerCvars = { "gRandomizeSkipTowerEscape", "gRandomizeStartingAge", "gRandomizeStartingConsumables", + "gRandomizeStartingBoleroOfFire", "gRandomizeStartingDekuShield", + "gRandomizeStartingEponasSong", "gRandomizeStartingKokiriSword", "gRandomizeStartingMapsCompasses", + "gRandomizeStartingMinuetOfForest", + "gRandomizeStartingNocturneOfShadow", "gRandomizeStartingOcarina", + "gRandomizeStartingPreludeOfLight", + "gRandomizeStartingRequiemOfSpirit", + "gRandomizeStartingSariasSong", + "gRandomizeStartingSerenadeOfWater", "gRandomizeStartingSkulltulaToken", + "gRandomizeStartingSongOfStorms", + "gRandomizeStartingSongOfTime", + "gRandomizeStartingSunsSong", + "gRandomizeStartingZeldasLullaby", "gRandomizeStoneCount", "gRandomizeSunlightArrows", "gRandomizeTokenCount", diff --git a/soh/soh/Enhancements/randomizer/3drando/settings.cpp b/soh/soh/Enhancements/randomizer/3drando/settings.cpp index 4dfa26afb..213d8b602 100644 --- a/soh/soh/Enhancements/randomizer/3drando/settings.cpp +++ b/soh/soh/Enhancements/randomizer/3drando/settings.cpp @@ -509,18 +509,18 @@ namespace Settings { &StartingRutoBottle, }; - Option StartingZeldasLullaby = Option::U8 ("Zelda's Lullaby", {"Off", "On"}, {""}); - Option StartingEponasSong = Option::U8 ("Epona's Song", {"Off", "On"}, {""}); - Option StartingSariasSong = Option::U8 ("Saria's Song", {"Off", "On"}, {""}); - Option StartingSunsSong = Option::U8 ("Sun's Song", {"Off", "On"}, {""}); - Option StartingSongOfTime = Option::U8 ("Song of Time", {"Off", "On"}, {""}); - Option StartingSongOfStorms = Option::U8 ("Song of Storms", {"Off", "On"}, {""}); - Option StartingMinuetOfForest = Option::U8 ("Minuet of Forest", {"Off", "On"}, {""}); - Option StartingBoleroOfFire = Option::U8 ("Bolero of Fire", {"Off", "On"}, {""}); - Option StartingSerenadeOfWater = Option::U8 ("Serenade of Water", {"Off", "On"}, {""}); - Option StartingRequiemOfSpirit = Option::U8 ("Requiem of Spirit", {"Off", "On"}, {""}); - Option StartingNocturneOfShadow = Option::U8 ("Nocturne of Shadow", {"Off", "On"}, {""}); - Option StartingPreludeOfLight = Option::U8 ("Prelude of Light", {"Off", "On"}, {""}); + Option StartingZeldasLullaby = Option::U8 ("Start with Zelda's Lullaby", {"Off", "On"}, {""}); + Option StartingEponasSong = Option::U8 ("Start with Epona's Song", {"Off", "On"}, {""}); + Option StartingSariasSong = Option::U8 ("Start with Saria's Song", {"Off", "On"}, {""}); + Option StartingSunsSong = Option::U8 ("Start with Sun's Song", {"Off", "On"}, {""}); + Option StartingSongOfTime = Option::U8 ("Start with Song of Time", {"Off", "On"}, {""}); + Option StartingSongOfStorms = Option::U8 ("Start with Song of Storms", {"Off", "On"}, {""}); + Option StartingMinuetOfForest = Option::U8 ("Start with Minuet of Forest", {"Off", "On"}, {""}); + Option StartingBoleroOfFire = Option::U8 ("Start with Bolero of Fire", {"Off", "On"}, {""}); + Option StartingSerenadeOfWater = Option::U8 ("Start with Serenade of Water", {"Off", "On"}, {""}); + Option StartingRequiemOfSpirit = Option::U8 ("Start with Requiem of Spirit", {"Off", "On"}, {""}); + Option StartingNocturneOfShadow = Option::U8 ("Start with Nocturne of Shadow", {"Off", "On"}, {""}); + Option StartingPreludeOfLight = Option::U8 ("Start with Prelude of Light", {"Off", "On"}, {""}); std::vector