From 742ad44d10391c797164086989ceb44b541fbcc2 Mon Sep 17 00:00:00 2001 From: XtraCube <72575280+XtraCube@users.noreply.github.com> Date: Tue, 20 Aug 2024 12:46:38 -0400 Subject: [PATCH] some more options error fixes --- MiraAPI/GameModes/CustomGameModeManager.cs | 2 +- MiraAPI/Patches/Options/GameOptionsMenuPatch.cs | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/MiraAPI/GameModes/CustomGameModeManager.cs b/MiraAPI/GameModes/CustomGameModeManager.cs index bec9d84..9a5da49 100644 --- a/MiraAPI/GameModes/CustomGameModeManager.cs +++ b/MiraAPI/GameModes/CustomGameModeManager.cs @@ -24,7 +24,7 @@ public static class CustomGameModeManager /// /// Current gamemode /// - public static CustomGameMode? ActiveMode; + public static CustomGameMode? ActiveMode = new DefaultMode(); /// /// Set current gamemode diff --git a/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs b/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs index 580add3..f01a38c 100644 --- a/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs +++ b/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs @@ -23,7 +23,7 @@ public static class GameOptionsMenuPatch float num = 2.1f; - var filteredGroups = GameSettingMenuPatches.SelectedMod.OptionGroups.Where(x => x.AdvancedRole is null); + var filteredGroups = GameSettingMenuPatches.SelectedMod.OptionGroups.Where(x => x.GroupVisible.Invoke() && x.AdvancedRole is null); foreach (IModdedOptionGroup group in filteredGroups) { @@ -38,7 +38,9 @@ public static class GameOptionsMenuPatch categoryHeaderMasked.transform.localPosition = new Vector3(-0.903f, num, -2f); num -= 0.63f; - foreach (var opt in ModdedOptionsManager.GroupedOptions[group]) + var filteredOpts = ModdedOptionsManager.GroupedOptions[group].Where(x=>x.Visible.Invoke()).ToList(); + + foreach (var opt in filteredOpts) { OptionBehaviour newOpt = opt.CreateOption(__instance.checkboxOrigin, __instance.numberOptionOrigin, __instance.stringOptionOrigin, __instance.settingsContainer); newOpt.transform.localPosition = new Vector3(0.952f, num, -2f);