VOID_Module: Added new core property which returns VOID_Core.Instance.
VOID_Module: Added new core property which returns VOID_Core.Instance.

--- /dev/null
+++ b/Properties/AssemblyInfo.cs
@@ -1,1 +1,48 @@
+// VOID
+//
+// AssemblyInfo.cs
+//
+// 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.
+//
+// 3. Neither the name of the copyright holder nor the names of its contributors may be used
+//    to endorse or promote products derived from this software without specific prior written permission.
+//
+// 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;
 
+[assembly: KSPAssemblyDependency("ToadicusTools", 0, 0)]
+[assembly: KSPAssemblyDependency("VesselSimulator", 0, 0)]
+
+// Information about this assembly is defined by the following attributes.
+// Change them to the values specific to your project.
+[assembly: AssemblyTitle("VOID")]
+[assembly: AssemblyDescription("A KSP mod that provides at-a-glance information about Vessels, Orbits, and their states.")]
+[assembly: AssemblyCopyright("toadicus")]
+// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
+// The form "{Major}.{Minor}.*" will automatically update the build and revision,
+// and "{Major}.{Minor}.{Build}.*" will update just the revision.
+[assembly: AssemblyVersion("0.11.0.*")]
+// The following attributes are used to specify the signing key for the assembly,
+// if desired. See the Mono documentation for more information about signing.
+//[assembly: AssemblyDelaySign(false)]
+//[assembly: AssemblyKeyFile("")]
+
+

--- a/VOID.csproj
+++ b/VOID.csproj
@@ -9,7 +9,6 @@
     <RootNamespace>VOID</RootNamespace>
     <AssemblyName>VOID</AssemblyName>
     <CodePage>65001</CodePage>
-    <UseMSBuildEngine>False</UseMSBuildEngine>
     <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     <ReleaseVersion>0.11</ReleaseVersion>
@@ -93,6 +92,7 @@
     <Compile Include="VOIDEditorMaster.cs" />
     <Compile Include="VOID_Tools.cs" />
     <Compile Include="VOID_Localization.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
   </ItemGroup>
   <ProjectExtensions>
     <MonoDevelop>

--- a/VOID_Core.cs
+++ b/VOID_Core.cs
@@ -1033,7 +1033,7 @@
 		{
 			get
 			{
-				return core.Kerbin.gravParameter / Math.Pow(core.Kerbin.Radius, 2);
+				return core.Kerbin.gravParameter / (core.Kerbin.Radius * core.Kerbin.Radius);
 			}
 		}
 	}

--- a/VOID_Module.cs
+++ b/VOID_Module.cs
@@ -51,6 +51,14 @@
 		/*
 		 * Properties
 		 * */
+		protected virtual VOID_Core core
+		{
+			get
+			{
+				return VOID_Core.Instance;
+			}
+		}
+
 		public virtual bool toggleActive
 		{
 			get

--- a/VOID_Tools.cs
+++ b/VOID_Tools.cs
@@ -303,9 +303,11 @@
 
 			seconds %= SecondsPerMinute;
 
-			string format_1 = "{0:D1}y {1:D1}d {2:D2}h {3:D2}m {4:00.0}s";
-			string format_2 = "{0:D1}d {1:D2}h {2:D2}m {3:00.0}s";
-			string format_3 = "{0:D2}h {1:D2}m {2:00.0}s";
+			string format_1 = string.Intern("{0:D1}y {1:D1}d {2:D2}h {3:D2}m {4:00.0}s");
+			string format_2 = string.Intern("{0:D1}d {1:D2}h {2:D2}m {3:00.0}s");
+			string format_3 = string.Intern("{0:D2}h {1:D2}m {2:00.0}s");
+			string format_4 = string.Intern("{0:D2}m {1:00.0}s");
+			string format_5 = string.Intern("{0:00.0}s");
 
 			if (years > 0)
 			{
@@ -315,9 +317,17 @@
 			{
 				return string.Format(format_2, days, hours, minutes, seconds);
 			}
+			else if (hours > 0)
+			{
+				return string.Format(format_3, hours, minutes, seconds);
+			}
+			else if (minutes > 0)
+			{
+				return string.Format(format_4, minutes, seconds);
+			}
 			else
 			{
-				return string.Format(format_3, hours, minutes, seconds);
+				return string.Format(format_5, seconds);
 			}
 		}
 

--- a/VOID_VesselInfo.cs
+++ b/VOID_VesselInfo.cs
@@ -178,6 +178,34 @@
 			}
 		);
 
+		public static readonly VOID_DoubleValue currThrustWeight = new VOID_DoubleValue(
+			"T:W Ratio",
+			delegate()
+		{
+			if (SimManager.LastStage == null)
+			{
+				return double.NaN;
+			}
+
+			return SimManager.LastStage.actualThrustToWeight;
+		},
+			""
+		);
+
+		public static readonly VOID_DoubleValue maxThrustWeight = new VOID_DoubleValue(
+			"T:W Ratio",
+			delegate()
+		{
+			if (SimManager.LastStage == null)
+			{
+				return double.NaN;
+			}
+
+			return SimManager.LastStage.maxThrustToWeight;
+		},
+			""
+		);
+
 		public static readonly VOID_StrValue currmaxThrustWeight = new VOID_StrValue(
 			"T:W (curr/max)",
 			delegate()
@@ -185,20 +213,10 @@
 				if (SimManager.Stages == null || SimManager.LastStage == null)
 					return "N/A";
 
-				double currThrust = SimManager.LastStage.actualThrust;
-				double maxThrust = SimManager.LastStage.thrust;
-				double mass = SimManager.LastStage.totalMass;
-				double gravity = VOID_Core.Instance.vessel.mainBody.gravParameter /
-					Math.Pow(
-						VOID_Core.Instance.vessel.mainBody.Radius + VOID_Core.Instance.vessel.altitude,
-						2
-					);
-				double weight = mass * gravity;
-
 				return string.Format(
 					"{0} / {1}",
-					(currThrust / weight).ToString("F2"),
-					(maxThrust / weight).ToString("F2")
+					(VOID_Data.currThrustWeight.Value).ToString("F2"),
+					(VOID_Data.maxThrustWeight.Value).ToString("F2")
 				);
 			}
 		);