diff --git a/src/Data/Config/BAUConfigs.cs b/src/Data/Config/BAUConfigs.cs
index 1adcdaa..45b7f7d 100644
--- a/src/Data/Config/BAUConfigs.cs
+++ b/src/Data/Config/BAUConfigs.cs
@@ -66,7 +66,7 @@ internal static class BAUConfigs
///
/// Gets the configuration entry for vent color groups setting.
///
- internal static BAUConfigEntry? VentColorGroups { get; } = new("Better Options", "VentColorGroups", false);
+ internal static BAUConfigEntry? VentColorGroups { get; } = new("Better Options", "VentColorGroups", true);
///
/// Gets the configuration entry for command prefix setting.
diff --git a/src/Modules/VentGroups.cs b/src/Modules/VentGroups.cs
index 2a844c3..bebb055 100644
--- a/src/Modules/VentGroups.cs
+++ b/src/Modules/VentGroups.cs
@@ -1,4 +1,5 @@
-using UnityEngine;
+using BetterAmongUs.Data.Config;
+using UnityEngine;
namespace BetterAmongUs.Modules;
@@ -109,6 +110,11 @@ internal static class VentGroups
///
internal static Color GetVentGroupColor(Vent vent)
{
+ if (!BAUConfigs.VentColorGroups.Value)
+ {
+ return Color.gray;
+ }
+
if (ventToLowestId.TryGetValue(vent.Id, out int lowestId))
{
return groupColors[lowestId];
diff --git a/src/Patches/Client/OptionsMenuBehaviourPatch.cs b/src/Patches/Client/OptionsMenuBehaviourPatch.cs
index 7170627..51042a1 100644
--- a/src/Patches/Client/OptionsMenuBehaviourPatch.cs
+++ b/src/Patches/Client/OptionsMenuBehaviourPatch.cs
@@ -51,6 +51,25 @@ internal static class OptionsMenuBehaviourPatch
ClientOptionItem.CreateToggle(Translator.GetString("BetterOption.UnlockFPS"), BAUConfigs.UnlockFPS, 1, __instance, UpdateFrameRate);
ClientOptionItem.CreateToggle(Translator.GetString("BetterOption.ShowFPS"), BAUConfigs.ShowFPS, 1, __instance);
+ ClientOptionItem.CreateToggle(Translator.GetString("BetterOption.VentColorGroups"), BAUConfigs.VentColorGroups, 2, __instance, toggleCheck: () =>
+ {
+ bool cannotToggle = GameState.IsInGame;
+ if (cannotToggle)
+ {
+ BetterNotificationManager.Notify($"Unable to toggle while in gameplay!", 2.5f);
+ }
+ return !cannotToggle;
+ });
+ ClientOptionItem.CreateToggle(Translator.GetString("BetterOption.MinimapIcons"), BAUConfigs.MinimapIcons, 2, __instance, toggleCheck: () =>
+ {
+ bool cannotToggle = GameState.IsInGame;
+ if (cannotToggle)
+ {
+ BetterNotificationManager.Notify($"Unable to toggle while in gameplay!", 2.5f);
+ }
+ return !cannotToggle;
+ });
+
// Button options (no toggle)
if (!ModInfo.Starlight)
{
diff --git a/src/Patches/Gameplay/Ship/VentPatch.cs b/src/Patches/Gameplay/Ship/VentPatch.cs
index 24af5f1..b6c8ff1 100644
--- a/src/Patches/Gameplay/Ship/VentPatch.cs
+++ b/src/Patches/Gameplay/Ship/VentPatch.cs
@@ -1,4 +1,5 @@
-using BetterAmongUs.Modules;
+using BetterAmongUs.Data.Config;
+using BetterAmongUs.Modules;
using BetterAmongUs.Modules.Support;
using HarmonyLib;
using UnityEngine;
@@ -13,7 +14,7 @@ internal static class VentPatch
private static bool Vent_SetOutline_Prefix(Vent __instance, bool on, bool mainTarget)
{
// Skip if vent color groups are disabled - use vanilla behavior
- if (BAUModdedSupportFlags.HasFlag(BAUModdedSupportFlags.Disable_VentColorGroups)) return true;
+ if (!BAUConfigs.VentColorGroups.Value || BAUModdedSupportFlags.HasFlag(BAUModdedSupportFlags.Disable_VentColorGroups)) return true;
// Get group color for this vent and apply outline
Color color = VentGroups.GetVentGroupColor(__instance);
diff --git a/src/Patches/Gameplay/UI/MiniMapBehaviourPatch.cs b/src/Patches/Gameplay/UI/MiniMapBehaviourPatch.cs
index a308cce..f259520 100644
--- a/src/Patches/Gameplay/UI/MiniMapBehaviourPatch.cs
+++ b/src/Patches/Gameplay/UI/MiniMapBehaviourPatch.cs
@@ -1,4 +1,5 @@
-using BetterAmongUs.Helpers;
+using BetterAmongUs.Data.Config;
+using BetterAmongUs.Helpers;
using BetterAmongUs.Modules;
using BetterAmongUs.Modules.Support;
using BetterAmongUs.Mono;
@@ -68,7 +69,7 @@ internal static class MiniMapBehaviourPatch
[HarmonyPostfix]
private static void MapBehaviour_Show_Postfix(MapBehaviour __instance)
{
- if (BAUModdedSupportFlags.HasFlag(BAUModdedSupportFlags.Disable_MinimapIcons)) return;
+ if (!BAUConfigs.MinimapIcons.Value || BAUModdedSupportFlags.HasFlag(BAUModdedSupportFlags.Disable_MinimapIcons)) return;
// Make infected overlay buttons semi-transparent and smaller
foreach (var button in __instance.infectedOverlay.allButtons)
diff --git a/src/Resources/Lang/en_US.json b/src/Resources/Lang/en_US.json
index b6ba2d6..fc9e3bf 100644
--- a/src/Resources/Lang/en_US.json
+++ b/src/Resources/Lang/en_US.json
@@ -60,6 +60,9 @@
"BetterOption.LobbyTheme": "Disable Lobby Theme",
"BetterOption.UnlockFPS": "UnlockFPS",
"BetterOption.ShowFPS": "ShowFPS",
+ "BetterOption.VentColorGroups": "Vent Color Groups",
+ "BetterOption.MinimapIcons": "Minimap Icons",
+
"BetterOption.SaveData": "Open Save Data",
"BetterOption.ToVanilla": "Switch To Vanilla",