diff --git a/AquaMai/.gitignore b/AquaMai/.gitignore
index 4d8e37ca..d2f23041 100644
--- a/AquaMai/.gitignore
+++ b/AquaMai/.gitignore
@@ -372,4 +372,5 @@ MigrationBackup/
Output
.idea
-Libs/Assembly-CSharp.dll
\ No newline at end of file
+Libs/Assembly-CSharp.dll
+packages
\ No newline at end of file
diff --git a/AquaMai/AquaMai.csproj b/AquaMai/AquaMai.csproj
index 7fd4c82b..036b65f7 100644
--- a/AquaMai/AquaMai.csproj
+++ b/AquaMai/AquaMai.csproj
@@ -60,6 +60,9 @@
Libs\System.Xml.dll
+
+ packages\Tomlyn.0.17.0\lib\netstandard2.0\Tomlyn.dll
+
Libs\Unity.Analytics.DataPrivacy.dll
@@ -260,9 +263,17 @@
-
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/AquaMai/AquaMai.toml b/AquaMai/AquaMai.toml
new file mode 100644
index 00000000..60dd1bca
--- /dev/null
+++ b/AquaMai/AquaMai.toml
@@ -0,0 +1,7 @@
+
+# ===================================
+# UX: User Experience Improvements
+[UX]
+# Skip the warning screen and logo shown after the POST sequence
+SkipWarningScreen=1
+
diff --git a/AquaMai/Config.cs b/AquaMai/Config.cs
new file mode 100644
index 00000000..41399699
--- /dev/null
+++ b/AquaMai/Config.cs
@@ -0,0 +1,15 @@
+using System.Diagnostics.CodeAnalysis;
+
+namespace AquaMai
+{
+ [SuppressMessage("ReSharper", "ClassNeverInstantiated.Global")]
+ public class Config
+ {
+ public UXConfig UX { get; set; }
+
+ public class UXConfig
+ {
+ public bool SkipWarningScreen { get; set; }
+ }
+ }
+}
\ No newline at end of file
diff --git a/AquaMai/Main.cs b/AquaMai/Main.cs
index 79b646e5..ad5f921a 100644
--- a/AquaMai/Main.cs
+++ b/AquaMai/Main.cs
@@ -1,5 +1,6 @@
-using MelonLoader;
-using HarmonyLib;
+using AquaMai.UX;
+using MelonLoader;
+using Tomlyn;
namespace AquaMai
{
@@ -15,10 +16,20 @@ namespace AquaMai
public class AquaMai : MelonMod
{
+ public static Config AppConfig { get; private set; }
+
public override void OnInitializeMelon()
{
MelonLogger.Msg("OnApplicationStart");
- HarmonyLib.Harmony.CreateAndPatchAll(typeof(CutsceneSkipping));
+
+ // Read AquaMai.toml to load settings
+ AppConfig = Toml.ToModel("AquaMai.toml");
+
+ if (AppConfig.UX.SkipWarningScreen)
+ {
+ MelonLogger.Msg("Patching CutsceneSkipping");
+ HarmonyLib.Harmony.CreateAndPatchAll(typeof(SkipWarningScreen));
+ }
}
}
}
\ No newline at end of file
diff --git a/AquaMai/CutsceneSkipping.cs b/AquaMai/UX/SkipWarningScreen.cs
similarity index 88%
rename from AquaMai/CutsceneSkipping.cs
rename to AquaMai/UX/SkipWarningScreen.cs
index 135d29c2..dd34bc0f 100644
--- a/AquaMai/CutsceneSkipping.cs
+++ b/AquaMai/UX/SkipWarningScreen.cs
@@ -1,9 +1,9 @@
using HarmonyLib;
using Monitor;
-namespace AquaMai
+namespace AquaMai.UX
{
- public class CutsceneSkipping
+ public class SkipWarningScreen
{
/*
* Patch PlayLogo to disable the warning screen
diff --git a/AquaMai/packages.config b/AquaMai/packages.config
new file mode 100644
index 00000000..3f81b7af
--- /dev/null
+++ b/AquaMai/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file