diff --git a/AquaMai/AquaMai.csproj b/AquaMai/AquaMai.csproj index b7f6d42b..452e1630 100644 --- a/AquaMai/AquaMai.csproj +++ b/AquaMai/AquaMai.csproj @@ -269,6 +269,7 @@ + diff --git a/AquaMai/AquaMai.toml b/AquaMai/AquaMai.toml index c82559c4..4e3816fe 100644 --- a/AquaMai/AquaMai.toml +++ b/AquaMai/AquaMai.toml @@ -12,10 +12,12 @@ TicketUnlock=true SkipWarningScreen=true # Single player: Show 1P only, at the center of the screen SinglePlayer=true -# !!EXPERIMENTAL!! Skip from the card-scanning screen directly to the music selection screen +# !!EXPERIMENTAL!! Skip from the card-scanning screen directly to music selection screen SkipToMusicSelection=false +# Set the version string displayed at the top-right corner of the screen +CustomVersionString="" [Performance] # Disable some useless checks and delays to speed up the game boot process # !! Known issue: The game may crash if DX Pass scanning is enabled -ImproveLoadSpeed=false +ImproveLoadSpeed=false \ No newline at end of file diff --git a/AquaMai/Config.cs b/AquaMai/Config.cs index 07c1b14b..3a4d39fc 100644 --- a/AquaMai/Config.cs +++ b/AquaMai/Config.cs @@ -19,6 +19,7 @@ namespace AquaMai public bool SkipWarningScreen { get; set; } public bool SinglePlayer { get; set; } public bool SkipToMusicSelection { get; set; } + public string CustomVersionString { get; set; } } public class PerformanceConfig diff --git a/AquaMai/Main.cs b/AquaMai/Main.cs index a69e69aa..6a35b971 100644 --- a/AquaMai/Main.cs +++ b/AquaMai/Main.cs @@ -1,5 +1,6 @@ using System; using AquaMai.Fix; +using AquaMai.UX; using MelonLoader; using Tomlet; @@ -77,6 +78,7 @@ namespace AquaMai // Fixes that does not have side effects // These don't need to be configurable Patch(typeof(FixCharaCrash)); + Patch(typeof(CustomVersionString)); MelonLogger.Msg("Loaded!"); } diff --git a/AquaMai/UX/CustomVersionString.cs b/AquaMai/UX/CustomVersionString.cs new file mode 100644 index 00000000..78282ea9 --- /dev/null +++ b/AquaMai/UX/CustomVersionString.cs @@ -0,0 +1,24 @@ +using HarmonyLib; + +namespace AquaMai.UX +{ + public class CustomVersionString + { + /* + * Patch displayVersionString Property Getter + */ + [HarmonyPrefix] + [HarmonyPatch(typeof(MAI2System.Config), "displayVersionString", MethodType.Getter)] + public static bool GetDisplayVersionString(ref string __result) + { + if (string.IsNullOrEmpty(AquaMai.AppConfig.UX.CustomVersionString)) + { + return true; + } + + __result = AquaMai.AppConfig.UX.CustomVersionString; + // Return false to block the original method + return false; + } + } +} \ No newline at end of file