Quick 1.2 compatibility.
Quick 1.2 compatibility.

--- a/API/VOIDCore.cs
+++ b/API/VOIDCore.cs
@@ -80,7 +80,7 @@
 
 		public virtual float saveTimer { get; protected set; }
 
-		public abstract GUISkin Skin { get; }
+		public virtual GUISkin Skin { get; protected set; }
 
 		public abstract CelestialBody HomeBody { get; }
 		public abstract List<CelestialBody> SortedBodyList { get; protected set; }

--- a/API/VOID_Module.cs
+++ b/API/VOID_Module.cs
@@ -560,6 +560,7 @@
 			{
 				case GameScenes.EDITOR:
 					InputLockManager.SetControlLock(
+					ControlTypes.EDITOR_LOCK |
 						ControlTypes.EDITOR_ICON_HOVER | ControlTypes.EDITOR_ICON_PICK |
 						ControlTypes.EDITOR_PAD_PICK_COPY | ControlTypes.EDITOR_PAD_PICK_COPY,
 						this.inputLockName

--- a/VOID.csproj
+++ b/VOID.csproj
@@ -26,7 +26,10 @@
     <ConsolePause>false</ConsolePause>
     <CustomCommands>
       <CustomCommands>
-        <Command type="AfterBuild" command="xcopy /Y ${TargetFile} ${ProjectDir}\GameData\VOID\Plugins\" />
+        <Command>
+          <type>AfterBuild</type>
+          <command>xcopy /Y ${TargetFile} ${ProjectDir}\GameData\VOID\Plugins\</command>
+        </Command>
       </CustomCommands>
     </CustomCommands>
   </PropertyGroup>
@@ -39,7 +42,10 @@
     <DefineConstants>TRACE</DefineConstants>
     <CustomCommands>
       <CustomCommands>
-        <Command type="AfterBuild" command="xcopy /Y ${TargetFile} ${ProjectDir}\GameData\VOID\Plugins\" />
+        <Command>
+          <type>AfterBuild</type>
+          <command>xcopy /Y ${TargetFile} ${ProjectDir}\GameData\VOID\Plugins\</command>
+        </Command>
       </CustomCommands>
     </CustomCommands>
   </PropertyGroup>
@@ -54,7 +60,10 @@
     <ConsolePause>false</ConsolePause>
     <CustomCommands>
       <CustomCommands>
-        <Command type="AfterBuild" command="cp -afv ${TargetFile} ${ProjectDir}/GameData/${ProjectName}/Plugins/" />
+        <Command>
+          <type>AfterBuild</type>
+          <command>cp -afv ${TargetFile} ${ProjectDir}/GameData/${ProjectName}/Plugins/</command>
+        </Command>
       </CustomCommands>
     </CustomCommands>
   </PropertyGroup>
@@ -67,7 +76,10 @@
     <ConsolePause>false</ConsolePause>
     <CustomCommands>
       <CustomCommands>
-        <Command type="AfterBuild" command="cp -afv ${TargetFile} ${ProjectDir}/GameData/${ProjectName}/Plugins/" />
+        <Command>
+          <type>AfterBuild</type>
+          <command>cp -afv ${TargetFile} ${ProjectDir}/GameData/${ProjectName}/Plugins/</command>
+        </Command>
       </CustomCommands>
     </CustomCommands>
   </PropertyGroup>
@@ -121,7 +133,7 @@
     <MonoDevelop>
       <Properties>
         <Policies>
-          <TextStylePolicy FileWidth="120" TabsToSpaces="False" EolMarker="Unix" inheritsSet="VisualStudio" inheritsScope="text/plain" scope="text/plain" />
+          <TextStylePolicy TabWidth="4" IndentWidth="4" RemoveTrailingWhitespace="True" NoTabsAfterNonTabs="False" FileWidth="120" TabsToSpaces="False" EolMarker="Unix" inheritsSet="VisualStudio" inheritsScope="text/plain" scope="text/plain" />
         </Policies>
       </Properties>
     </MonoDevelop>
@@ -135,9 +147,6 @@
     </Reference>
     <Reference Include="UnityEngine">
       <HintPath>..\_KSPAssemblies\UnityEngine.dll</HintPath>
-    </Reference>
-    <Reference Include="KSPUtil">
-      <HintPath>..\_KSPAssemblies\KSPUtil.dll</HintPath>
     </Reference>
     <Reference Include="UnityEngine.UI">
       <HintPath>..\_KSPAssemblies\UnityEngine.UI.dll</HintPath>

--- a/VOIDCore_Generic.cs
+++ b/VOIDCore_Generic.cs
@@ -104,7 +104,7 @@
 		protected bool vesselTypesLoaded = false;
 		protected bool simManagerLoaded = false;
 
-		protected string defaultSkin = "KSP window 2";
+		protected string defaultSkin = "KSPSkin";
 
 		[AVOID_SaveValue("defaultSkin")]
 		protected VOID_SaveValue<string> skinName;
@@ -198,25 +198,6 @@
 			}
 		}
 
