public void OnPreAutopilotUpdate(FlightCtrlState s) { if (!Valid) { return; } //initialize systems VSL.PreUpdateState(s); State = TCAState.Disabled; if (CFG.Enabled) { State = TCAState.Enabled; localControlState = VesselControlState.None; if (!VSL.Info.ElectricChargeAvailible) { if (VSL.Controls.WarpToTime > 0) { VSL.Controls.AbortWarp(); } return; } localControlState = VesselControlState.ProbePartial; SetState(TCAState.HaveEC); ClearFrameState(); //update VSL VSL.UpdatePhysics(); if (VSL.Engines.Check()) { SetState(TCAState.HaveActiveEngines); } Actions["onActionUpdate"].actionGroup = VSL.Engines.ActionGroups; VSL.UpdateEngines(); //update modules ModulePipeline.ForEach(m => m.OnFixedUpdate()); VSL.OnModulesUpdated(); } }