diff --git a/assets/HistoryEdition.zip b/assets/HistoryEdition.zip
new file mode 100644
index 0000000..71ed352
Binary files /dev/null and b/assets/HistoryEdition.zip differ
diff --git a/src/CommunityPatchLauncher/CommunityPatchLauncher.csproj b/src/CommunityPatchLauncher/CommunityPatchLauncher.csproj
index a6d5723..d92e8bf 100644
--- a/src/CommunityPatchLauncher/CommunityPatchLauncher.csproj
+++ b/src/CommunityPatchLauncher/CommunityPatchLauncher.csproj
@@ -40,6 +40,7 @@
s4communitypatch.ico
+ ..\..\packages\FontAwesome.WPF.4.7.0.9\lib\net40\FontAwesome.WPF.dll
diff --git a/src/CommunityPatchLauncher/Properties/Resources.Designer.cs b/src/CommunityPatchLauncher/Properties/Resources.Designer.cs
index bf517a2..faf7a15 100644
--- a/src/CommunityPatchLauncher/Properties/Resources.Designer.cs
+++ b/src/CommunityPatchLauncher/Properties/Resources.Designer.cs
@@ -1,10 +1,10 @@
//------------------------------------------------------------------------------
//
-// Dieser Code wurde von einem Tool generiert.
-// Laufzeitversion:4.0.30319.42000
+// This code was generated by a tool.
+// Runtime Version:4.0.30319.42000
//
-// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
-// der Code erneut generiert wird.
+// Changes to this file may cause incorrect behavior and will be lost if
+// the code is regenerated.
//
//------------------------------------------------------------------------------
@@ -13,13 +13,13 @@ namespace CommunityPatchLauncher.Properties {
///
- /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw.
+ /// A strongly-typed resource class, for looking up localized strings, etc.
///
- // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert
- // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert.
- // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen
- // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu.
- [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
+ // This class was auto-generated by the StronglyTypedResourceBuilder
+ // class via a tool like ResGen or Visual Studio.
+ // To add or remove a member, edit your .ResX file then rerun ResGen
+ // with the /str option, or rebuild your VS project.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Resources {
@@ -33,7 +33,7 @@ internal Resources() {
}
///
- /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird.
+ /// Returns the cached ResourceManager instance used by this class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Resources.ResourceManager ResourceManager {
@@ -47,8 +47,8 @@ internal Resources() {
}
///
- /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle
- /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden.
+ /// Overrides the current thread's CurrentUICulture property for all
+ /// resource lookups using this strongly typed resource class.
///
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
public static global::System.Globalization.CultureInfo Culture {
@@ -61,7 +61,7 @@ internal Resources() {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Abort ähnelt.
+ /// Looks up a localized string similar to Abort.
///
public static string Default_Abort {
get {
@@ -70,7 +70,7 @@ public static string Default_Abort {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Coming soon ähnelt.
+ /// Looks up a localized string similar to Coming soon.
///
public static string Default_ComingSoon {
get {
@@ -79,7 +79,7 @@ public static string Default_ComingSoon {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die The folder is not empty ähnelt.
+ /// Looks up a localized string similar to The folder is not empty.
///
public static string Default_FolderIsNotEmpty {
get {
@@ -88,7 +88,7 @@ public static string Default_FolderIsNotEmpty {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die The selected folder is not valid ähnelt.
+ /// Looks up a localized string similar to The selected folder is not valid.
///
public static string Default_FolderSelectionError {
get {
@@ -97,7 +97,7 @@ public static string Default_FolderSelectionError {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Language: ähnelt.
+ /// Looks up a localized string similar to Language:.
///
public static string Default_LanguageLabel {
get {
@@ -106,7 +106,7 @@ public static string Default_LanguageLabel {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Polish ähnelt.
+ /// Looks up a localized string similar to Polish.
///
public static string Default_LanguagePl {
get {
@@ -115,7 +115,7 @@ public static string Default_LanguagePl {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die No ähnelt.
+ /// Looks up a localized string similar to No.
///
public static string Default_No {
get {
@@ -124,7 +124,7 @@ public static string Default_No {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die The selected folder does not contain the Settlers 4 History Edition ähnelt.
+ /// Looks up a localized string similar to The selected folder does not contain the Settlers 4 History Edition.
///
public static string Default_NotTheSettlerFolder {
get {
@@ -133,7 +133,7 @@ public static string Default_NotTheSettlerFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Ok ähnelt.
+ /// Looks up a localized string similar to Ok.
///
public static string Default_Ok {
get {
@@ -142,7 +142,7 @@ public static string Default_Ok {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Save ähnelt.
+ /// Looks up a localized string similar to Save.
///
public static string Default_Save {
get {
@@ -151,7 +151,7 @@ public static string Default_Save {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Update Application ähnelt.
+ /// Looks up a localized string similar to Update Application.
///
public static string Default_UpdateApplication {
get {
@@ -160,7 +160,7 @@ public static string Default_UpdateApplication {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Yes ähnelt.
+ /// Looks up a localized string similar to Yes.
///
public static string Default_Yes {
get {
@@ -169,7 +169,7 @@ public static string Default_Yes {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Newest unstable ähnelt.
+ /// Looks up a localized string similar to Newest unstable.
///
public static string Develop {
get {
@@ -178,7 +178,7 @@ public static string Develop {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Could not find any builds on the given branch ähnelt.
+ /// Looks up a localized string similar to Could not find any builds on the given branch.
///
public static string Dialog_GetRemoteNoBuildsFound {
get {
@@ -187,7 +187,7 @@ public static string Dialog_GetRemoteNoBuildsFound {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Seems like there was a timeout or you did lost the Internet connection ähnelt.
+ /// Looks up a localized string similar to Seems like there was a timeout or you did lost the Internet connection.
///
public static string Dialog_GetRemoteTimeout {
get {
@@ -196,9 +196,9 @@ public static string Dialog_GetRemoteTimeout {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die There was an error while getting the remote version
+ /// Looks up a localized string similar to There was an error while getting the remote version
///
- ///{exception} ähnelt.
+ ///{exception}.
///
public static string Dialog_GetRemoteVersionError {
get {
@@ -207,7 +207,7 @@ public static string Dialog_GetRemoteVersionError {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Update information ähnelt.
+ /// Looks up a localized string similar to Update information.
///
public static string Dialog_UpdateInformationTitle {
get {
@@ -216,7 +216,7 @@ public static string Dialog_UpdateInformationTitle {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Problem while trying to update ähnelt.
+ /// Looks up a localized string similar to Problem while trying to update.
///
public static string Dialog_UpdateProblemTitle {
get {
@@ -225,7 +225,7 @@ public static string Dialog_UpdateProblemTitle {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Do you want to upgrade? ähnelt.
+ /// Looks up a localized string similar to Do you want to upgrade?.
///
public static string Dialog_UpgradeTitle {
get {
@@ -234,7 +234,7 @@ public static string Dialog_UpgradeTitle {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die The Document was loaded from cache ähnelt.
+ /// Looks up a localized string similar to The Document was loaded from cache.
///
public static string DocumentCacheNotice {
get {
@@ -243,7 +243,25 @@ public static string DocumentCacheNotice {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die About ähnelt.
+ /// Looks up a localized string similar to Download or installation was aborted by user!.
+ ///
+ public static string Download_United_Aborted {
+ get {
+ return ResourceManager.GetString("Download_United_Aborted", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Download the update ....
+ ///
+ public static string Download_United_Update {
+ get {
+ return ResourceManager.GetString("Download_United_Update", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to About.
///
public static string MainWindow_About {
get {
@@ -252,7 +270,7 @@ public static string MainWindow_About {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Changelog ähnelt.
+ /// Looks up a localized string similar to Changelog.
///
public static string MainWindow_Changelog {
get {
@@ -261,7 +279,7 @@ public static string MainWindow_Changelog {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Chat ähnelt.
+ /// Looks up a localized string similar to Chat.
///
public static string MainWindow_Chat {
get {
@@ -270,7 +288,7 @@ public static string MainWindow_Chat {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Disclaimer ähnelt.
+ /// Looks up a localized string similar to Disclaimer.
///
public static string MainWindow_Disclaimer {
get {
@@ -279,7 +297,7 @@ public static string MainWindow_Disclaimer {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Editor ähnelt.
+ /// Looks up a localized string similar to Editor.
///
public static string MainWindow_Editor {
get {
@@ -288,7 +306,7 @@ public static string MainWindow_Editor {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die FAQ ähnelt.
+ /// Looks up a localized string similar to FAQ.
///
public static string MainWindow_FAQ {
get {
@@ -297,7 +315,7 @@ public static string MainWindow_FAQ {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die HD Patch ähnelt.
+ /// Looks up a localized string similar to HD Patch.
///
public static string MainWindow_HDPatchCategory {
get {
@@ -306,7 +324,7 @@ public static string MainWindow_HDPatchCategory {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Help ähnelt.
+ /// Looks up a localized string similar to Help.
///
public static string MainWindow_Help {
get {
@@ -315,7 +333,7 @@ public static string MainWindow_Help {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Home ähnelt.
+ /// Looks up a localized string similar to Home.
///
public static string MainWindow_Home {
get {
@@ -324,7 +342,7 @@ public static string MainWindow_Home {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Intellectual property ähnelt.
+ /// Looks up a localized string similar to Intellectual property.
///
public static string MainWindow_IntellectualProperty {
get {
@@ -333,7 +351,7 @@ public static string MainWindow_IntellectualProperty {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die License ähnelt.
+ /// Looks up a localized string similar to License.
///
public static string MainWindow_License {
get {
@@ -342,7 +360,7 @@ public static string MainWindow_License {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Maps ähnelt.
+ /// Looks up a localized string similar to Maps.
///
public static string MainWindow_Maps {
get {
@@ -351,7 +369,7 @@ public static string MainWindow_Maps {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Mods ähnelt.
+ /// Looks up a localized string similar to Mods.
///
public static string MainWindow_Mods {
get {
@@ -360,7 +378,7 @@ public static string MainWindow_Mods {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Multiplayer ähnelt.
+ /// Looks up a localized string similar to Multiplayer.
///
public static string MainWindow_Multiplayer {
get {
@@ -369,7 +387,7 @@ public static string MainWindow_Multiplayer {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die News ähnelt.
+ /// Looks up a localized string similar to News.
///
public static string MainWindow_News {
get {
@@ -378,7 +396,7 @@ public static string MainWindow_News {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Open User Map Folder ähnelt.
+ /// Looks up a localized string similar to Open User Map Folder.
///
public static string MainWindow_OpenMPMapFolder {
get {
@@ -387,7 +405,7 @@ public static string MainWindow_OpenMPMapFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Play ähnelt.
+ /// Looks up a localized string similar to Play.
///
public static string MainWindow_Play {
get {
@@ -396,7 +414,7 @@ public static string MainWindow_Play {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Search players ähnelt.
+ /// Looks up a localized string similar to Search players.
///
public static string MainWindow_PlayerSearch {
get {
@@ -405,7 +423,7 @@ public static string MainWindow_PlayerSearch {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Ranked ähnelt.
+ /// Looks up a localized string similar to Ranked.
///
public static string MainWindow_Ranked {
get {
@@ -414,7 +432,7 @@ public static string MainWindow_Ranked {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Report issue ähnelt.
+ /// Looks up a localized string similar to Report issue.
///
public static string MainWindow_ReportIssue {
get {
@@ -423,7 +441,7 @@ public static string MainWindow_ReportIssue {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Open Savefolder ähnelt.
+ /// Looks up a localized string similar to Open Savefolder.
///
public static string MainWindow_SaveFolder {
get {
@@ -432,7 +450,7 @@ public static string MainWindow_SaveFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Settings ähnelt.
+ /// Looks up a localized string similar to Settings.
///
public static string MainWindow_Settings {
get {
@@ -441,7 +459,7 @@ public static string MainWindow_Settings {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die S4 HE Config ähnelt.
+ /// Looks up a localized string similar to S4 HE Config.
///
public static string MainWindow_SettlersConfig {
get {
@@ -450,7 +468,7 @@ public static string MainWindow_SettlersConfig {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Social Media ähnelt.
+ /// Looks up a localized string similar to Social Media.
///
public static string MainWindow_SocialMedia {
get {
@@ -459,7 +477,7 @@ public static string MainWindow_SocialMedia {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Settle ähnelt.
+ /// Looks up a localized string similar to Settle.
///
public static string MainWindow_StartSettle {
get {
@@ -468,7 +486,7 @@ public static string MainWindow_StartSettle {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Team ähnelt.
+ /// Looks up a localized string similar to Team.
///
public static string MainWindow_Team {
get {
@@ -477,7 +495,7 @@ public static string MainWindow_Team {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Texture Changer ähnelt.
+ /// Looks up a localized string similar to Texture Changer.
///
public static string MainWindow_TextureChanger {
get {
@@ -486,7 +504,7 @@ public static string MainWindow_TextureChanger {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Community Patch Launcher ähnelt.
+ /// Looks up a localized string similar to Community Patch Launcher.
///
public static string MainWindow_Title {
get {
@@ -495,7 +513,7 @@ public static string MainWindow_Title {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Tools ähnelt.
+ /// Looks up a localized string similar to Tools.
///
public static string MainWindow_Tools {
get {
@@ -504,7 +522,7 @@ public static string MainWindow_Tools {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Your local version is newer or up to date ähnelt.
+ /// Looks up a localized string similar to Your local version is newer or up to date.
///
public static string Message_LocalVersionIsNewer {
get {
@@ -513,10 +531,10 @@ public static string Message_LocalVersionIsNewer {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Remote version is newer do you want to upgrade?
+ /// Looks up a localized string similar to Remote version is newer do you want to upgrade?
///
///Local version: {localVersion}
- ///Remote version: {remoteVersion} ähnelt.
+ ///Remote version: {remoteVersion}.
///
public static string Message_Update {
get {
@@ -525,9 +543,9 @@ public static string Message_Update {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Could not get local or remote version!
+ /// Looks up a localized string similar to Could not get local or remote version!
///
- ///Is your computer offline? ähnelt.
+ ///Is your computer offline?.
///
public static string Message_VersionUpdateWarning {
get {
@@ -536,7 +554,7 @@ public static string Message_VersionUpdateWarning {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Download all the patches for the offline mode ähnelt.
+ /// Looks up a localized string similar to Download all the patches for the offline mode.
///
public static string PlayControl_DownloadAllPatchesTooltip {
get {
@@ -545,7 +563,7 @@ public static string PlayControl_DownloadAllPatchesTooltip {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Fast Speed (2) ähnelt.
+ /// Looks up a localized string similar to Fast Speed (2).
///
public static string PlayControl_FastSpeed {
get {
@@ -554,7 +572,7 @@ public static string PlayControl_FastSpeed {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Launch game ähnelt.
+ /// Looks up a localized string similar to Launch game.
///
public static string PlayControl_Launch {
get {
@@ -563,7 +581,7 @@ public static string PlayControl_Launch {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Normal Speed (1) ähnelt.
+ /// Looks up a localized string similar to Normal Speed (1).
///
public static string PlayControl_NormalSpeed {
get {
@@ -572,7 +590,7 @@ public static string PlayControl_NormalSpeed {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Testing Speed (60) ähnelt.
+ /// Looks up a localized string similar to Testing Speed (60).
///
public static string PlayControl_TestingSpeed {
get {
@@ -581,7 +599,7 @@ public static string PlayControl_TestingSpeed {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Very Fast Speed (3) ähnelt.
+ /// Looks up a localized string similar to Very Fast Speed (3).
///
public static string PlayControl_VeryFastSpeed {
get {
@@ -590,7 +608,7 @@ public static string PlayControl_VeryFastSpeed {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Release ähnelt.
+ /// Looks up a localized string similar to Release.
///
public static string Release {
get {
@@ -599,7 +617,7 @@ public static string Release {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Custom size ähnelt.
+ /// Looks up a localized string similar to Custom size.
///
public static string ResizeWindow_CustomSize {
get {
@@ -608,7 +626,7 @@ public static string ResizeWindow_CustomSize {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Enter window height ähnelt.
+ /// Looks up a localized string similar to Enter window height.
///
public static string ResizeWindow_HeightTooltip {
get {
@@ -617,7 +635,7 @@ public static string ResizeWindow_HeightTooltip {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Enter new size ähnelt.
+ /// Looks up a localized string similar to Enter new size.
///
public static string ResizeWindow_NewSize {
get {
@@ -626,7 +644,7 @@ public static string ResizeWindow_NewSize {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Select new size: ähnelt.
+ /// Looks up a localized string similar to Select new size:.
///
public static string ResizeWindow_SelectNewSize {
get {
@@ -635,7 +653,7 @@ public static string ResizeWindow_SelectNewSize {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Resize Window ähnelt.
+ /// Looks up a localized string similar to Resize Window.
///
public static string ResizeWindow_Title {
get {
@@ -644,7 +662,7 @@ public static string ResizeWindow_Title {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Enter window width ähnelt.
+ /// Looks up a localized string similar to Enter window width.
///
public static string ResizeWindow_WidthTooltip {
get {
@@ -653,7 +671,16 @@ public static string ResizeWindow_WidthTooltip {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Minimize launcher on game start ähnelt.
+ /// Looks up a localized string similar to Upgrade to Settlers United (Beta).
+ ///
+ public static string Setters_United_Beta {
+ get {
+ return ResourceManager.GetString("Setters_United_Beta", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to Minimize launcher on game start.
///
public static string SettingsWindow_MinimizeOnGameStart {
get {
@@ -662,7 +689,7 @@ public static string SettingsWindow_MinimizeOnGameStart {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Update Branch: ähnelt.
+ /// Looks up a localized string similar to Update Branch:.
///
public static string SettingsWindow_UpdateBranch {
get {
@@ -671,7 +698,7 @@ public static string SettingsWindow_UpdateBranch {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Check for update on Startup ähnelt.
+ /// Looks up a localized string similar to Check for update on Startup.
///
public static string SettingWindow_CheckForUpdateOnStartup {
get {
@@ -680,7 +707,7 @@ public static string SettingWindow_CheckForUpdateOnStartup {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Download folder: ähnelt.
+ /// Looks up a localized string similar to Download folder:.
///
public static string SettingWindow_DownloadFolder {
get {
@@ -689,7 +716,7 @@ public static string SettingWindow_DownloadFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Open download folder ähnelt.
+ /// Looks up a localized string similar to Open download folder.
///
public static string SettingWindow_OpenDownloadFolder {
get {
@@ -698,7 +725,7 @@ public static string SettingWindow_OpenDownloadFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Open game folder ähnelt.
+ /// Looks up a localized string similar to Open game folder.
///
public static string SettingWindow_OpenGameFolder {
get {
@@ -707,7 +734,7 @@ public static string SettingWindow_OpenGameFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Open setting folder ähnelt.
+ /// Looks up a localized string similar to Open setting folder.
///
public static string SettingWindow_OpenSettingFolder {
get {
@@ -716,7 +743,7 @@ public static string SettingWindow_OpenSettingFolder {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Reset agreement ähnelt.
+ /// Looks up a localized string similar to Reset agreement.
///
public static string SettingWindow_ResetAgreement {
get {
@@ -725,7 +752,17 @@ public static string SettingWindow_ResetAgreement {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die I did read the agreement ähnelt.
+ /// Looks up a localized string similar to Note: Please patch to History Edition first.
+ ///The Community Balance Patch can be reactivated in Settlers United (in the game itself) afterwards..
+ ///
+ public static string Upgrade_Note {
+ get {
+ return ResourceManager.GetString("Upgrade_Note", resourceCulture);
+ }
+ }
+
+ ///
+ /// Looks up a localized string similar to I did read the agreement.
///
public static string WelcomeWindow_Agree {
get {
@@ -734,7 +771,7 @@ public static string WelcomeWindow_Agree {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Auto detect ähnelt.
+ /// Looks up a localized string similar to Auto detect.
///
public static string WelcomeWindow_AutoDetect {
get {
@@ -743,7 +780,7 @@ public static string WelcomeWindow_AutoDetect {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die ... ähnelt.
+ /// Looks up a localized string similar to ....
///
public static string WelcomeWindow_ManuelSelection {
get {
@@ -752,7 +789,7 @@ public static string WelcomeWindow_ManuelSelection {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Agreement ähnelt.
+ /// Looks up a localized string similar to Agreement.
///
public static string WelcomeWindow_TextBox {
get {
@@ -761,7 +798,7 @@ public static string WelcomeWindow_TextBox {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Welcome ähnelt.
+ /// Looks up a localized string similar to Welcome.
///
public static string WelcomeWindow_Title {
get {
@@ -770,7 +807,7 @@ public static string WelcomeWindow_Title {
}
///
- /// Sucht eine lokalisierte Zeichenfolge, die Game folder: ähnelt.
+ /// Looks up a localized string similar to Game folder:.
///
public static string WelcomWindow_GameFolder {
get {
diff --git a/src/CommunityPatchLauncher/Properties/Resources.de-DE.resx b/src/CommunityPatchLauncher/Properties/Resources.de-DE.resx
index 5518396..ade7d7f 100644
--- a/src/CommunityPatchLauncher/Properties/Resources.de-DE.resx
+++ b/src/CommunityPatchLauncher/Properties/Resources.de-DE.resx
@@ -165,6 +165,12 @@
Der Ordner ist nicht leer
+
+ Der Download oder die installation wurde durch den Bnutzer abgebrochen
+
+
+ Herunterladen des Updates...
+
Englisch
@@ -279,6 +285,9 @@ Remote version: {remoteVersion}
Fenster breite eintragen
+
+ Upgrade auf Settlers United (Beta)
+
Launcher beim Spielstart minimieren
@@ -303,6 +312,9 @@ Remote version: {remoteVersion}
Vereinbarung zurücksetzten
+
+ Hinweis: Bitte vorher auf History Edition patchen. Der Community Balance Patch kann anschließend in Settlers United (im Spiel selbst) wieder aktiviert werden
+
Ich habe die Vereinbarung gelesen
diff --git a/src/CommunityPatchLauncher/Properties/Resources.resx b/src/CommunityPatchLauncher/Properties/Resources.resx
index 3c75878..20a41a7 100644
--- a/src/CommunityPatchLauncher/Properties/Resources.resx
+++ b/src/CommunityPatchLauncher/Properties/Resources.resx
@@ -179,6 +179,12 @@
The Document was loaded from cache
+
+ Download or installation was aborted by user!
+
+
+ Download the update ...
+
About
@@ -319,6 +325,9 @@ Is your computer offline?
Enter window width
+
+ Upgrade to Settlers United (Beta)
+
Minimize launcher on game start
@@ -343,6 +352,10 @@ Is your computer offline?
Reset agreement
+
+ Note: Please patch to History Edition first.
+The Community Balance Patch can be reactivated in Settlers United (in the game itself) afterwards.
+
I did read the agreement
diff --git a/src/CommunityPatchLauncher/Windows/MainWindow.xaml b/src/CommunityPatchLauncher/Windows/MainWindow.xaml
index ab2e7e7..5f59671 100644
--- a/src/CommunityPatchLauncher/Windows/MainWindow.xaml
+++ b/src/CommunityPatchLauncher/Windows/MainWindow.xaml
@@ -5,10 +5,14 @@
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:CommunityPatchLauncher"
xmlns:uC="clr-namespace:CommunityPatchLauncher.UserControls"
- xmlns:p = "clr-namespace:CommunityPatchLauncher.Properties"
+ xmlns:p="clr-namespace:CommunityPatchLauncher.Properties"
xmlns:fa="http://schemas.fontawesome.io/icons/"
mc:Ignorable="d"
- Width="1024" Height="768" MinWidth="800" MinHeight="600" Title="{x:Static p:Resources.MainWindow_Title}">
+ Width="1024"
+ Height="768"
+ MinWidth="800"
+ MinHeight="600"
+ Title="{x:Static p:Resources.MainWindow_Title}">
@@ -19,181 +23,313 @@
-
-
+
+
-
-
+
+
-
+
-
-
+
+
+
+
+
-
-
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/CommunityPatchLauncher/Windows/MainWindow.xaml.cs b/src/CommunityPatchLauncher/Windows/MainWindow.xaml.cs
index e6c4aad..61d6a36 100644
--- a/src/CommunityPatchLauncher/Windows/MainWindow.xaml.cs
+++ b/src/CommunityPatchLauncher/Windows/MainWindow.xaml.cs
@@ -1,6 +1,18 @@
using CommunityPatchLauncher.ViewModels;
+using System;
+using System.ComponentModel;
+using System.Diagnostics;
+using System.Net;
using System.Windows;
+using CommunityPatchLauncher.ViewModels;
+using System.IO.Compression;
+using System.Threading.Tasks;
+using System.IO;
+using CommunityPatchLauncherFramework.Settings.Manager;
+using Microsoft.Win32;
+using System.Windows.Controls;
+
namespace CommunityPatchLauncher.Windows
{
///
@@ -8,6 +20,13 @@ namespace CommunityPatchLauncher.Windows
///
public partial class MainWindow : Window
{
+
+ ///
+ /// The setting manager to use
+ ///
+ protected SettingManager settingManager;
+
+
///
/// Create a new main window
///
@@ -16,5 +35,148 @@ public MainWindow()
InitializeComponent();
this.DataContext = new MainWindowModel(this);
}
- }
+
+
+
+ #region Downloader
+ private void UpgradetoSettlersUnited(object sender, RoutedEventArgs e)
+ {
+ Task upgradeTask = UpgradetoSettlersUnited();
+ if (sender is Button button)
+ {
+ button.IsEnabled = false;
+ upgradeTask.ContinueWith(_ => Dispatcher.Invoke(() => button.IsEnabled = true));
+ }
+ }
+ private async Task UpgradetoSettlersUnited()
+ {
+ await ZipInstallerAsync();
+ string URI = "https://files.settlers-united.com/Settlers-United.exe";
+ DownloadFileAsync(URI, "SettlersUnitedSetup.exe", Properties.Resources.Setters_United_Beta, true);
+ }
+ private void DownloadFileAsync(string URI, string File, string Name, bool SettlersUnited = false)
+ {
+ DownlaodPanel.Visibility = Visibility.Visible;
+ DownlaodLabel.Content = Properties.Resources.Download_United_Update + Environment.NewLine + Name;
+
+ try
+ {
+ using (WebClient wc = new WebClient())
+ {
+ wc.DownloadProgressChanged += DownloadProgressChanged;
+ wc.DownloadFileCompleted += DownloadFileEventCompletedUnited;
+ wc.DownloadFileAsync(new Uri(URI), File);
+ }
+ }
+ catch (Exception)
+ {
+ }
+
+
+ }
+
+
+ private void DownloadFileEventCompletedUnited(object sender, AsyncCompletedEventArgs e)
+ {
+ //ToDo Install first HE!!! @Leonards05 | Pumpline#5578
+
+ var startInfo = new ProcessStartInfo
+ {
+ FileName = "SettlersUnitedSetup.exe",
+
+ Verb = "runas"
+ };
+ try
+ {
+ Process.Start(startInfo);
+ Environment.Exit(0);
+ }
+ catch (Exception)
+ {
+ DownlaodLabel.Content = Properties.Resources.Download_United_Aborted;
+ }
+ finally
+ {
+ if (sender is Button button)
+ {
+ button.IsEnabled = true;
+ }
+ }
+ }
+
+ private void DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
+ {
+ DownlaodPanel.Visibility = Visibility.Visible;
+ ProgressBar.Value = e.ProgressPercentage;
+ }
+ #endregion
+
+ #region ZIPworker
+
+ public async Task ZipInstallerAsync()
+ {
+ string zipFilePath = @"assets\HistoryEdition.zip";
+
+ string InstallPath = (string)Registry.GetValue(@"HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Ubisoft\Launcher\Installs\11785", "InstallDir", null);
+
+ using (ZipArchive archive = await Task.Run(() => ZipFile.OpenRead(zipFilePath)))
+ {
+ foreach (ZipArchiveEntry entry in archive.Entries)
+ {
+ string completeFileName = Path.Combine(InstallPath, entry.FullName);
+ string directory = Path.GetDirectoryName(completeFileName);
+
+ if (!Directory.Exists(directory))
+ {
+ Directory.CreateDirectory(directory);
+ }
+ try
+ {
+ if (entry.FullName.EndsWith(@".map", StringComparison.OrdinalIgnoreCase))
+ {
+ if (!File.Exists(InstallPath + completeFileName))
+ {
+ if (!entry.FullName.EndsWith(@"/", StringComparison.OrdinalIgnoreCase))
+ {
+ await Task.Run(() => entry.ExtractToFile(completeFileName, true));
+ }
+ }
+ else if (!File.Equals(InstallPath + completeFileName, entry))
+ {
+
+ if (!entry.FullName.EndsWith(@"/", StringComparison.OrdinalIgnoreCase))
+ {
+ await Task.Run(() => entry.ExtractToFile(completeFileName, true));
+ }
+ }
+ }
+ else
+ {
+ if (!entry.FullName.EndsWith(@"/", StringComparison.OrdinalIgnoreCase))
+ {
+ await Task.Run(() =>
+ {
+ try
+ {
+ entry.ExtractToFile(completeFileName, true);
+ }
+ catch
+ {
+ MessageBox.Show("Error", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
+ Environment.Exit(0);
+ }
+ });
+ }
+ }
+
+ }
+ catch (Exception)
+ {
+ }
+ }
+ }
+ }
+
+ #endregion
+ }
}