-		public override GUISkin Skin
-		{
-			get
-			{
-				if (this.skinsLoaded)
-				{
-					try
-					{
-						return this.validSkins[this.skinName];
-					}
-					catch
-					{
-					}
-				}
-
-				return AssetBase.GetGUISkin(this.defaultSkin);
-			}
-		}
-
 		public override List<CelestialBody> SortedBodyList
 		{
 			get;
@@ -344,8 +325,10 @@
 			{
 				this.LoadSkins();
 			}
-
-			GUI.skin = this.Skin;
+			else
+			{
+				GUI.skin = this.Skin;
+			}
 
 			if (!this.GUIStylesLoaded)
 			{
@@ -775,6 +758,7 @@
 
 			GUILayout.BeginHorizontal(GUILayout.ExpandWidth(true));
 
+			int oldSkinIdx = this.skinIdx;
 			GUILayout.Label("Skin:", GUILayout.ExpandWidth(false));
 
 			_content = new GUIContent();
@@ -813,6 +797,11 @@
 			if (this.skinIdx < 0)
 			{
 				this.skinIdx += this.skinNames.Count;
+			}
+
+			if (this.skinIdx != oldSkinIdx)
+			{
+				this.Skin = this.validSkins [this.skinNames [this.skinIdx]];
 			}
 
 			if (this.skinName != skinNames[this.skinIdx])
@@ -1009,12 +998,13 @@
 
 				if (!this.forbiddenSkins.Contains(skin.name))
 				{
+					Logging.PostLogMessage ("[{0}]: Found skin: {1}", this.GetType().Name, skin.name);
 					this.validSkins[skin.name] = skin;
 					this.skinNames.Add(skin.name);
 				}
 			}
 
-			Logging.PostDebugMessage(string.Format(
+			Logging.PostLogMessage(string.Format(
 				"{0}: loaded {1} GUISkins.",
 				this.GetType().Name,
 				this.validSkins.Count
@@ -1045,7 +1035,9 @@
 				this.skinIdx = defaultIdx;
 			}
 
-			Logging.PostDebugMessage(string.Format(
+			this.Skin = this.validSkins [this.skinNames [this.skinIdx]];
+
+			Logging.PostLogMessage(string.Format(
 				"{0}: _skinIdx = {1}.",
 				this.GetType().Name,
 				this.skinName.ToString()

--- a/VOID_Data.cs
+++ b/VOID_Data.cs
@@ -566,7 +566,7 @@
 					dir = vesselTransform.InverseTransformDirection(dir);
 
 					Vector3 thrustOffset = VectorTools.PointDistanceToLine(
-						pos, dir.normalized, Core.Vessel.findLocalCenterOfMass());
+						pos, dir.normalized, Core.Vessel.CoM);
 
 					Logging.PostDebugMessage(typeof(VOID_Data), "vesselThrustOffset:\n" +
 					"\tthrustPos: {0}\n" +
@@ -576,7 +576,7 @@
 						pos,
 						dir.normalized,
 						thrustOffset,
-						Core.Vessel.findWorldCenterOfMass()
+						Core.Vessel.CoM
 					);
 
 					return thrustOffset;
@@ -1146,7 +1146,7 @@
 				delegate()
 				{
 					double orbitRadius = Core.Vessel.mainBody.Radius +
-					                     Core.Vessel.mainBody.GetAltitude(Core.Vessel.findWorldCenterOfMass());
+					                     Core.Vessel.mainBody.GetAltitude(Core.Vessel.CoM);
 					return (VOIDCore.Constant_G * Core.Vessel.mainBody.Mass) /
 					(orbitRadius * orbitRadius);
 				},

--- a/VOID_Rendezvous.cs
+++ b/VOID_Rendezvous.cs
@@ -202,7 +202,7 @@
 
 					GUILayout.BeginHorizontal(GUILayout.ExpandWidth(true));
 					GUILayout.Label("Distance:");
-					GUILayout.Label(SIFormatProvider.ToSI((Vessel.findWorldCenterOfMass() - v.findWorldCenterOfMass()).magnitude, 3) + "m", GUILayout.ExpandWidth(false));
+					GUILayout.Label(SIFormatProvider.ToSI((Vessel.CoM - v.CoM).magnitude, 3) + "m", GUILayout.ExpandWidth(false));
 					GUILayout.EndHorizontal();
 
 					// Toadicus edit: added local sidereal longitude.
@@ -272,7 +272,7 @@
 
 					GUILayout.BeginHorizontal(GUILayout.ExpandWidth(true));
 					GUILayout.Label("Distance:");
-					GUILayout.Label(SIFormatProvider.ToSI((Vessel.findWorldCenterOfMass() - v.findWorldCenterOfMass()).magnitude, 3) + "m", GUILayout.ExpandWidth(false));
+					GUILayout.Label(SIFormatProvider.ToSI((Vessel.CoM - v.CoM).magnitude, 3) + "m", GUILayout.ExpandWidth(false));
 					GUILayout.EndHorizontal();
 				}
 			}