From e15b47c83ec983ab3869cae5662ce2af5dcf1af1 Mon Sep 17 00:00:00 2001 From: Fabian Date: Fri, 19 Aug 2022 17:33:51 +0200 Subject: [PATCH] Added support for more than one major version per branch. Fixes launch issues with 3.4+ release builds. --- src/Launcher.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Launcher.cs b/src/Launcher.cs index 53839c4..0686a30 100644 --- a/src/Launcher.cs +++ b/src/Launcher.cs @@ -15,13 +15,13 @@ class Launcher var (SubFolder, BinaryName, MajorGameVersion, MinGameBuild) = gameVersion switch { #if x64 - GameVersion.Retail => ("_retail_", "Wow.exe", 9, 37862), - GameVersion.Classic => ("_classic_", "WowClassic.exe", 2, 39926), - GameVersion.ClassicEra => ("_classic_era_", "WowClassic.exe", 1, 40347), + GameVersion.Retail => ("_retail_", "Wow.exe", new[] { 9 }, 37862), + GameVersion.Classic => ("_classic_", "WowClassic.exe", new[] { 2, 3 }, 39926), + GameVersion.ClassicEra => ("_classic_era_", "WowClassic.exe", new[] { 1 }, 40347), #elif ARM64 - GameVersion.Retail => ("_retail_", "Wow-ARM64.exe", 9, 37862), - GameVersion.Classic => ("_classic_", "WowClassic-arm64.exe", 2, 39926), - GameVersion.ClassicEra => ("_classic_era_", "WowClassic-arm64.exe", 1, 40347), + GameVersion.Retail => ("_retail_", "Wow-ARM64.exe", new[] { 9, 10 }, 37862), + GameVersion.Classic => ("_classic_", "WowClassic-arm64.exe", new[] { 2, 3 }, 39926), + GameVersion.ClassicEra => ("_classic_era_", "WowClassic-arm64.exe", new[] { 1 }, 40347), #endif _ => throw new NotImplementedException("Invalid game version specified."), @@ -53,7 +53,7 @@ class Launcher gameBinaryPath = $"{gameFolder}/{BinaryName}"; } - if (!File.Exists(gameBinaryPath) || GetVersionValueFromClient(gameBinaryPath).Major != MajorGameVersion) + if (!File.Exists(gameBinaryPath) || !MajorGameVersion.Contains(GetVersionValueFromClient(gameBinaryPath).Major)) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"[Error] No {gameVersion} client found.");