void DriveVerticalAscent(FlightCtrlState s) { if (vesselState.altitudeASL > ascentPath.VerticalAscentEnd()) { mode = AscentMode.GRAVITY_TURN; } if (autoThrottle && orbit.ApA > desiredOrbitAltitude) { mode = AscentMode.COAST_TO_APOAPSIS; } //during the vertical ascent we just thrust straight up at max throttle core.attitude.attitudeTo(Vector3d.up, AttitudeReference.SURFACE_NORTH, this); if (autoThrottle) { core.thrust.targetThrottle = 1.0F; } if (!vessel.LiftedOff()) { status = "Awaiting liftoff"; } else { status = "Vertical ascent"; } }
void DriveVerticalAscent(FlightCtrlState s) { if (vesselState.altitudeASL > ascentPath.VerticalAscentEnd()) { mode = AscentMode.GRAVITY_TURN; } if (autoThrottle && orbit.ApA > desiredOrbitAltitude) { mode = AscentMode.COAST_TO_APOAPSIS; } //during the vertical ascent we just thrust straight up at max throttle if (forceRoll && vesselState.altitudeTrue > 50) { // pre-align roll unless correctiveSteering is active as it would just interfere with that core.attitude.attitudeTo(90 - desiredInclination, 90, verticalRoll, this); } else { core.attitude.attitudeTo(Vector3d.up, AttitudeReference.SURFACE_NORTH, this); } if (autoThrottle) { core.thrust.targetThrottle = 1.0F; } if (!vessel.LiftedOff()) { status = "Awaiting liftoff"; } else { status = "Vertical ascent"; } }