diff --git a/data/GraphicsInterpreter.cs b/data/GraphicsInterpreter.cs index 18e64dc..1d6cbc6 100644 --- a/data/GraphicsInterpreter.cs +++ b/data/GraphicsInterpreter.cs @@ -38,6 +38,11 @@ public string interpretGraphics(string lineToCheck, bool read, int switchCase) } else { + if (Graphics.getLanguage() == "nochange") + { + return lineToCheck; + } + lineToCheck = "Language=" + Graphics.getLanguage(); } diff --git a/data/GraphicsWriter.cs b/data/GraphicsWriter.cs index 2f1f50f..1dfa2bc 100644 --- a/data/GraphicsWriter.cs +++ b/data/GraphicsWriter.cs @@ -89,6 +89,10 @@ private static void setLang() case 4: Graphics.setLanguage("esn"); break; + + default: + Graphics.setLanguage("nochange"); + break; } logger.Debug("setLang - set language to {0}", Graphics.getLanguage()); diff --git a/data/GuiInitializer.cs b/data/GuiInitializer.cs index 2aaf1d1..24c0148 100644 --- a/data/GuiInitializer.cs +++ b/data/GuiInitializer.cs @@ -96,29 +96,30 @@ public void init() private static void initLang() { - if (Graphics.getLanguage().Equals("int")) + switch (Graphics.getLanguage()) { - Program.Client.langBox.SelectedIndex = 0; - } + case "int": + Program.Client.langBox.SelectedIndex = 0; + break; - if (Graphics.getLanguage().Equals("deu")) - { - Program.Client.langBox.SelectedIndex = 1; - } + case "deu": + Program.Client.langBox.SelectedIndex = 1; + break; - if (Graphics.getLanguage().Equals("fra")) - { - Program.Client.langBox.SelectedIndex = 2; - } + case "fra": + Program.Client.langBox.SelectedIndex = 2; + break; - if (Graphics.getLanguage().Equals("ita")) - { - Program.Client.langBox.SelectedIndex = 3; - } + case "ita": + Program.Client.langBox.SelectedIndex = 3; + break; - if (Graphics.getLanguage().Equals("esn")) - { - Program.Client.langBox.SelectedIndex = 4; + case "esn": + Program.Client.langBox.SelectedIndex = 4; + break; + default: + Program.Client.langBox.SelectedIndex = Program.Client.langBox.Items.Add("Unofficial"); + break; } logger.Debug("initLang - initialized language as {0}", Graphics.getLanguage()); diff --git a/ui/BmLauncherForm.Designer.cs b/ui/BmLauncherForm.Designer.cs index cb9ffff..98ee0c9 100644 --- a/ui/BmLauncherForm.Designer.cs +++ b/ui/BmLauncherForm.Designer.cs @@ -264,7 +264,9 @@ private void InitializeComponent() this.langBox.Name = "langBox"; this.langBox.Size = new System.Drawing.Size(110, 23); this.langBox.TabIndex = 37; - this.basicToolTip.SetToolTip(this.langBox, "Sets the voice & text language in the game."); + this.basicToolTip.SetToolTip(this.langBox, "Sets the voice & text language in the game.\r\n\r\nIf you have an unofficial language" + + " patch installed, it most likely replaces \'English\'.\r\nOtherwise, \'Unofficial\' sh" + + "ould be selected automatically.\r\n"); this.langBox.SelectedIndexChanged += new System.EventHandler(this.langBox_SelectedIndexChanged); // // langLabel @@ -276,7 +278,9 @@ private void InitializeComponent() this.langLabel.Size = new System.Drawing.Size(62, 15); this.langLabel.TabIndex = 36; this.langLabel.Text = "Language:"; - this.basicToolTip.SetToolTip(this.langLabel, "Sets the voice & text language in the game.\r\n"); + this.basicToolTip.SetToolTip(this.langLabel, "Sets the voice & text language in the game.\r\n\r\nIf you have an unofficial language" + + " patch installed, it most likely replaces \'English\'.\r\nOtherwise, \'Unofficial\' sh" + + "ould be selected automatically.\r\n\r\n"); // // maxSmoothTextBox // diff --git a/ui/BmLauncherForm.cs b/ui/BmLauncherForm.cs index b510ca9..2a55838 100644 --- a/ui/BmLauncherForm.cs +++ b/ui/BmLauncherForm.cs @@ -94,6 +94,17 @@ private void keyButton_Click(object sender, EventArgs e) private void applyButton_Click(object sender, EventArgs e) { Program.MyFactory.writeGraphFile(); + if (langBox.SelectedIndex != 5) + { + try + { + langBox.Items.RemoveAt(5); + } + catch (ArgumentOutOfRangeException) + { + } + } + applyButton.Enabled = false; ChangedConfig = false; } diff --git a/ui/BmLauncherForm.resx b/ui/BmLauncherForm.resx index b59c592..818e5fe 100644 --- a/ui/BmLauncherForm.resx +++ b/ui/BmLauncherForm.resx @@ -120,6 +120,9 @@ 14, 19 + + 14, 19 + Works like a framerate limiter. The value should be the refresh rate of your screen. @@ -182,6 +185,15 @@ Breakable tiles, realistic paper simulation, advanced smoke effects. + + 119, 22 + + + 238, 25 + + + 354, 25 + 79