Removed some unused methods for 0.90.0 compatibility.
Removed some unused methods for 0.90.0 compatibility.

--- a/CoreStrut.cs
+++ b/CoreStrut.cs
@@ -1,9 +1,31 @@
-// QuantumStrutsContinued © 2014 toadicus
-//
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
-//
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
+// QuantumStrutsContinued
+//
+// CoreStrut.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 using System;
 using UnityEngine;

file:b/KASifyQSC.cfg (new)
--- /dev/null
+++ b/KASifyQSC.cfg
@@ -1,1 +1,41 @@
+// QuantumStrutsContinued
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+// 
+// Copyright © 2014, toadicus, K3|Chris
+// All rights reserved.
+// 
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+// 
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+// 
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+// 
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+@PART[*]:HAS[@MODULE[QuantumStrut]]
+{
+MODULE
+{
+	name = KASModuleGrab
+	evaPartPos = (0.0, 0.0, -0.15)
+	evaPartDir = (0,0,-1)
+	storable = true
+	storedSize = 2
+	attachOnPart = True
+	attachOnEva = False
+	attachOnStatic = False
+}
+}

 Binary files a/Parts/QuantumStruts/quantumStrut/model.mu and b/Parts/QuantumStruts/quantumStrut/model.mu differ
 Binary files a/Parts/QuantumStruts/quantumStrut/model000.mbm and b/Parts/QuantumStruts/quantumStrut/model000.mbm differ
 Binary files a/Parts/QuantumStruts/quantumStrut/model001.mbm and b/Parts/QuantumStruts/quantumStrut/model001.mbm differ
--- a/Parts/QuantumStruts/quantumStrut/part.cfg
+++ b/Parts/QuantumStruts/quantumStrut/part.cfg
@@ -1,3 +1,30 @@
+// QuantumStrutsContinued

+// 

+// Continued from QuantumStruts by BoJaN.  Used by permission.

+//

+// ModuleManager patches © 2014 K3|Chris.  Used by permission.

+// 

+// Copyright © 2014, toadicus

+// All rights reserved.

+// 

+// Redistribution and use in source and binary forms, with or without modification,

+// are permitted provided that the following conditions are met:

+// 

+// 1. Redistributions of source code must retain the above copyright notice,

+//    this list of conditions and the following disclaimer.

+// 

+// 2. Redistributions in binary form must reproduce the above copyright notice,

+//    this list of conditions and the following disclaimer in the documentation and/or other

+//    materials provided with the distribution.

+// 

+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,

+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE

+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR

+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,

+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ARISING IN ANY WAY OUT OF THE USE

+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+

 PART

 {

 // --- general parameters ---

@@ -14,6 +41,7 @@
 node_attach = 0.0, 0.0 , 0.0, 0.0, -1.0, 0.0

 

 // --- editor parameters ---

+TechRequired = advScienceTech

 cost = 1500

 category = Utility

 subcategory = 0

@@ -50,4 +78,5 @@
 	Start = 0,0,0

 	Dir = 0,1,0

 }

+

 }

--- a/Parts/QuantumStruts/quantumStrutCore/part.cfg
+++ b/Parts/QuantumStruts/quantumStrutCore/part.cfg
@@ -1,3 +1,30 @@
+// QuantumStrutsContinued

+// 

+// Continued from QuantumStruts by BoJaN.  Used by permission.

+//

+// ModuleManager patches © 2014 K3|Chris.  Used by permission.

+// 

+// Copyright © 2014, toadicus

+// All rights reserved.

+// 

+// Redistribution and use in source and binary forms, with or without modification,

+// are permitted provided that the following conditions are met:

+// 

+// 1. Redistributions of source code must retain the above copyright notice,

+//    this list of conditions and the following disclaimer.

+// 

+// 2. Redistributions in binary form must reproduce the above copyright notice,

+//    this list of conditions and the following disclaimer in the documentation and/or other

+//    materials provided with the distribution.

+// 

+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,

+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE

+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR

+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,

+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ARISING IN ANY WAY OUT OF THE USE

