diff --git a/FASTER/App.config b/FASTER/App.config index e0efedb..2a7ac14 100644 --- a/FASTER/App.config +++ b/FASTER/App.config @@ -82,6 +82,9 @@ False + + False + diff --git a/FASTER/FASTER.csproj b/FASTER/FASTER.csproj index 70a663f..1bda8f1 100644 --- a/FASTER/FASTER.csproj +++ b/FASTER/FASTER.csproj @@ -10,7 +10,7 @@ True FASTERKey.snk Keelah Fox, Jupster, Canno.n - 1.9.6.1 + 1.9.6.2 FoxliCorp. Fox's Arma Server Tool Extended Rewrite Copyright © 2019 diff --git a/FASTER/Models/ServerProfile.cs b/FASTER/Models/ServerProfile.cs index cb61afa..c9015a4 100644 --- a/FASTER/Models/ServerProfile.cs +++ b/FASTER/Models/ServerProfile.cs @@ -61,6 +61,7 @@ public class ServerProfile : INotifyPropertyChanged private bool _wsDlcChecked; private bool _speDlcChecked; private bool _rfDlcChecked; + private bool _efDlcChecked; private bool _enableHT = true; private bool _enableRanking; @@ -214,6 +215,16 @@ public bool RFDLCChecked } } + public bool EFDLCChecked + { + get => _efDlcChecked; + set + { + _efDlcChecked = value; + RaisePropertyChanged(nameof(EFDLCChecked)); + } + } + public bool EnableHyperThreading { get => _enableHT; @@ -504,6 +515,10 @@ public string GetDlcAndPlayerMods(string playerMods) { _ = mods.Append($"{playerMods};"); } + if (EFDLCChecked) + { + _ = mods.Append("ef;"); + } return !string.IsNullOrWhiteSpace(mods.ToString()) ? $" \"-mod={mods}\"" : ""; } diff --git a/FASTER/Models/StaticData.cs b/FASTER/Models/StaticData.cs index 5a1e77b..b75104f 100644 --- a/FASTER/Models/StaticData.cs +++ b/FASTER/Models/StaticData.cs @@ -21,6 +21,9 @@ internal static class StaticData "Harkness31", "Ace", "bojothebigman", + "EmPtY.zip", + "OverlordZorn", + "Jupster", }; /// diff --git a/FASTER/Models/SteamUpdaterModel.cs b/FASTER/Models/SteamUpdaterModel.cs index ff6dfc8..0077dd3 100644 --- a/FASTER/Models/SteamUpdaterModel.cs +++ b/FASTER/Models/SteamUpdaterModel.cs @@ -172,6 +172,17 @@ public bool UsingRFDlc } } + public bool UsingEFDlc + { + get => Settings.Default.usingEFDlc; + set + { + Settings.Default.usingEFDlc = value; + Settings.Default.Save(); + RaisePropertyChanged(nameof(UsingEFDlc)); + } + } + public string ApiKey { get => !string.IsNullOrEmpty(Settings.Default.SteamAPIKey) diff --git a/FASTER/Properties/Settings.Designer.cs b/FASTER/Properties/Settings.Designer.cs index 3e73855..2d01c64 100644 --- a/FASTER/Properties/Settings.Designer.cs +++ b/FASTER/Properties/Settings.Designer.cs @@ -382,5 +382,20 @@ public bool usingRFDlc this["usingRFDlc"] = value; } } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool usingEFDlc + { + get + { + return ((bool)(this["usingEFDlc"])); + } + set + { + this["usingEFDlc"] = value; + } + } } } diff --git a/FASTER/Properties/Settings.settings b/FASTER/Properties/Settings.settings index dfefb98..cf92712 100644 --- a/FASTER/Properties/Settings.settings +++ b/FASTER/Properties/Settings.settings @@ -92,5 +92,8 @@ False + + False + diff --git a/FASTER/ViewModel/ProfileViewModel.cs b/FASTER/ViewModel/ProfileViewModel.cs index bfafd88..b9b6f71 100644 --- a/FASTER/ViewModel/ProfileViewModel.cs +++ b/FASTER/ViewModel/ProfileViewModel.cs @@ -391,7 +391,7 @@ internal async Task CopyModKeys() internal async Task ClearModKeys() { - var ignoredKeys = new[] {"a3.bikey", "a3c.bikey", "gm.bikey", "ws.bikey", "csla.bikey", "vn.bikey", "spe.bikey", "rf.bikey" }; + var ignoredKeys = new[] {"a3.bikey", "a3c.bikey", "gm.bikey", "ws.bikey", "csla.bikey", "vn.bikey", "spe.bikey", "rf.bikey", "ef.bikey" }; if (Directory.Exists(Path.Combine(Profile.ArmaPath, "keys"))) { foreach (var keyFile in Directory.GetFiles(Path.Combine(Profile.ArmaPath, "keys"))) diff --git a/FASTER/ViewModel/SteamUpdaterViewModel.cs b/FASTER/ViewModel/SteamUpdaterViewModel.cs index 1200fda..ee740d8 100644 --- a/FASTER/ViewModel/SteamUpdaterViewModel.cs +++ b/FASTER/ViewModel/SteamUpdaterViewModel.cs @@ -133,7 +133,7 @@ public async Task UpdateClick() Analytics.TrackEvent("Updater - Clicked Update", new Dictionary { {"Name", Properties.Settings.Default.steamUserName}, - {"DLCs", $"{(Parameters.UsingGMDlc ? "GM " : "")}{(Parameters.UsingCSLADlc? "CSLA " : "")}{(Parameters.UsingPFDlc ? "SOG " : "")}{(Parameters.UsingWSDlc ? "WS " : "")}{(Parameters.UsingSPEDlc ? "SPE " : "")}{(Parameters.UsingRFDlc ? "RF " : "")}"}, + {"DLCs", $"{(Parameters.UsingGMDlc ? "GM " : "")}{(Parameters.UsingCSLADlc? "CSLA " : "")}{(Parameters.UsingPFDlc ? "SOG " : "")}{(Parameters.UsingWSDlc ? "WS " : "")}{(Parameters.UsingSPEDlc ? "SPE " : "")}{(Parameters.UsingRFDlc ? "RF " : "")}{(Parameters.UsingEFDlc ? "EF " : "")}"}, {"Branch", $"{(Parameters.UsingPerfBinaries? "Profiling" : "Public")}"} }); @@ -156,6 +156,7 @@ public async Task UpdateClick() {233794, "Arma 3 Server Creator DLC - SOGPF"}, {233795, "Arma 3 Server Creator DLC - WS"}, {233799, "Arma 3 Server Creator DLC - RF"}, + {233798, "Arma 3 Server Creator DLC - EF"}, }; //IReadOnlyList depotsList; @@ -257,6 +258,15 @@ public async Task UpdateClick() null)); } + if (Parameters.UsingEFDlc) + { + Parameters.Output += "\nChecking Arma 3 Server Creator DLC - EF..."; + depotsDownload.Add(( + depotsIDs.FirstOrDefault(d => d.Value == "Arma 3 Server Creator DLC - EF").Key, + "creatordlc", + null)); + } + await RunServerUpdater(Parameters.InstallDirectory, appId, depotsDownload); Parameters.Output += "\n\nAll Done ! "; diff --git a/FASTER/Views/Profile.xaml b/FASTER/Views/Profile.xaml index 2caeeeb..b5add5f 100644 --- a/FASTER/Views/Profile.xaml +++ b/FASTER/Views/Profile.xaml @@ -71,6 +71,7 @@ + @@ -114,6 +115,7 @@ + --> diff --git a/FASTER/Views/Updater.xaml b/FASTER/Views/Updater.xaml index 314599c..caaa5d0 100644 --- a/FASTER/Views/Updater.xaml +++ b/FASTER/Views/Updater.xaml @@ -119,7 +119,9 @@ + Margin="10,3" HorizontalAlignment="Left"/> +