diff --git a/MiraAPI/GameModes/ClassicMode.cs b/MiraAPI/GameModes/ClassicMode.cs index 952f918..7eff012 100644 --- a/MiraAPI/GameModes/ClassicMode.cs +++ b/MiraAPI/GameModes/ClassicMode.cs @@ -12,5 +12,5 @@ public class ClassicMode : AbstractGameMode public override string Name => "Classic"; /// - public override string Description => "The classic Among Us experience"; + public override string Description => "The classic Among Us experience!\nFind the Impostors or deceive the Crew."; } diff --git a/MiraAPI/GameModes/HideAndSeekMode.cs b/MiraAPI/GameModes/HideAndSeekMode.cs index 952a268..6ec83ae 100644 --- a/MiraAPI/GameModes/HideAndSeekMode.cs +++ b/MiraAPI/GameModes/HideAndSeekMode.cs @@ -26,7 +26,7 @@ public class HideAndSeekMode : AbstractGameMode public override string Name => "Hide n Seek"; /// - public override string Description => "You can run, but you can't hide!"; + public override string Description => "You can run, but you can't hide!\nOutlive the timer or eliminate the crew."; public override Color Color { get; } = new Color32(255, 88, 90, 255); diff --git a/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs b/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs index 1da222a..5e5b27e 100644 --- a/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs +++ b/MiraAPI/Patches/Options/GameOptionsMenuPatch.cs @@ -31,6 +31,7 @@ internal static class GameOptionsMenuPatch private static System.Collections.Generic.Dictionary> _gameModeGroups = new(); private static System.Collections.Generic.Dictionary> _gameModeOptions = new(); private static System.Collections.Generic.Dictionary> _gameModeHeaders = new(); + private static TextMeshPro _gamemodeDescription = null!; [HarmonyPrefix] [HarmonyPatch(nameof(GameOptionsMenu.Initialize))] // ReSharper disable once InconsistentNaming @@ -83,6 +84,7 @@ internal static class GameOptionsMenuPatch { instance.Children.Add(opt); } + _gamemodeDescription.text = gameMode.Description; if (gameMode.ShowNormalGameSettings) { foreach (var opt in _vanillaHeaders) @@ -195,6 +197,16 @@ internal static class GameOptionsMenuPatch GameModeOption.Values.ElementAt(i).Value); } + var gamemodeTextObj = Object.Instantiate(GameModeOption.OptionBehaviour.transform.GetChild(1).gameObject, Vector3.zero, Quaternion.identity, container); + gamemodeTextObj.transform.localPosition = new Vector3(1, -0.675f, -2f); + gamemodeTextObj.transform.localScale = new Vector3(2.6f, 2.6f, 1); + _gamemodeDescription = gamemodeTextObj.GetComponentInChildren(); + _gamemodeDescription.fontSizeMin = 0.5f; + _gamemodeDescription.fontSizeMax = 1; + + var gamemodeBg = Object.Instantiate(GameModeOption.OptionBehaviour.transform.GetChild(0).gameObject, Vector3.zero, Quaternion.identity, gamemodeTextObj.transform); + gamemodeBg.transform.localPosition = new Vector3(0, 0, 0.01f); + gamemodeBg.transform.localScale = new Vector3(0.61f, 0.375f, 1); num -= 1.3f; AdditionalVanillaScrollNum = 0f; foreach (RulesCategory rulesCategory in GameManager.Instance.GameSettingsList.AllCategories)