private void updateThrustOutput()
{
float scale = diameterForThrustScaling == -1 ? currentMainModule.currentDiameterScale : (currentDiameter / diameterForThrustScaling);
scale = Mathf.Pow(scale, thrustScalePower);
if (engineModule == null) { engineModule = part.GetComponent<ModuleEnginesFX>(); }
if (engineModule != null)
{
float minThrust = scale * currentMainModule.minThrust;
float maxThrust = scale * currentMainModule.maxThrust;
if (thrustCurveCache == null) { thrustCurveCache = engineModule.thrustCurve; }
SSTUStockInterop.updateEngineThrust(engineModule, minThrust, maxThrust);
engineModule.thrustCurve = thrustCurveCache;
engineModule.useThrustCurve = thrustCurveCache.Curve.length > 1;
updateEngineGuiStats();
}
}