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