mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-07-16 10:02:59 -07:00
presets: clear blocks (#5098)
* presets: clear blocks this avoids needing to list every new cvar in presets.h * avoid resetting selected preset * no cvar lists, clear less blocks on drop
This commit is contained in:
parent
2d78cb561a
commit
eb6c0d9d29
3 changed files with 12 additions and 506 deletions
|
@ -6,12 +6,6 @@
|
|||
#include "soh/SohGui/UIWidgets.hpp"
|
||||
#include <libultraship/libultraship.h>
|
||||
|
||||
void clearCvars(std::vector<const char*> cvarsToClear) {
|
||||
for(const char* cvar : cvarsToClear) {
|
||||
CVarClear(cvar);
|
||||
}
|
||||
}
|
||||
|
||||
std::string FormatLocations(std::vector<RandomizerCheck> locs) {
|
||||
std::string locString = "";
|
||||
for (auto loc: locs) {
|
||||
|
@ -69,10 +63,13 @@ void DrawPresetSelector(PresetType presetTypeId) {
|
|||
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(6.0f, 4.0f));
|
||||
if (ImGui::Button(("Apply Preset##" + presetTypeCvar).c_str())) {
|
||||
clearCvars(presetTypeDef.cvarsToClear);
|
||||
for(const char* block : presetTypeDef.blocksToClear) {
|
||||
CVarClearBlock(block);
|
||||
}
|
||||
if (selectedPresetId != 0) {
|
||||
applyPreset(selectedPresetDef.entries);
|
||||
}
|
||||
CVarSetInteger(presetTypeCvar.c_str(), selectedPresetId);
|
||||
Ship::Context::GetInstance()->GetWindow()->GetGui()->SaveConsoleVariablesNextFrame();
|
||||
if (presetTypeId == PRESET_TYPE_RANDOMIZER){
|
||||
Rando::Settings::GetInstance()->ReloadOptions();
|
||||
|
|
|
@ -61,499 +61,6 @@ void applyPreset(std::vector<PresetEntry> entries);
|
|||
|
||||
// TODO: Ideally everything below this point will come from one/many JSON files
|
||||
|
||||
const std::vector<const char*> enhancementsCvars = {
|
||||
CVAR_SETTING("DPadOnPause"),
|
||||
CVAR_SETTING("DpadInText"),
|
||||
CVAR_SETTING("OcarinaControl.Dpad"),
|
||||
CVAR_SETTING("OcarinaControl.RStick"),
|
||||
CVAR_ENHANCEMENT("DpadEquips"),
|
||||
CVAR_ENHANCEMENT("PauseAnyCursor"),
|
||||
CVAR_ENHANCEMENT("DpadNoDropOcarinaInput"),
|
||||
CVAR_ENHANCEMENT("NaviOnL"),
|
||||
CVAR_SETTING("FreeLook.InvertXAxis"),
|
||||
CVAR_SETTING("FreeLook.InvertYAxis"),
|
||||
CVAR_SETTING("Controls.RightStickAim"),
|
||||
CVAR_SETTING("DisableFirstPersonAutoCenterView"),
|
||||
CVAR_ENHANCEMENT("TextSpeed"),
|
||||
CVAR_ENHANCEMENT("MweepSpeed"),
|
||||
CVAR_ENHANCEMENT("ForgeTime"),
|
||||
CVAR_ENHANCEMENT("ClimbSpeed"),
|
||||
CVAR_ENHANCEMENT("FasterBlockPush"),
|
||||
CVAR_ENHANCEMENT("CrawlSpeed"),
|
||||
CVAR_ENHANCEMENT("FasterHeavyBlockLift"),
|
||||
CVAR_ENHANCEMENT("NoForcedNavi"),
|
||||
CVAR_ENHANCEMENT("SkulltulaFreeze"),
|
||||
CVAR_ENHANCEMENT("MMBunnyHood"),
|
||||
CVAR_ENHANCEMENT("AdultMasks"),
|
||||
CVAR_ENHANCEMENT("FastChests"),
|
||||
CVAR_ENHANCEMENT("ChestSizeAndTextureMatchContents"),
|
||||
CVAR_ENHANCEMENT("FastDrops"),
|
||||
CVAR_ENHANCEMENT("BetterOwl"),
|
||||
CVAR_ENHANCEMENT("FastOcarinaPlayback"),
|
||||
CVAR_ENHANCEMENT("InstantPutaway"),
|
||||
CVAR_ENHANCEMENT("FastBoomerang"),
|
||||
CVAR_ENHANCEMENT("AskToEquip"),
|
||||
CVAR_ENHANCEMENT("MaskSelect"),
|
||||
CVAR_ENHANCEMENT("RememberSaveLocation"),
|
||||
CVAR_ENHANCEMENT("DamageMult"),
|
||||
CVAR_ENHANCEMENT("FallDamageMult"),
|
||||
CVAR_ENHANCEMENT("VoidDamageMult"),
|
||||
CVAR_ENHANCEMENT("BonkDamageMult"),
|
||||
CVAR_ENHANCEMENT("NoRandomDrops"),
|
||||
CVAR_ENHANCEMENT("NoHeartDrops"),
|
||||
CVAR_ENHANCEMENT("EnableBombchuDrops"),
|
||||
CVAR_ENHANCEMENT("GoronPot"),
|
||||
CVAR_ENHANCEMENT("FullHealthSpawn"),
|
||||
CVAR_ENHANCEMENT("DampeWin"),
|
||||
CVAR_ENHANCEMENT("CustomizeFishing"),
|
||||
CVAR_ENHANCEMENT("InstantFishing"),
|
||||
CVAR_ENHANCEMENT("GuaranteeFishingBite"),
|
||||
CVAR_ENHANCEMENT("FishNeverEscape"),
|
||||
CVAR_ENHANCEMENT("MinimumFishWeightChild"),
|
||||
CVAR_ENHANCEMENT("MinimumFishWeightAdult"),
|
||||
CVAR_ENHANCEMENT("LowHpAlarm"),
|
||||
CVAR_ENHANCEMENT("MinimalUI"),
|
||||
CVAR_ENHANCEMENT("DisableNaviCallAudio"),
|
||||
CVAR_ENHANCEMENT("VisualAgony"),
|
||||
CVAR_ENHANCEMENT("AssignableTunicsAndBoots"),
|
||||
CVAR_ENHANCEMENT("EquipmentCanBeRemoved"),
|
||||
CVAR_ENHANCEMENT("CowOfTime"),
|
||||
CVAR_ENHANCEMENT("GuardVision"),
|
||||
CVAR_ENHANCEMENT("TimeFlowFileSelect"),
|
||||
CVAR_ENHANCEMENT("InjectItemCounts.GoldSkulltula"),
|
||||
CVAR_ENHANCEMENT("InjectItemCounts.HeartPiece"),
|
||||
CVAR_ENHANCEMENT("InjectItemCounts.HeartContainer"),
|
||||
CVAR_ENHANCEMENT("DayGravePull"),
|
||||
CVAR_ENHANCEMENT("DampeAllNight"),
|
||||
CVAR_ENHANCEMENT("QuitFishingAtDoor"),
|
||||
CVAR_ENHANCEMENT("SkipSwimDeepEndAnim"),
|
||||
CVAR_ENHANCEMENT("InstantScarecrow"),
|
||||
CVAR_ENHANCEMENT("BlueFireArrows"),
|
||||
CVAR_ENHANCEMENT("SunlightArrows"),
|
||||
CVAR_ENHANCEMENT("MinFrameCount"),
|
||||
CVAR_ENHANCEMENT("NewDrops"),
|
||||
CVAR_ENHANCEMENT("DisableBlackBars"),
|
||||
CVAR_ENHANCEMENT("DynamicWalletIcon"),
|
||||
CVAR_ENHANCEMENT("AlwaysShowDungeonMinimapIcon"),
|
||||
CVAR_ENHANCEMENT("FixMenuLR"),
|
||||
CVAR_ENHANCEMENT("NGCKaleidoSwitcher"),
|
||||
CVAR_ENHANCEMENT("FixDungeonMinimapIcon"),
|
||||
CVAR_ENHANCEMENT("TwoHandedIdle"),
|
||||
CVAR_ENHANCEMENT("GravediggingTourFix"),
|
||||
CVAR_ENHANCEMENT("DekuNutUpgradeFix"),
|
||||
CVAR_ENHANCEMENT("NaviTextFix"),
|
||||
CVAR_ENHANCEMENT("AnubisFix"),
|
||||
CVAR_ENHANCEMENT("CrouchStabHammerFix"),
|
||||
CVAR_ENHANCEMENT("CrouchStabFix"),
|
||||
CVAR_ENHANCEMENT("GerudoWarriorClothingFix"),
|
||||
CVAR_ENHANCEMENT("FixCameraDrift"),
|
||||
CVAR_ENHANCEMENT("FixCameraSwing"),
|
||||
CVAR_ENHANCEMENT("FixHangingLedgeSwingRate"),
|
||||
CVAR_ENHANCEMENT("RedGanonBlood"),
|
||||
CVAR_ENHANCEMENT("HoverFishing"),
|
||||
CVAR_ENHANCEMENT("N64WeirdFrames"),
|
||||
CVAR_ENHANCEMENT("BombchusOOB"),
|
||||
CVAR_ENHANCEMENT("QuickPutaway"),
|
||||
CVAR_ENHANCEMENT("GSCutscene"),
|
||||
CVAR_ENHANCEMENT("RestoreRBAValues"),
|
||||
CVAR_ENHANCEMENT("SkipSaveConfirmation"),
|
||||
CVAR_ENHANCEMENT("DisableCritWiggle"),
|
||||
CVAR_ENHANCEMENT("ChestSizeDependsStoneOfAgony"),
|
||||
CVAR_ENHANCEMENT("SkipArrowAnimation"),
|
||||
CVAR_ENHANCEMENT("SeparateArrows"),
|
||||
CVAR_ENHANCEMENT("CustomizeShootingGallery"),
|
||||
CVAR_ENHANCEMENT("InstantShootingGalleryWin"),
|
||||
CVAR_ENHANCEMENT("ConstantAdultGallery"),
|
||||
CVAR_ENHANCEMENT("ShootingGalleryAmmoChild"),
|
||||
CVAR_ENHANCEMENT("ShootingGalleryAmmoAdult"),
|
||||
CVAR_ENHANCEMENT("CustomizeBombchuBowling"),
|
||||
CVAR_ENHANCEMENT("BombchuBowlingNoSmallCucco"),
|
||||
CVAR_ENHANCEMENT("BombchuBowlingNoBigCucco"),
|
||||
CVAR_ENHANCEMENT("BombchuBowlingAmmo"),
|
||||
CVAR_ENHANCEMENT("CustomizeOcarinaGame"),
|
||||
CVAR_ENHANCEMENT("InstantOcarinaGameWin"),
|
||||
CVAR_ENHANCEMENT("OcarinaGame.NoteSpeed"),
|
||||
CVAR_ENHANCEMENT("OcarinaUnlimitedFailTime"),
|
||||
CVAR_ENHANCEMENT("OcarinaGame.StartingNotes"),
|
||||
CVAR_ENHANCEMENT("OcarinaGame.RoundOneNotes"),
|
||||
CVAR_ENHANCEMENT("OcarinaGame.RoundTwoNotes"),
|
||||
CVAR_ENHANCEMENT("OcarinaGame.RoundThreeNotes"),
|
||||
CVAR_ENHANCEMENT("CustomizeFrogsOcarinaGame"),
|
||||
CVAR_ENHANCEMENT("InstantFrogsGameWin"),
|
||||
CVAR_ENHANCEMENT("FrogsUnlimitedFailTime"),
|
||||
CVAR_ENHANCEMENT("FrogsModifyFailTime"),
|
||||
CVAR_ENHANCEMENT("CreditsFix"),
|
||||
CVAR_ENHANCEMENT("SilverRupeeJingleExtend"),
|
||||
CVAR_ENHANCEMENT("StaticExplosionRadius"),
|
||||
CVAR_ENHANCEMENT("NoInputForCredits"),
|
||||
CVAR_ENHANCEMENT("FastFarores"),
|
||||
CVAR_ENHANCEMENT("NightGSAlwaysSpawn"),
|
||||
CVAR_ENHANCEMENT("SkipText"),
|
||||
CVAR_ENHANCEMENT("LinkDefaultName"),
|
||||
CVAR_ENHANCEMENT("MarketSneak"),
|
||||
CVAR_ENHANCEMENT("TimeTravel"),
|
||||
CVAR_ENHANCEMENT("NutsExplodeBombs"),
|
||||
CVAR_ENHANCEMENT("BowSlingshotAmmoFix"),
|
||||
CVAR_ENHANCEMENT("BetterFarore"),
|
||||
CVAR_ENHANCEMENT("DisableFirstPersonChus"),
|
||||
CVAR_ENHANCEMENT("BetterBombchuShopping"),
|
||||
CVAR_ENHANCEMENT("HyperBosses"),
|
||||
CVAR_ENHANCEMENT("RupeeDash"),
|
||||
CVAR_ENHANCEMENT("RupeeDashInterval"),
|
||||
CVAR_ENHANCEMENT("DogFollowsEverywhere"),
|
||||
CVAR_ENHANCEMENT("DisableTunicWarningText"),
|
||||
CVAR_ENHANCEMENT("DisableLOD"),
|
||||
CVAR_ENHANCEMENT("DisableDrawDistance"),
|
||||
CVAR_ENHANCEMENT("DisableKokiriDrawDistance"),
|
||||
CVAR_ENHANCEMENT("WidescreenActorCulling"),
|
||||
CVAR_ENHANCEMENT("ExtendedCullingExcludeGlitchActors"),
|
||||
CVAR_LOW_RES_MODE,
|
||||
CVAR_ENHANCEMENT("DrawLineupTick"),
|
||||
CVAR_ENHANCEMENT("QuickBongoKill"),
|
||||
CVAR_ENHANCEMENT("FirstPersonGauntlets"),
|
||||
CVAR_ENHANCEMENT("SceneSpecificDirtPathFix"),
|
||||
CVAR_Z_FIGHTING_MODE,
|
||||
CVAR_ENHANCEMENT("AuthenticLogo"),
|
||||
CVAR_ENHANCEMENT("BowReticle"),
|
||||
CVAR_ENHANCEMENT("BoomerangFirstPerson"),
|
||||
CVAR_ENHANCEMENT("BoomerangReticle"),
|
||||
CVAR_ENHANCEMENT("FixTexturesOOB"),
|
||||
CVAR_ENHANCEMENT("IvanCoopModeEnabled"),
|
||||
CVAR_ENHANCEMENT("EnemySpawnsOverWaterboxes"),
|
||||
CVAR_ENHANCEMENT("TreesDropSticks"),
|
||||
CVAR_ENHANCEMENT("ShadowTag"),
|
||||
CVAR_ENHANCEMENT("RandomizedEnemySizes"),
|
||||
CVAR_ENHANCEMENT("RandomizedEnemies"),
|
||||
CVAR_ENHANCEMENT("MirroredWorldMode"),
|
||||
CVAR_ENHANCEMENT("MirroredWorld"),
|
||||
CVAR_ENHANCEMENT("HyperEnemies"),
|
||||
CVAR_ENHANCEMENT("HookshotableReticle"),
|
||||
CVAR_ENHANCEMENT("HideBunnyHood"),
|
||||
CVAR_ENHANCEMENT("FixVineFall"),
|
||||
CVAR_ENHANCEMENT("FileSelectMoreInfo"),
|
||||
CVAR_ENHANCEMENT("EnemyHealthBar"),
|
||||
CVAR_ENHANCEMENT("BushDropFix"),
|
||||
CVAR_ENHANCEMENT("AllDogsRichard"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Enabled"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Ammo"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Bomb"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Burn"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Ice"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Kill"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Knockback"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Shock"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Speed"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Teleport"),
|
||||
CVAR_ENHANCEMENT("ExtraTraps.Void"),
|
||||
CVAR_ENHANCEMENT("ToTMedallionsColors"),
|
||||
CVAR_ENHANCEMENT("CuccoStayDurationMult"),
|
||||
CVAR_ENHANCEMENT("DeleteFileOnDeath"),
|
||||
CVAR_ENHANCEMENT("EnemySizeScalesHealth"),
|
||||
CVAR_ENHANCEMENT("BetterAmmoRendering"),
|
||||
CVAR_ENHANCEMENT("EquipmentAlwaysVisible"),
|
||||
CVAR_ENHANCEMENT("FixDaruniaDanceSpeed"),
|
||||
CVAR_ENHANCEMENT("OpenAllHours"),
|
||||
CVAR_ENHANCEMENT("ResetNaviTimer"),
|
||||
CVAR_ENHANCEMENT("ScaleAdultEquipmentAsChild"),
|
||||
CVAR_ENHANCEMENT("LeeverSpawnRate"),
|
||||
CVAR_ENHANCEMENT("SwordToggle"),
|
||||
CVAR_ENHANCEMENT("FixFloorSwitches"),
|
||||
CVAR_ENHANCEMENT("FixZoraHintDialogue"),
|
||||
CVAR_ENHANCEMENT("HurtContainer"),
|
||||
CVAR_ENHANCEMENT("PauseWarp"),
|
||||
CVAR_ENHANCEMENT("PermanentHeartLoss"),
|
||||
CVAR_ENHANCEMENT("RemoveExplosiveLimit"),
|
||||
CVAR_ENHANCEMENT("ToggleStrength"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Intro"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Entrances"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Story"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.LearnSong"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.BossIntro"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.GlitchAiding"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.OnePoint"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.NoForcedDialog"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipOwlInteractions"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipMiscInteractions"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.DisableTitleCard"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipGetItemAnimation"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipChildStealth"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipTowerEscape"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SkipForcedDialog"),
|
||||
CVAR_ENHANCEMENT("TimeSavers.SleepingWaterfall"),
|
||||
CVAR_ENHANCEMENT("SlowTextSpeed"),
|
||||
};
|
||||
|
||||
const std::vector<const char*> cheatCvars = {
|
||||
CVAR_CONSOLE_WINDOW_OPEN,
|
||||
CVAR_WINDOW("ActorViewer"),
|
||||
CVAR_WINDOW("CollisionViewer"),
|
||||
CVAR_WINDOW("DLViewer"),
|
||||
CVAR_WINDOW("SaveEditor"),
|
||||
CVAR_SETTING("WalkModifier.Enabled"),
|
||||
CVAR_SETTING("WalkModifier.SpeedToggle"),
|
||||
CVAR_SETTING("WalkModifier.Mapping1"),
|
||||
CVAR_SETTING("WalkModifier.Mapping2"),
|
||||
CVAR_SETTING("WalkModifier.SwimMapping1"),
|
||||
CVAR_SETTING("WalkModifier.SwimMapping2"),
|
||||
CVAR_ENHANCEMENT("GoronPot"),
|
||||
CVAR_ENHANCEMENT("DampeWin"),
|
||||
CVAR_ENHANCEMENT("CustomizeShootingGallery"),
|
||||
CVAR_ENHANCEMENT("CustomizeBombchuBowling"),
|
||||
CVAR_ENHANCEMENT("CustomizeFishing"),
|
||||
CVAR_CHEAT("InfiniteAmmo"),
|
||||
CVAR_CHEAT("InfiniteEponaBoost"),
|
||||
CVAR_CHEAT("InfiniteHealth"),
|
||||
CVAR_CHEAT("InfiniteMagic"),
|
||||
CVAR_CHEAT("InfiniteMoney"),
|
||||
CVAR_CHEAT("InfiniteNayru"),
|
||||
CVAR_CHEAT("NoClip"),
|
||||
CVAR_CHEAT("ClimbEverything"),
|
||||
CVAR_CHEAT("HookshotEverything"),
|
||||
CVAR_CHEAT("HookshotReachMultiplier"),
|
||||
CVAR_CHEAT("MoonJumpOnL"),
|
||||
CVAR_CHEAT("SuperTunic"),
|
||||
CVAR_CHEAT("EasyISG"),
|
||||
CVAR_CHEAT("EasyQPA"),
|
||||
CVAR_CHEAT("TimelessEquipment"),
|
||||
CVAR_CHEAT("NoRestrictItems"),
|
||||
CVAR_CHEAT("FreezeTime"),
|
||||
CVAR_GENERAL("PrevTime"),
|
||||
CVAR_CHEAT("DropsDontDie"),
|
||||
CVAR_CHEAT("FireproofDekuShield"),
|
||||
CVAR_CHEAT("ShieldTwoHanded"),
|
||||
CVAR_CHEAT("TimeSync"),
|
||||
CVAR_DEVELOPER_TOOLS("DebugEnabled"),
|
||||
CVAR_DEVELOPER_TOOLS("SkulltulaDebugEnabled"),
|
||||
CVAR_DEVELOPER_TOOLS("SkipLogoTitle"),
|
||||
CVAR_DEVELOPER_TOOLS("SaveFileID"),
|
||||
CVAR_CHEAT("EnableBetaQuest"),
|
||||
CVAR_DEVELOPER_TOOLS("BetterDebugWarpScreen"),
|
||||
CVAR_CHEAT("NoRedeadFreeze"),
|
||||
CVAR_CHEAT("NoKeeseGuayTarget"),
|
||||
CVAR_CHEAT("BombTimerMultiplier"),
|
||||
CVAR_CHEAT("NoFishDespawn"),
|
||||
CVAR_CHEAT("NoBugsDespawn"),
|
||||
CVAR_SETTING("WalkModifier.DoesntChangeJump"),
|
||||
CVAR_STATS_WINDOW_OPEN,
|
||||
CVAR_CHEAT("SaveStatesEnabled"),
|
||||
CVAR_CHEAT("SaveStatePromise"),
|
||||
CVAR_DEVELOPER_TOOLS("RegEditEnabled"),
|
||||
CVAR_CHEAT("DekuStick"),
|
||||
CVAR_DEVELOPER_TOOLS("DebugWarpScreenTranslation"),
|
||||
CVAR_DEVELOPER_TOOLS("DebugSaveFileMode"),
|
||||
CVAR_COSMETIC("Link.BodyScale.Changed"),
|
||||
CVAR_COSMETIC("Link.BodyScale.Value"),
|
||||
CVAR_COSMETIC("Link.HeadScale.Changed"),
|
||||
CVAR_COSMETIC("Link.HeadScale.Value"),
|
||||
CVAR_COSMETIC("Link.SwordScale.Changed"),
|
||||
CVAR_COSMETIC("Link.SwordScale.Value"),
|
||||
CVAR_ENHANCEMENT("RememberMapToggleState"),
|
||||
};
|
||||
|
||||
const std::vector<const char*> randomizerCvars = {
|
||||
CVAR_RANDOMIZER_ENHANCEMENT("MatchKeyColors"),
|
||||
CVAR_RANDOMIZER_ENHANCEMENT("QuestItemFanfares"),
|
||||
CVAR_RANDOMIZER_ENHANCEMENT("RandoRelevantNavi"),
|
||||
CVAR_RANDOMIZER_ENHANCEMENT("MysteriousShuffle"),
|
||||
CVAR_RANDOMIZER_ENHANCEMENT("RandomizeRupeeNames"),
|
||||
CVAR_RANDOMIZER_SETTING("100GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("10GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("20GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("30GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("40GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("50GSHint"),
|
||||
CVAR_RANDOMIZER_SETTING("AllLocationsReachable"),
|
||||
CVAR_RANDOMIZER_SETTING("AltarHint"),
|
||||
CVAR_RANDOMIZER_SETTING("BigPoeTargetCount"),
|
||||
CVAR_RANDOMIZER_SETTING("BigPoesHint"),
|
||||
CVAR_RANDOMIZER_SETTING("BiggoronHint"),
|
||||
CVAR_RANDOMIZER_SETTING("BlueFireArrows"),
|
||||
CVAR_RANDOMIZER_SETTING("BombchuBag"),
|
||||
CVAR_RANDOMIZER_SETTING("BossKeysanity"),
|
||||
CVAR_RANDOMIZER_SETTING("BridgeRewardOptions"),
|
||||
CVAR_RANDOMIZER_SETTING("ChickensHint"),
|
||||
CVAR_RANDOMIZER_SETTING("CompleteMaskQuest"),
|
||||
CVAR_RANDOMIZER_SETTING("CuccosToReturn"),
|
||||
CVAR_RANDOMIZER_SETTING("DampeHint"),
|
||||
CVAR_RANDOMIZER_SETTING("DecoupleEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("DoorOfTime"),
|
||||
CVAR_RANDOMIZER_SETTING("DungeonCount"),
|
||||
CVAR_RANDOMIZER_SETTING("EnableBombchuDrops"),
|
||||
CVAR_RANDOMIZER_SETTING("FishingPoleHint"),
|
||||
CVAR_RANDOMIZER_SETTING("Fishsanity"),
|
||||
CVAR_RANDOMIZER_SETTING("FishsanityAgeSplit"),
|
||||
CVAR_RANDOMIZER_SETTING("FishsanityPondCount"),
|
||||
CVAR_RANDOMIZER_SETTING("ClosedForest"),
|
||||
CVAR_RANDOMIZER_SETTING("FrogsHint"),
|
||||
CVAR_RANDOMIZER_SETTING("FullWallets"),
|
||||
CVAR_RANDOMIZER_SETTING("GanonTrial"),
|
||||
CVAR_RANDOMIZER_SETTING("GanonTrialCount"),
|
||||
CVAR_RANDOMIZER_SETTING("GanondorfHint"),
|
||||
CVAR_RANDOMIZER_SETTING("FortressCarpenters"),
|
||||
CVAR_RANDOMIZER_SETTING("GerudoKeys"),
|
||||
CVAR_RANDOMIZER_SETTING("GossipStoneHints"),
|
||||
CVAR_RANDOMIZER_SETTING("GregHint"),
|
||||
CVAR_RANDOMIZER_SETTING("GsExpectSunsSong"),
|
||||
CVAR_RANDOMIZER_SETTING("HBAHint"),
|
||||
CVAR_RANDOMIZER_SETTING("HintClarity"),
|
||||
CVAR_RANDOMIZER_SETTING("HintDistribution"),
|
||||
CVAR_RANDOMIZER_SETTING("IceTraps"),
|
||||
CVAR_RANDOMIZER_SETTING("IncludeTycoonWallet"),
|
||||
CVAR_RANDOMIZER_SETTING("InfiniteUpgrades"),
|
||||
CVAR_RANDOMIZER_SETTING("ItemPool"),
|
||||
CVAR_RANDOMIZER_SETTING("KakarikoGate"),
|
||||
CVAR_RANDOMIZER_SETTING("Keysanity"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsDungeonCount"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsMedallionCount"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsRewardCount"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsRewardOptions"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsStoneCount"),
|
||||
CVAR_RANDOMIZER_SETTING("LacsTokenCount"),
|
||||
CVAR_RANDOMIZER_SETTING("LinksPocket"),
|
||||
CVAR_RANDOMIZER_SETTING("LoachHint"),
|
||||
CVAR_RANDOMIZER_SETTING("LogicRules"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonCount"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeons"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsBottomOfTheWell"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsDekuTree"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsDodongosCavern"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsFireTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsForestTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsGTG"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsGanonsCastle"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsIceCavern"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsJabuJabu"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsSelection"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsShadowTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsSpiritTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("MQDungeonsWaterTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("MalonHint"),
|
||||
CVAR_RANDOMIZER_SETTING("MaskShopHint"),
|
||||
CVAR_RANDOMIZER_SETTING("MedallionCount"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantAdultWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantChildWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantFixedPrice"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantGiantWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantNoWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantPriceRange1"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantPriceRange2"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantPrices"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantPricesAffordable"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantText"),
|
||||
CVAR_RANDOMIZER_SETTING("MerchantTycoonWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("MixBosses"),
|
||||
CVAR_RANDOMIZER_SETTING("MixDungeons"),
|
||||
CVAR_RANDOMIZER_SETTING("MixGrottos"),
|
||||
CVAR_RANDOMIZER_SETTING("MixInteriors"),
|
||||
CVAR_RANDOMIZER_SETTING("MixOverworld"),
|
||||
CVAR_RANDOMIZER_SETTING("MixedEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("OoTHint"),
|
||||
CVAR_RANDOMIZER_SETTING("RainbowBridge"),
|
||||
CVAR_RANDOMIZER_SETTING("RewardCount"),
|
||||
CVAR_RANDOMIZER_SETTING("SariaHint"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubText"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsAdultWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsChildWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsFixedPrice"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsGiantWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsNoWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsPriceRange1"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsPriceRange2"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsPrices"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsPricesAffordable"),
|
||||
CVAR_RANDOMIZER_SETTING("ScrubsTycoonWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("SheikLAHint"),
|
||||
CVAR_RANDOMIZER_SETTING("Shopsanity"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityAdultWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityChildWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityCount"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityFixedPrice"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityGiantWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityNoWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityPriceRange1"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityPriceRange2"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityPrices"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityPricesAffordable"),
|
||||
CVAR_RANDOMIZER_SETTING("ShopsanityTycoonWalletWeight"),
|
||||
CVAR_RANDOMIZER_SETTING("Shuffle100GSReward"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleAdultTrade"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleBeehives"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleBossEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleBossSouls"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleChildWallet"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleCows"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleDekuNutBag"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleDekuStickBag"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleDungeonReward"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleDungeonsEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleFishingPole"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleFrogSongRupees"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleGanonBossKey"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleGerudoToken"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleGrottosEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleInteriorsEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRings"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsBottomOfTheWell"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsFireTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsForestTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsGTG"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsGanonsCastle"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsGerudoFortress"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsRandomCount"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsShadowTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsSpiritTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKeyRingsWaterTemple"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleKokiriSword"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleMasterSword"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleMerchants"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleOcarinaButtons"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleOcarinas"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleOverworldEntrances"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleOverworldSpawns"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleOwlDrops"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleScrubs"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleSongs"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleSwim"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleTokens"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleWarpSongs"),
|
||||
CVAR_RANDOMIZER_SETTING("ShuffleWeirdEgg"),
|
||||
CVAR_RANDOMIZER_SETTING("SkeletonKey"),
|
||||
CVAR_RANDOMIZER_SETTING("SkipChildStealth"),
|
||||
CVAR_RANDOMIZER_SETTING("SkipChildZelda"),
|
||||
CVAR_RANDOMIZER_SETTING("SkipEponaRace"),
|
||||
CVAR_RANDOMIZER_SETTING("SkipScarecrowsSong"),
|
||||
CVAR_RANDOMIZER_SETTING("SleepingWaterfall"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingAge"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingBoleroOfFire"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingConsumables"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingDekuShield"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingEponasSong"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingHearts"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingKokiriSword"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingMapsCompasses"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingMasterSword"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingMinuetOfForest"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingNocturneOfShadow"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingOcarina"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingPreludeOfLight"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingRequiemOfSpirit"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSariasSong"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSerenadeOfWater"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSkulltulaToken"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSongOfStorms"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSongOfTime"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingSunsSong"),
|
||||
CVAR_RANDOMIZER_SETTING("StartingZeldasLullaby"),
|
||||
CVAR_RANDOMIZER_SETTING("StoneCount"),
|
||||
CVAR_RANDOMIZER_SETTING("SunlightArrows"),
|
||||
CVAR_RANDOMIZER_SETTING("TokenCount"),
|
||||
CVAR_RANDOMIZER_SETTING("TriforceHunt"),
|
||||
CVAR_RANDOMIZER_SETTING("TriforceHuntRequiredPieces"),
|
||||
CVAR_RANDOMIZER_SETTING("TriforceHuntTotalPieces"),
|
||||
CVAR_RANDOMIZER_SETTING("WarpSongText"),
|
||||
CVAR_RANDOMIZER_SETTING("ZorasFountain"),
|
||||
};
|
||||
|
||||
const std::vector<PresetEntry> vanillaPlusPresetEntries = {
|
||||
// D-pad Support in text and file select
|
||||
PRESET_ENTRY_S32(CVAR_SETTING("DpadInText"), 1),
|
||||
|
@ -1325,12 +832,12 @@ typedef struct PresetDefinition {
|
|||
} PresetDefinition;
|
||||
|
||||
typedef struct PresetTypeDefinition {
|
||||
std::vector<const char*> cvarsToClear;
|
||||
std::vector<const char*> blocksToClear;
|
||||
std::map<uint16_t, PresetDefinition> presets;
|
||||
} PresetTypeDefinition;
|
||||
|
||||
const std::map<PresetType, PresetTypeDefinition> presetTypes = {
|
||||
{ PRESET_TYPE_ENHANCEMENTS, { enhancementsCvars, {
|
||||
{ PRESET_TYPE_ENHANCEMENTS, { { CVAR_PREFIX_ENHANCEMENT, CVAR_PREFIX_CHEAT }, {
|
||||
{ ENHANCEMENT_PRESET_DEFAULT, {
|
||||
"Default",
|
||||
"Reset all options to their default values.",
|
||||
|
@ -1352,7 +859,7 @@ const std::map<PresetType, PresetTypeDefinition> presetTypes = {
|
|||
randomizerPresetEntries
|
||||
} },
|
||||
} } },
|
||||
{ PRESET_TYPE_RANDOMIZER, { randomizerCvars, {
|
||||
{ PRESET_TYPE_RANDOMIZER, { { CVAR_PREFIX_RANDOMIZER_SETTING, CVAR_PREFIX_RANDOMIZER_ENHANCEMENT }, {
|
||||
{ RANDOMIZER_PRESET_DEFAULT, {
|
||||
"Default",
|
||||
"Reset all options to their default values.",
|
||||
|
|
|
@ -2437,9 +2437,11 @@ void SoH_ProcessDroppedFiles(std::string filePath) {
|
|||
return;
|
||||
}
|
||||
|
||||
clearCvars(enhancementsCvars);
|
||||
clearCvars(cheatCvars);
|
||||
clearCvars(randomizerCvars);
|
||||
CVarClearBlock(CVAR_PREFIX_ENHANCEMENT);
|
||||
CVarClearBlock(CVAR_PREFIX_CHEAT);
|
||||
CVarClearBlock(CVAR_PREFIX_RANDOMIZER_SETTING);
|
||||
CVarClearBlock(CVAR_PREFIX_RANDOMIZER_ENHANCEMENT);
|
||||
CVarClearBlock(CVAR_PREFIX_DEVELOPER_TOOLS);
|
||||
|
||||
// Flatten everything under CVars into a single array
|
||||
auto cvars = configJson["CVars"].flatten();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue