/// <summary> /// Signal to listeners that a pickup request is complete. /// </summary> /// <param name="e"></param> public void Send_SB_Event_Fleet_PickupRequestComplete(Fleet_NeedPickupEventArgs e) { var methodName = "Send_Fleet_PickupRequesetComplete"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6}]\"", RelayGroup, SB_Events.SB_Event_Fleet_PickupRequestComplete.ToString(), e.SendingFleetMemberID, e.SolarSystemID, e.TargetCanEntityID, e.SendingFleetMemberEntityID, e.SendingFleetMemberName); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
private void Handle_SB_Event_Notify_AcknowledgePickupRequest(object sender, LSEventArgs e) { var methodName = "Handle_SB_Event_Notify_AcknowledgePickupRequest"; LogTrace(methodName); var fe = new Fleet_NeedPickupEventArgs(e); LogMessage(methodName, LogSeverityTypes.Debug, "Received AckPickupRequest from {0}.", fe.SendingFleetMemberID); if (OnSB_Event_Fleet_AcknowledgePickupRequest != null) { OnSB_Event_Fleet_AcknowledgePickupRequest(this, fe); } }
private void Handle_SB_Event_Fleet_DidPickup(object sender, LSEventArgs e) { var methodName = "Handle_SB_Event_Fleet_DidPickup"; LogTrace(methodName); var fe = new Fleet_NeedPickupEventArgs(e); LogMessage(methodName, LogSeverityTypes.Debug, "Received DidPickup from {0}.", fe.SendingFleetMemberID); if (OnSB_Event_Fleet_DidPickup != null) { OnSB_Event_Fleet_DidPickup(this, fe); } }
private void _handle_SB_Event_Notify_AcknowledgePickupRequest(object sender, LSEventArgs e) { string methodName = "_handle_Notify_AckPickupRequest"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); Fleet_NeedPickupEventArgs fe = new Fleet_NeedPickupEventArgs(e); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Minor, methodName, String.Format("Received AckPickupRequest from {0}.", fe.SendingFleetMemberID))); if (OnSB_Event_Fleet_AcknowledgePickupRequest != null) { OnSB_Event_Fleet_AcknowledgePickupRequest(this, fe); } }
private void Handle_SB_Event_Fleet_PickupRequestComplete(object sender, LSEventArgs e) { var methodName = "Handle_SB_Event_Fleet_PickupRequestComplete"; LogTrace(methodName); var eventArgs = new Fleet_NeedPickupEventArgs(e); LogMessage(methodName, LogSeverityTypes.Debug, "Received PickupRequestComplete from {0}", eventArgs.SendingFleetMemberID); if (OnSB_Event_Fleet_PickupRequestComplete != null) { OnSB_Event_Fleet_PickupRequestComplete(this, eventArgs); } }
/// <summary> /// If the we have a pickup request matching the received complete one, remove it. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void HandlePickupRequestComplete(object sender, Fleet_NeedPickupEventArgs e) { lock (this) { for (var index = 0; index < _sentPickupRequests.Count; index++) { var request = _sentPickupRequests[index]; if (request.SendingFleetMemberID == e.SendingFleetMemberID && request.TargetCanEntityID == e.TargetCanEntityID) { _sentPickupRequests.RemoveAt(index); index--; break; } } } }
/// <summary> /// Signal to listeners that we need a pickup. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="targetCanEntityID"></param> /// <param name="sendingFleetMemberEntityID"></param> public void Send_SB_Event_Fleet_NeedPickup(Int64 sendingFleetMemberID, int solarSystemID, Int64 targetCanEntityID, Int64 sendingFleetMemberEntityID, string sendingFleetMemberName) { var methodName = "Send_Fleet_NeedPickup"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6}]\"", RelayGroup, SB_Events.SB_Event_Fleet_NeedPickup.ToString(), sendingFleetMemberID.ToString(), solarSystemID.ToString(), targetCanEntityID.ToString(), sendingFleetMemberEntityID.ToString(), sendingFleetMemberName); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); //Add a new PickupRequest to the list for re-sending if necessary var eventArgs = new Fleet_NeedPickupEventArgs(sendingFleetMemberID, solarSystemID, targetCanEntityID, sendingFleetMemberEntityID, sendingFleetMemberName); lock (this) { _sentPickupRequests.Add(eventArgs); } }