public void CreateAiNonAtcAircraft(string szContainerTitle, SIMCONNECT_DATA_INITPOSITION initPos, uint request) { if (simConnect == null) { return; } simConnect.AICreateNonATCAircraft(szContainerTitle, "N123", initPos, (REQUEST)request); }
public void CreateAiSimulatedObject(string szContainerTitle, SIMCONNECT_DATA_INITPOSITION initPos, uint request) { if (simConnect == null) { return; } simConnect.AICreateSimulatedObject(szContainerTitle, initPos, (REQUEST)request); }
public void AiCreateSimulatedObject(string objectName, SIMCONNECT_DATA_INITPOSITION init, int reqId) { _mySimconnect.AICreateSimulatedObject(objectName, init, RequestId.ObjectBase + reqId); }
private void CreateNewAIAircraft(TrafficPositionReportMessage trafficPositionReportMessage) { uint counter; lock (AICounterLock) { counter = AICounter++; } AICounterToCallsignMap.Add(counter, trafficPositionReportMessage.Sender); try { // TODO: OnGround + airspeed var initpos = new SIMCONNECT_DATA_INITPOSITION() { Altitude = trafficPositionReportMessage.TrueAltitude, Bank = -trafficPositionReportMessage.BankAngle, Heading = trafficPositionReportMessage.Heading, Latitude = trafficPositionReportMessage.Latitude, Longitude = trafficPositionReportMessage.Longitude, Pitch = -trafficPositionReportMessage.Pitch, OnGround = 1, Airspeed = 0 }; simconnect.AICreateNonATCAircraft(GetRepaintTitle(), trafficPositionReportMessage.Sender, initpos, (SIMCONNECT_EVENTS)((uint)SIMCONNECT_EVENTS.EVENTID_SETAIAC + counter)); // simconnect.AICreateSimulatedObject(GetRepaintTitle(), initpos, (SIMCONNECT_EVENTS)((uint)SIMCONNECT_EVENTS.EVENTID_SETAIAC + counter)); var aiplane = new AIPlane(trafficPositionReportMessage.Sender); aiplane.SetTargetWaypoint(CreateWaypointFromTrafficPositionReportMsg(trafficPositionReportMessage)); aiplane.AICounter = counter; CallsignToAIPlaneMap.Add(aiplane.Callsign, aiplane); } catch (COMException e) { Logger.Error("SimConnectInterface.CreateNewAIAircraft: " + e); } }