From 41383e929e4a3b1166f2fd6715d4c8faa1f96916 Mon Sep 17 00:00:00 2001 From: MatuxGG Date: Mon, 19 Sep 2022 00:40:59 +0200 Subject: [PATCH] Version 5.3.1 --- MakeExecutableDotnet6.iss | 2 +- ModManager5/Classes/Config.cs | 17 +++++++++++++++++ ModManager5/Classes/ModManagerUI.cs | 27 +++++++++++++++++++++++++++ ModManager5/Classes/ModWorker.cs | 15 ++++++++------- ModManager5/ModManager5.csproj | 4 ++-- 5 files changed, 55 insertions(+), 10 deletions(-) diff --git a/MakeExecutableDotnet6.iss b/MakeExecutableDotnet6.iss index a3e2eeac..0098a7ed 100644 --- a/MakeExecutableDotnet6.iss +++ b/MakeExecutableDotnet6.iss @@ -5,7 +5,7 @@ #include "Installer\CodeDependencies.iss" #define MyAppName "ModManager" -#define MyAppVersion "5.3.0" +#define MyAppVersion "5.3.1" #define MyAppPublisher "Matux" #define MyAppURL "https://goodloss.fr" #define MyAppExeName "ModManager5.exe" diff --git a/ModManager5/Classes/Config.cs b/ModManager5/Classes/Config.cs index f53a5139..fffcd371 100644 --- a/ModManager5/Classes/Config.cs +++ b/ModManager5/Classes/Config.cs @@ -16,8 +16,22 @@ public class Config public string launcher; public List favoriteMods; public bool miniEnabled; + public bool multipleGames; public List availableAmongUsPaths; + public Config(string modManagerVersion, List installedMods, List installedVanilla, string amongUsPath, string launcher, List faroriteMods, bool miniEnabled, bool multipleGames) + { + this.ModManagerVersion = modManagerVersion; + this.installedMods = installedMods; + this.installedVanilla = installedVanilla; + this.amongUsPath = amongUsPath; + this.launcher = launcher; + this.favoriteMods = faroriteMods; + this.miniEnabled = miniEnabled; + this.multipleGames = multipleGames; + this.availableAmongUsPaths = new List() { }; + } + public Config(string modManagerVersion, List installedMods, List installedVanilla, string amongUsPath, string launcher, List faroriteMods, bool miniEnabled) { this.ModManagerVersion = modManagerVersion; @@ -27,6 +41,7 @@ public Config(string modManagerVersion, List installedMods, List() { }; } @@ -39,6 +54,7 @@ public Config(string modManagerVersion, List installedMods, List() { }; this.miniEnabled = true; + this.multipleGames = false; this.availableAmongUsPaths = new List() { }; } diff --git a/ModManager5/Classes/ModManagerUI.cs b/ModManager5/Classes/ModManagerUI.cs index 3195e813..7f648fa1 100644 --- a/ModManager5/Classes/ModManagerUI.cs +++ b/ModManager5/Classes/ModManagerUI.cs @@ -1254,6 +1254,33 @@ public static void loadSettings() SettingsForm.Controls.Add(Visuals.SettingsButton(LogButton, Translator.get("Log File"))); + // Multiple game instances + MMButton MultipleGamesButton = new MMButton("trans"); + MultipleGamesButton.Click += new EventHandler((object sender, EventArgs e) => + { + MMButton c = (MMButton)sender; + if (c.Text == Translator.get("Enabled")) + { + ConfigManager.config.multipleGames = false; + c.Text = Translator.get("Disabled"); + } + else + { + ConfigManager.config.multipleGames = true; + c.Text = Translator.get("Enabled"); + } + ConfigManager.update(); + }); + SettingsForm.Controls.Add(Visuals.SettingsButton(MultipleGamesButton, Translator.get("Multiple game instances"))); + if (ConfigManager.config.multipleGames) + { + MultipleGamesButton.Text = Translator.get("Enabled"); + } + else + { + MultipleGamesButton.Text = Translator.get("Disabled"); + } + // Minimise in taskbar MMButton MinimisationButton = new MMButton("trans"); MinimisationButton.Click += new EventHandler((object sender, EventArgs e) => diff --git a/ModManager5/Classes/ModWorker.cs b/ModManager5/Classes/ModWorker.cs index f87604a1..151309eb 100644 --- a/ModManager5/Classes/ModWorker.cs +++ b/ModManager5/Classes/ModWorker.cs @@ -134,11 +134,7 @@ public static void startMod(Mod m) Process.Start("explorer", ModManager.appDataPath + @"\mods\" + m.id + @"\Among Us.exe"); } else { - Boolean modOpen = isGameOpen(); - if (modOpen) - { - return; - } + if (!ConfigManager.config.multipleGames && isGameOpen()) return; InstalledMod im = ConfigManager.getInstalledModById(m.id); @@ -261,7 +257,7 @@ public static void cleanGame() public static void startGame() { - if (isGameOpen()) + if (!ConfigManager.config.multipleGames && isGameOpen()) return; Utils.log("Start vanilla game START", "ModWorker"); @@ -739,6 +735,10 @@ private static void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) backgroundWorker.ReportProgress(100); return; } + if (toInstallMod.id == "GLMod") + { + File.Create(destPath + @"\BepInEx\config\" + m.id + ".mm"); + } backgroundWorker.ReportProgress(installOffset); } @@ -782,8 +782,9 @@ private static void backgroundWorker_RunWorkerCompleted(object sender, RunWorker public static Boolean installFiles(Mod m, string destPath) { + Utils.log("Install files for mod " + m.name + " START", "ModWorker"); - if (m.type == "mod") + if (m.type != "allInOne") { foreach (ReleaseAsset tab in m.release.Assets) { diff --git a/ModManager5/ModManager5.csproj b/ModManager5/ModManager5.csproj index 57cd6dff..7bb3fddd 100644 --- a/ModManager5/ModManager5.csproj +++ b/ModManager5/ModManager5.csproj @@ -4,8 +4,8 @@ net6.0-windows true modmanager.ico - 5.3.0.0 - 5.3.0.0 + 5.3.1.0 + 5.3.1.0