public static void HandleSocketData(byte[] bytes) { var bytesStr = bytes[0].ToString() + '|' + bytes[1].ToString() + '|' + bytes[2].ToString() + '|' + bytes[3].ToString() + '|' + bytes[4].ToString() + '|' + bytes[5].ToString(); //var bytesStr = bytes[0].ToString(); //Log(data.joystickR.ToString()); if (conn != null) { Info.AddInfo("received", bytesStr); var vessel = conn.SpaceCenter().ActiveVessel; if (vessel != null) { vessel.Control.InputMode = ControlInputMode.Additive; var data = ParseSocketBytes(bytes); vessel.Control.Throttle = data.throttle; vessel.Control.Pitch = -data.joystickR.Y; vessel.Control.Roll = data.joystickR.X; vessel.Control.Yaw = data.joystickL.X; vessel.Control.WheelSteering = -data.rudder; for (int i = 1; i < 10; i++) { if (data.toggles[i]) { vessel.Control.ToggleActionGroup((uint)(i)); } } if (data.toggles[0]) { vessel.Control.ToggleActionGroup((uint)10); } if (data.toggles[10]) { vessel.Control.SAS = !vessel.Control.SAS; } if (data.toggles[11]) { vessel.Control.RCS = !vessel.Control.RCS; } if (data.toggles[12]) { vessel.Control.Brakes = !vessel.Control.Brakes; } if (data.toggles[13]) { vessel.Control.Lights = !vessel.Control.Lights; } if (data.toggles[14]) { vessel.Control.Gear = !vessel.Control.Gear; } if (data.toggles[15]) { vessel.Control.ActivateNextStage(); } } } else { Log(bytesStr); } }