+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+

 PART

 {

 // --- general parameters ---


 Binary files a/Parts/QuantumStruts/strutGun/model.mu and b/Parts/QuantumStruts/strutGun/model.mu differ
 Binary files a/Parts/QuantumStruts/strutGun/model000.mbm and b/Parts/QuantumStruts/strutGun/model000.mbm differ
 Binary files a/Parts/QuantumStruts/strutGun/model001.mbm and b/Parts/QuantumStruts/strutGun/model001.mbm differ
--- a/Parts/QuantumStruts/strutGun/part.cfg
+++ b/Parts/QuantumStruts/strutGun/part.cfg
@@ -1,3 +1,30 @@
+// QuantumStrutsContinued

+// 

+// Continued from QuantumStruts by BoJaN.  Used by permission.

+//

+// ModuleManager patches © 2014 K3|Chris.  Used by permission.

+// 

+// Copyright © 2014, toadicus

+// All rights reserved.

+// 

+// Redistribution and use in source and binary forms, with or without modification,

+// are permitted provided that the following conditions are met:

+// 

+// 1. Redistributions of source code must retain the above copyright notice,

+//    this list of conditions and the following disclaimer.

+// 

+// 2. Redistributions in binary form must reproduce the above copyright notice,

+//    this list of conditions and the following disclaimer in the documentation and/or other

+//    materials provided with the distribution.

+// 

+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,

+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE

+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR

+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,

+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ARISING IN ANY WAY OUT OF THE USE

+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

+

 PART

 {

 // --- general parameters ---

@@ -14,6 +41,7 @@
 node_attach = 0.0, 0.0 , 0.0, 0.0, -1.0, 0.0

 

 // --- editor parameters ---

+TechRequired = advScienceTech

 cost = 500

 category = Utility

 subcategory = 0

@@ -45,7 +73,7 @@
 	StartColor = 50, 50, 50

 	EndColor = 50, 50, 50

 	StartSize = 0.03

-	EndSize = 0.0075

+	EndSize = 0.03

 	

 	Start = 0,0,0

 	Dir = 0,1,0


--- a/Properties/AssemblyInfo.cs
+++ b/Properties/AssemblyInfo.cs
@@ -1,4 +1,33 @@
-using System.Reflection;
+// QuantumStrutsContinued
+//
+// AssemblyInfo.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+using System.Reflection;
 using System.Runtime.CompilerServices;
 using System.Runtime.InteropServices;
 
@@ -28,5 +57,5 @@
 // You can specify all the values or you can default the Build and Revision Numbers 
 // by using the '*' as shown below:
 // [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.1.*")]
 

--- a/QuantumStrut.cs
+++ b/QuantumStrut.cs
@@ -1,12 +1,35 @@
-// QuantumStrutsContinued © 2014 toadicus
-//
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
-//
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
+// QuantumStrutsContinued
+//
+// QuantumStrut.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 using KSP;
 using System;
+using ToadicusTools;
 using UnityEngine;
 
 namespace QuantumStrut
@@ -70,7 +93,7 @@
 
 		#region Events
 
-		[KSPEvent(guiActive = true, guiName = "Activate", active = true, guiActiveEditor = true)]
+		[KSPEvent(guiActive = true, guiName = "Activate", active = true, guiActiveUnfocused = true, unfocusedRange = 2f)]
 		public void ActivateStrut()
 		{
 			IsEnabled = true;
@@ -79,7 +102,7 @@
 			this.Events["DeactivateStrut"].guiActiveEditor = true;
 		}
 
-		[KSPEvent(guiActive = true, guiName = "Deactivate", active = false, guiActiveEditor = false)]
+		[KSPEvent(guiActive = true, guiName = "Deactivate", active = false, guiActiveUnfocused = true, unfocusedRange = 2f)]
 		public void DeactivateStrut()
 		{
 			IsEnabled = false;

--- a/QuantumStrutCore.cs
+++ b/QuantumStrutCore.cs
@@ -1,9 +1,31 @@
-// QuantumStrutsContinued © 2014 toadicus
-//
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
-//
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
+// QuantumStrutsContinued
+//
+// QuantumStrutCore.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 using KSP;
 using KSP.IO;
@@ -158,18 +180,6 @@
 			return partFromGameObject(hit.collider.gameObject);
 		}
 
-		Part partFromId(long id)
-		{
-			Console.WriteLine("Vessel Parts: " + part.vessel.Parts.Count);
-			foreach (Part p in part.vessel.Parts)
-			{
-				print(p.uid + " ?= " + id + ": " + (p.uid == id));
-				if (p.uid == id)
-					return p;
-			}
-			return null;
-		}
-
 		bool isValid(UnityEngine.Object obj)
 		{
 			return (obj && obj != null);

--- /dev/null
+++ b/QuantumStrutsContinued.csproj
@@ -1,1 +1,109 @@
-
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug_win</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.30703</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{D6EC2150-27A5-4CB2-ACF9-C53FF7754A77}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <RootNamespace>QuantumStrutsContinued</RootNamespace>
+    <AssemblyName>QuantumStrutsContinued</AssemblyName>
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
+    <UseMSBuildEngine>False</UseMSBuildEngine>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug_win|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PlatformTarget>x86</PlatformTarget>
+    <ConsolePause>false</ConsolePause>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="AfterBuild" command="xcopy /Y ${TargetFile} ..\..\..\Games\KSP_win\GameData\QuantumStrutsContinued\Plugins\" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release_win|AnyCPU' ">
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PlatformTarget>x86</PlatformTarget>
+    <ConsolePause>false</ConsolePause>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="AfterBuild" command="xcopy /Y ${TargetFile} ..\..\..\Games\KSP_win\GameData\QuantumStrutsContinued\Plugins\" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug_linux|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug</OutputPath>
+    <DefineConstants>DEBUG;</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <ConsolePause>false</ConsolePause>
+    <PlatformTarget>x86</PlatformTarget>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="AfterBuild" command="cp -af ${TargetFile} /opt/games/KSP_linux/GameData/QuantumStrutsContinued/Plugins/" />
+      </CustomCommands>
+    </CustomCommands>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release_linux|AnyCPU' ">
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release</OutputPath>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <CustomCommands>
+      <CustomCommands>
+        <Command type="AfterBuild" command="cp -af ${TargetFile} /opt/games/KSP_linux/GameData/QuantumStrutsContinued/Plugins/" />
+        <Command type="AfterBuild" command="cp -raf ${ProjectDir}/Parts ${ProjectDir}/KASifyQSC.cfg /opt/games/KSP_linux/GameData/QuantumStrutsContinued/" />
+      </CustomCommands>
+    </CustomCommands>
+    <ConsolePause>false</ConsolePause>
+    <PlatformTarget>x86</PlatformTarget>
+  </PropertyGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <ItemGroup>
+    <Compile Include="CoreStrut.cs" />
+    <Compile Include="QuantumStrut.cs" />
+    <Compile Include="QuantumStrutCore.cs" />
+    <Compile Include="Strut.cs" />
+    <Compile Include="Util.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="..\ToadicusTools\Tools.cs">
+      <Link>Tools.cs</Link>
+    </Compile>
+  </ItemGroup>
+  <ProjectExtensions>
+    <MonoDevelop>
+      <Properties>
+        <Policies>
+          <StandardHeader Text="${ProjectName}&#xD;&#xA;&#xD;&#xA;${FileName}&#xD;&#xA;&#xD;&#xA;Copyright © ${Year}, ${AuthorName}&#xD;&#xA;All rights reserved.&#xD;&#xA;&#xD;&#xA;Redistribution and use in source and binary forms, with or without modification,&#xD;&#xA;are permitted provided that the following conditions are met:&#xD;&#xA;&#xD;&#xA;1. Redistributions of source code must retain the above copyright notice,&#xD;&#xA;   this list of conditions and the following disclaimer.&#xD;&#xA;&#xD;&#xA;2. Redistributions in binary form must reproduce the above copyright notice,&#xD;&#xA;   this list of conditions and the following disclaimer in the documentation and/or other&#xD;&#xA;   materials provided with the distribution.&#xD;&#xA;&#xD;&#xA;THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES,&#xD;&#xA;INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE&#xD;&#xA;DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,&#xD;&#xA;SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR&#xD;&#xA;SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,&#xD;&#xA;WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE&#xD;&#xA;OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." IncludeInNewFiles="True" />
+        </Policies>
+      </Properties>
+    </MonoDevelop>
+  </ProjectExtensions>
+  <ItemGroup>
+    <Reference Include="Assembly-CSharp">
+      <HintPath>..\_KSPAssemblies\Assembly-CSharp.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
+    <Reference Include="System">
+      <HintPath>..\_KSPAssemblies\System.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
+    <Reference Include="UnityEngine">
+      <HintPath>..\_KSPAssemblies\UnityEngine.dll</HintPath>
+      <Private>False</Private>
+    </Reference>
+  </ItemGroup>
+</Project>

file:a/Strut.cs -> file:b/Strut.cs
--- a/Strut.cs
+++ b/Strut.cs
@@ -1,9 +1,31 @@
-// QuantumStrutsContinued © 2014 toadicus
-//
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
-//
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
+// QuantumStrutsContinued
+//
+// Strut.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
+//
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 using KSP;
 using System;

file:a/Tools.cs (deleted)
--- a/Tools.cs
+++ /dev/null
@@ -1,126 +1,1 @@
-// QuantumStrutsContinued © 2014 toadicus
-//
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
-//
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
 
-using System.Linq;
-using System.Collections.Generic;
-using UnityEngine;
-
-namespace QuantumStrut
-{
-	public static partial class Tools
-	{
-		public enum MessageLevel
-		{
-			Log,
-			Warning,
-			Error,
-			Exception
-		}
-
-		/// <summary>
-		/// Formats objects into a message for logging.
-		/// </summary>
-		/// <param name="Sender">Sending object</param>
-		/// <param name="args">A set of arguments to be printed.</param>
-		private static string FormatMessage(object Sender, params object[] args)
-		{
-			string Msg;
-
-			Msg = string.Format(
-				"{0}:\t{1}",
-				Sender.GetType().Name,
-				string.Join("\n\t", args.Select(a => (string)a).ToArray())
-			);
-
-			return Msg;
-		}
-
-		private static ScreenMessage debugmsg = new ScreenMessage("", 4f, ScreenMessageStyle.UPPER_RIGHT);
-
-		[System.Diagnostics.Conditional("DEBUG")]
-		public static void PostDebugMessage(string Msg)
-		{
-			PostLogMessage(MessageLevel.Log, Msg);
-
-			if (HighLogic.LoadedScene > GameScenes.SPACECENTER)
-			{
-				debugmsg.message = Msg;
-				ScreenMessages.PostScreenMessage(debugmsg, true);
-			}
-		}
-
-		[System.Diagnostics.Conditional("DEBUG")]
-		public static void PostDebugMessage(object Sender, params object[] args)
-		{
-			string Msg;
-			Msg = FormatMessage(Sender, args);
-
-			PostDebugMessage(Msg);
-		}
-
-		/// <summary>
-		/// Posts a message to the KSP log.
-		/// </summary>
-		/// <param name="Level">Log level</param>
-		/// <param name="Msg">The message to be printed</param>
-		public static void PostLogMessage(MessageLevel Level, string Msg)
-		{
-			System.Action<string> logMethod;
-
-			switch (Level)
-			{
-				case MessageLevel.Log:
-					logMethod = Debug.Log;
-					break;
-				case MessageLevel.Warning:
-					logMethod = Debug.LogWarning;
-					break;
-				case MessageLevel.Error:
-					logMethod = Debug.LogError;
-					break;
-				default:
-					throw new System.NotImplementedException("Exception message levels not yet implemented.");
-			}
-
-			logMethod(Msg);
-		}
-
-		/// <summary>
-		/// Posts a message to the KSP log.
-		/// </summary>
-		/// <param name="Level">Log level</param>
-		/// <param name="Sender">Sending object</param>
-		/// <param name="args">A set of arguments to be printed.</param>
-		public static void PostLogMessage(MessageLevel Level, object Sender, params object[] args)
-		{
-			string Msg;
-			Msg = FormatMessage(Sender, args);
-
-			PostLogMessage(Level, Msg);
-		}
-
-		/// <summary>
-		/// Posts a warning message to the KSP log.
-		/// </summary>
-		/// <param name="Msg">The message to be logged.</param>
-		public static void PostWarningMessage(string Msg)
-		{
-			PostLogMessage(MessageLevel.Warning, Msg);
-		}
-
-		/// <summary>
-		/// Posts a warning message to the KSP log.
-		/// </summary>
-		/// <param name="Sender">The sending object</param>
-		/// <param name="args">A set of arguments to be printed.</param>
-		public static void PostWarningMessage(object Sender, params object[] args)
-		{
-			PostLogMessage(MessageLevel.Warning, Sender, args);
-		}
-	}
-}
-

file:a/Util.cs -> file:b/Util.cs
--- a/Util.cs
+++ b/Util.cs
@@ -1,9 +1,31 @@
-// QuantumStrutsContinued © 2014 toadicus
+// QuantumStrutsContinued
 //
-// This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To view a
-// copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/
+// Util.cs
+// 
+// Continued from QuantumStruts by BoJaN.  Used by permission.
 //
-// Continued from QuantumStrut, © 2013 BoJaN.  Used with permission.
+// ModuleManager patches © 2014 K3|Chris.  Used by permission.
+//
+// Copyright © 2014, toadicus
+// All rights reserved.
+//
+// Redistribution and use in source and binary forms, with or without modification,
+// are permitted provided that the following conditions are met:
+//
+// 1. Redistributions of source code must retain the above copyright notice,
+//    this list of conditions and the following disclaimer.
+//
+// 2. Redistributions in binary form must reproduce the above copyright notice,
+//    this list of conditions and the following disclaimer in the documentation and/or other
+//    materials provided with the distribution.
+//
+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+// INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 using KSP.IO;
 using System;
@@ -106,18 +128,6 @@
 			return partFromGameObject(hit.collider.gameObject);
 		}
 
-		public static Part partFromId(Vessel vessel, long id)
-		{
-			Console.WriteLine("Vessel Parts: " + vessel.Parts.Count);
-			foreach (Part p in vessel.Parts)
-			{
-				MonoBehaviour.print(p.uid + " ?= " + id + ": " + (p.uid == id));
-				if (p.uid == id)
-					return p;
-			}
-			return null;
-		}
-
 		public static float GetEnergy(Vessel vessel)
 		{
 			double energy = 0;