VOID_Core: Moved LabelStyles initializers into their own, run-once function.
VOID_Core: Moved LabelStyles initializers into their own, run-once function.

--- a/VOID_Core.cs
+++ b/VOID_Core.cs
@@ -94,6 +94,8 @@
 		protected int windowBaseID = -96518722;
 		protected int _windowID = 0;
 
+		protected bool GUIStylesLoaded = false;
+
 		protected Dictionary<string, GUIStyle> _LabelStyles = new Dictionary<string, GUIStyle>();
 
 		[AVOID_SaveValue("togglePower")]
@@ -148,11 +150,7 @@
 				{
 				this._windowID = this.windowBaseID;
 				}
-				return this._windowID;
-			}
-			set
-			{
-				this._windowID = value;
+				return this._windowID++;
 			}
 		}
 
@@ -173,19 +171,6 @@
 
 			this.VOIDIconOn = GameDatabase.Instance.GetTexture (this.VOIDIconOnPath, false);
 			this.VOIDIconOff = GameDatabase.Instance.GetTexture (this.VOIDIconOffPath, false);
-
-			this.LabelStyles["center"] = new GUIStyle(GUI.skin.label);
-			this.LabelStyles["center"].normal.textColor = Color.white;
-			this.LabelStyles["center"].alignment = TextAnchor.UpperCenter;
-
-			this.LabelStyles["center_bold"] = new GUIStyle(GUI.skin.label);
-			this.LabelStyles["center_bold"].normal.textColor = Color.white;
-			this.LabelStyles["center_bold"].alignment = TextAnchor.UpperCenter;
-			this.LabelStyles["center_bold"].fontStyle = FontStyle.Bold;
-
-			this.LabelStyles["txt_right"] = new GUIStyle(GUI.skin.label);
-			this.LabelStyles["txt_right"].normal.textColor = Color.white;
-			this.LabelStyles["txt_right"].alignment = TextAnchor.UpperRight;
 
 			this.LoadConfig ();
 		}
@@ -295,6 +280,24 @@
 					this.powerAvailable = false;
 				}
 			}
+		}
+
+		protected void LoadGUIStyles()
+		{
+			this.LabelStyles["center"] = new GUIStyle(GUI.skin.label);
+			this.LabelStyles["center"].normal.textColor = Color.white;
+			this.LabelStyles["center"].alignment = TextAnchor.UpperCenter;
+
+			this.LabelStyles["center_bold"] = new GUIStyle(GUI.skin.label);
+			this.LabelStyles["center_bold"].normal.textColor = Color.white;
+			this.LabelStyles["center_bold"].alignment = TextAnchor.UpperCenter;
+			this.LabelStyles["center_bold"].fontStyle = FontStyle.Bold;
+
+			this.LabelStyles["txt_right"] = new GUIStyle(GUI.skin.label);
+			this.LabelStyles["txt_right"].normal.textColor = Color.white;
+			this.LabelStyles["txt_right"].alignment = TextAnchor.UpperRight;
+
+			this.GUIStylesLoaded = true;
 		}
 
 		public void VOIDMainWindow(int _)
@@ -355,7 +358,14 @@
 				this.LoadModules ();
 			}
 
+			this._windowID = this.windowBaseID;
+
 			GUI.skin = this.Skin;
+
+			if (!this.GUIStylesLoaded)
+			{
+				this.LoadGUIStyles ();
+			}
 
 			this.VOIDIconTexture = this.VOIDIconOff;  //icon off default
 			if (this.togglePower) this.VOIDIconTexture = this.VOIDIconOn;     //or on if power_toggle==true
@@ -369,7 +379,7 @@
 				Rect _mainWindowPos = this.mainWindowPos;
 
 				_mainWindowPos = GUILayout.Window (
-					++this.windowID,
+					this.windowID,
 					_mainWindowPos,
 					this.VOIDMainWindow,
 					string.Join (" ", new string[] {this.VoidName, this.VoidVersion}),
@@ -388,7 +398,7 @@
 				Rect _configWindowPos = this.configWindowPos;
 
 				_configWindowPos = GUILayout.Window (
-					++this.windowID,
+					this.windowID,
 					_configWindowPos,
 					this.VOIDConfigWindow,
 					string.Join (" ", new string[] {this.VoidName, "Configuration"}),

--- a/VOID_HUD.cs
+++ b/VOID_HUD.cs
@@ -32,8 +32,6 @@
 		/*
 		 * Fields
 		 * */
-		protected string _Name = "Heads-Up Display";
-
 		protected new bool _hasConfigurables = true;
 
 		[AVOID_SaveValue("colorIndex")]
@@ -69,6 +67,8 @@
 		 * */
 		public VOID_HUD() : base()
 		{
+			this._Name = "Heads-Up Display";
+
 			this.textColors.Add(Color.green);
 			this.textColors.Add(Color.black);
 			this.textColors.Add(Color.white);