/// <summary>
 ///     Gets the dry mass of the part.
 /// </summary>
 public static double GetDryMass(Part part)
 {
     return((part.physicalSignificance == Part.PhysicalSignificance.FULL) ? part.mass + PartExtensions.getCrewAdjustment(part) : 0d);
 }
 /// <summary>
 ///     Gets whether the part is a solid rocket motor.
 /// </summary>
 public static bool IsSolidRocket(Part part)
 {
     return(PartExtensions.HasModule <ModuleEngines>(part) && PartExtensions.GetModuleEngines(part).throttleLocked);
 }
 /// <summary>
 ///     Gets the cost of the part including resources.
 /// </summary>
 public static double GetCostWet(Part part)
 {
     return(part.partInfo.cost - GetResourceCostInverted(part) + PartExtensions.GetModuleCostsNoAlloc(part, 0.0f)); // part.GetModuleCosts allocate 44B per call.
 }