public void update() { if (sending && states.Peek().ActTime <= Planetarium.GetUniversalTime()) { state = states.Dequeue(); if (state.Bt) { state.Target = state.Target + Planetarium.GetUniversalTime(); } else { speedT0 = RTUtils.ForwardSpeed(computer.core.vessel); } } if (burning) { if (!RTUtils.PhysicsActive) { TimeWarp.SetRate(0, true); } doOnce = true; if (ThrottleIncrement < state.Throttle) { ThrottleIncrement = Mathf.Clamp(ThrottleIncrement + 0.1F, 0, 1); computer.core.computer.SetThrottle(ThrottleIncrement); } else { computer.core.computer.SetThrottle(Mathf.Clamp(state.Throttle, 0, 1)); } } else if (doOnce) { ThrottleIncrement = 0; computer.core.computer.SetThrottle(ThrottleIncrement); doOnce = false; if (!state.Bt) { state.Target = -10; state.Bt = true; } } }