private void CheckForUpdates() { // Disable updates after STealthy code release -- CT return; UpdateStealthBot(); UpdateMissionDatabase(); UpdateNpcBounties(); UpdatePossibleEwarNpcNames(); //If we updated file, relaunch stealthbot. if (!_wasStealthBotUpdated) { return; } var command = new StringBuilder(String.Format("TimedCommand 10 \"dotnet {0} stealthbot\"", AppDomain.CurrentDomain.FriendlyName)); if (_args.Length > 0) { command.Append(" true"); } LavishScript.ExecuteCommand(command.ToString()); }
private void UpdateStealthBot() { LavishScript.Events.AttachEventTarget("stealthbot_OnFileUpdated", _stealthBotUpdated); LavishScript.Events.AttachEventTarget("stealthbot_OnUpdateComplete", _stealthBotUpdateCompleted); #if DEBUG LavishScript.ExecuteCommand( String.Format("dotnet {0} isxGamesPatcher {0} {1} http://stealthsoftware.net/software/stealthbot-test/isxGamesPatcher_StealthBot-Test.xml", "StealthBot", _productVersion)); #else LavishScript.ExecuteCommand( String.Format("dotnet {0} isxGamesPatcher {0} {1} http://stealthsoftware.net/software/stealthbot/isxGamesPatcher_StealthBot.xml", "StealthBot", _productVersion)); #endif //wait for UpdateComplete var sanityCounter = 300; //5 seconds @ 60fps, 10 seconds at 30fps while (!_isStealthBotUpdateComplete || --sanityCounter < 0) { Frame.Wait(false); } LavishScript.Events.DetachEventTarget("stealthbot_OnFileUpdated", _stealthBotUpdated); LavishScript.Events.DetachEventTarget("stealthbot_OnUpdateComplete", _stealthBotUpdateCompleted); }
private void txtComand_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar == (char)13) { LavishScript.ExecuteCommand(txtComand.Text); } }
private void UpdateNpcBounties() { var npcBountiesPath = string.Format("{0}\\{1}", Path.Combine(Path.Combine(Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath), "StealthBot"), "Data"), "NpcBounties.bin"); if (File.Exists(npcBountiesPath)) { var fileInfo = new FileInfo(npcBountiesPath); if (fileInfo.Length > 0) { return; } } LavishScript.Events.AttachEventTarget("npcBounties_OnUpdateComplete", _npcBountiesUpdateCompleted); LavishScript.ExecuteCommand( String.Format("dotnet {0} isxGamesPatcher {0} {1} http://stealthsoftware.net/software/data/isxGamesPatcher_NpcBounties.xml", "NpcBounties", 0)); var sanityCounter = 300; while (!_isNpcBountiesUpdateCompleted || --sanityCounter < 0) { Frame.Wait(false); } LavishScript.Events.DetachEventTarget("npcBounties_OnUpdateComplete", _npcBountiesUpdateCompleted); }
bool WaitFlee(object[] Params) { Entity WarpScrambling = Entity.All.FirstOrDefault(a => a.IsWarpScrambling); if ((WarpScrambling != null && WarpScrambling.GroupID != Group.EncounterSurveillanceSystem) || ValidScramble != null) { if (WarpScrambling != null) { LavishScript.ExecuteCommand("relay \"all\" -noredirect SecurityAddScrambler " + WarpScrambling.ID); } if (AbandonAlert != null) { Log.Log("|rAbandoning flee due to a scramble!"); Log.Log("|rReturning control to bot!"); Comms.ChatQueue.Enqueue("<Security> Flee canceled due to a new scramble!"); Clear(); QueueState(CheckSafe); Move.Clear(); AbandonAlert(); } return(false); } if (!Move.Idle || (Session.InSpace && MyShip.ToEntity.Mode == EntityMode.Warping)) { return(false); } return(true); }
/// <summary> /// Faces the supplied location in the XZY plane. /// </summary> /// <param name="x">x-coordinate</param> /// <param name="y">y-coordinate</param> /// <param name="z">z-coordinate</param> public static int Face(float x, float y, float z) { Trace.WriteLine(String.Format("Extension:Face({0}, {1}, {2})", x.ToString(CultureInfo.InvariantCulture), y.ToString(CultureInfo.InvariantCulture), z.ToString(CultureInfo.InvariantCulture))); return(LavishScript.ExecuteCommand(String.Format("Face {0} {1} {2}", x.ToString(CultureInfo.InvariantCulture), y.ToString(CultureInfo.InvariantCulture), z.ToString(CultureInfo.InvariantCulture)))); }
public EventCommunications() { ModuleManager.ModulesToDispose.Add(this); IsEnabled = false; ObjectName = "EventCommunications"; SB_Event_Fleet_SendPickupRequestsEventHandler = new EventHandler <Fleet_NotificationEventArgs>(HandleSendPickupRequests); SB_Event_Fleet_PickupRequestCompleteEventHandler = new EventHandler <Fleet_NeedPickupEventArgs>(HandlePickupRequestComplete); #region Register events LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedAssist.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedPickup.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_WillPickup.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_PickupRequestAcknowledged.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedTank.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_TankReady.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_TankNotReady.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Info_NeedFleetSkills.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Info_UpdateFleetSkills.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_UpdateConfigurationFile.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_SendPickupRequests.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_PickupRequestComplete.ToString()); #endregion #region Attach event targets LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedAssist.ToString(), Handle_SB_Event_Fleet_NeedAssist); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedPickup.ToString(), Handle_SB_Event_Fleet_NeedPickup); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_WillPickup.ToString(), Handle_SB_Event_Fleet_DidPickup); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_PickupRequestAcknowledged.ToString(), Handle_SB_Event_Notify_AcknowledgePickupRequest); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedTank.ToString(), Handle_SB_Event_Fleet_NeedTank); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_TankReady.ToString(), Handle_SB_Event_Fleet_TankReady); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_TankNotReady.ToString(), Handle_SB_Event_Fleet_TankNotReady); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Info_NeedFleetSkills.ToString(), Handle_SB_Event_Info_NeedFleetSkills); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Info_UpdateFleetSkills.ToString(), Handle_SB_Event_Info_UpdateFleetSkills); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString(), Handle_SB_Event_Notify_AcceptFleetInvite); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_UpdateConfigurationFile.ToString(), Handle_SB_Event_Notify_UpdateConfigurationFile); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_SendPickupRequests.ToString(), Handle_SB_Event_Fleet_SendPickupRequests); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_PickupRequestComplete.ToString(), Handle_SB_Event_Fleet_PickupRequestComplete); #endregion //Join the stealthbot relay group LavishScript.ExecuteCommand(String.Format("Uplink RelayGroup -join {0}", RelayGroup)); //Core.StealthBot.Logging.LogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Debug, // "Ctor", String.Format("Joined RelayGroup {0}", RelayGroup))); }
/// <summary> /// Used to issue commands to the Radar. Custom radar name is /// not used for on and off and is optional for zoomin and zoomout /// </summary> /// <param name="command">command</param> /// <param name="name">custom radar name</param> public static int Radar(RadarCommand command, string name = null) { Trace.WriteLine((name == null) ? String.Format("Extension:Radar({0})", command.ToString().ToLower()) : String.Format("Extension:Radar({0}, {1})", command, name)); return (LavishScript.ExecuteCommand((name == null) ? String.Format("Radar {0}", command.ToString().ToLower()) : String.Format("Radar {0} {1}", name, command.ToString().ToLower()))); }
private void SendEvent(string eventData) { var eventString = String.Format("relay \"{0}{1}\" \"Event[{2}]:Execute[{3}]\"", _onlySendToOthers ? "other " : "", _relayGroup, _lsEventName, eventData); _logging.LogTrace(this, _lsEventName, "Sending event. Command: {0}", eventString); LavishScript.ExecuteCommand(eventString); }
private static bool IsMinimumIsxeveVersionLoaded() { string isxeveVersion = null; try { LavishScript.DataParse("${ISXEVE.Version}", ref isxeveVersion); } catch (Exception) { isxeveVersion = null; } if (string.IsNullOrEmpty(isxeveVersion)) { return(false); } var fragments = isxeveVersion.Split('.'); if (fragments.Length != 2) { return(false); } var dateString = fragments[0]; var versionString = fragments[1]; DateTime?date; try { date = DateTime.ParseExact(dateString, "yyyyMMdd", null); } catch (FormatException) { return(false); } int version; if (!int.TryParse(versionString, out version)) { return(false); } if (date > _minimumIsxeveVersionDate) { return(true); } if (date == _minimumIsxeveVersionDate && version >= _minimumIsxeveVersionBuild) { return(true); } return(false); }
/// <summary> /// Echoes a message directly to your chat window(s). /// </summary> /// <param name="message">message</param> /// <param name="type">chat type</param> /// <returns></returns> public static int EQ2Echo(string message, ChatType type = ChatType.None) { Trace.WriteLine((type != ChatType.None) ? String.Format("Extension:EQ2Echo({0}, {1})", message, type) : String.Format("Extension:EQ2Echo({0})", message)); return (LavishScript.ExecuteCommand((type != ChatType.None) ? String.Format("EQ2Echo {0} -chattype {1}", message, type.ToString().ToLower()) : String.Format("EQ2Echo {0}", message))); }
bool Control(object[] Params) { if (!Session.InSpace || !Session.Safe) { return(false); } LavishScript.ExecuteCommand(string.Format("relay \"all other\" Event[UpdateIPCPilots]:Execute[{0},{1},{2},{3},{4}]", Me.CharID, MyShip.ToEntity.HullPct, MyShip.ToEntity.ArmorPct, MyShip.ToEntity.ShieldPct, MyShip.Capacitor / MyShip.MaxCapacitor)); return(false); }
/// <summary> /// Signal to listeners that we are a tank that is in position. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> public void Send_SB_Event_Fleet_TankReady(Int64 sendingFleetMemberID, int solarSystemID) { var methodName = "Send_Fleet_TankReady"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3}]\"", RelayGroup, SB_Events.SB_Event_Fleet_TankReady.ToString(), sendingFleetMemberID, solarSystemID); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
private static bool IsIsxeveLoaded() { var isxEveLoaded = false; try { LavishScript.DataParse("${ISXEVE(exists)}", ref isxEveLoaded); } catch { } return(isxEveLoaded); }
/************************************************************************************/ private static void OnFrame_EventHandler(object sender, LSEventArgs e) { if (!string.IsNullOrEmpty(s_strNewWindowTitle)) { string strCommand = string.Format("windowtext {0}", s_strNewWindowTitle); using (new FrameLock(true)) LavishScript.ExecuteCommand(strCommand); s_strNewWindowTitle = null; } return; }
/// <summary> /// Signal to listeners that we are a tank that is in position. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> public void Send_SB_Event_Fleet_TankReady(int sendingFleetMemberID, int solarSystemID) { string methodName = "Send_Fleet_TankReady"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); string eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3}]\"", RelayGroup, SB_Events.SB_Event_Fleet_TankReady.ToString(), sendingFleetMemberID, solarSystemID); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Debug, methodName, String.Format("Sending {0}", eventString))); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal listeners that we need a fleet tank at a given location. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="isBookMark"></param> /// <param name="destination"></param> public void Send_SB_Event_Fleet_NeedTank(Int64 sendingFleetMemberID, int solarSystemID, bool isBookMark, object destination) { var methodName = "Send_Fleet_NeedTank"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5}]\"", RelayGroup, SB_Events.SB_Event_Fleet_NeedTank, sendingFleetMemberID, solarSystemID, isBookMark, destination); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal to listeners that we will pickup a specific can. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="targetCanEntityID"></param> /// <param name="sendingFleetMemberEntityID"></param> public void Send_SB_Event_Fleet_WillPickup(Int64 sendingFleetMemberID, int solarSystemID, Int64 targetCanEntityID, Int64 sendingFleetMemberEntityID, string sendingFleetMemberName) { var methodName = "Send_Fleet_WillPickup"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6}]\"", RelayGroup, SB_Events.SB_Event_Fleet_WillPickup.ToString(), sendingFleetMemberID.ToString(), solarSystemID.ToString(), targetCanEntityID.ToString(), sendingFleetMemberEntityID.ToString(), sendingFleetMemberName); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
/// <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); }
/// <summary> /// Signal to listeners that they should accept a fleet invite from the sender. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="invitedBy"></param> public void Send_SB_Event_Notify_AcceptFleetInvite(Int64 sendingFleetMemberID, int solarSystemID, string invitedBy) { var methodName = "Send_Notify_AcceptFleetInvite"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4}]\"", RelayGroup, SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString(), sendingFleetMemberID, solarSystemID, invitedBy); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal to listeners that they need to update a configuration file reference. /// </summary> /// <param name="oldFileName"></param> /// <param name="newFileName"></param> public void Send_SB_Event_Notify_UpdateConfigurationFile(string oldFileName, string newFileName) { var methodName = "Send_Notify_UpdateConfigurationFile"; LogTrace(methodName); var eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4}]\"", RelayGroup, SB_Events.SB_Event_Notify_UpdateConfigurationFile.ToString(), StealthBot.ModuleManager.UplinkName, oldFileName, newFileName); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal to listeners that they should accept a fleet invite from the sender. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="invitedBy"></param> public void Send_SB_Event_Notify_AcceptFleetInvite(int sendingFleetMemberID, int solarSystemID, string invitedBy) { string methodName = "Send_Notify_AcceptFleetInvite"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); string eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4}]\"", RelayGroup, SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString(), sendingFleetMemberID, solarSystemID, invitedBy); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Minor, methodName, String.Format("Sending {0}", eventString))); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal to listeners that we will pickup a specific can. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="targetCanEntityID"></param> /// <param name="sendingFleetMemberEntityID"></param> public void Send_SB_Event_Fleet_WillPickup(int sendingFleetMemberID, int solarSystemID, int targetCanEntityID, int sendingFleetMemberEntityID, string sendingFleetMemberName) { string methodName = "Send_Fleet_WillPickup"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); string eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6}]\"", RelayGroup, SB_Events.SB_Event_Fleet_WillPickup.ToString(), sendingFleetMemberID.ToString(), solarSystemID.ToString(), targetCanEntityID.ToString(), sendingFleetMemberEntityID.ToString(), sendingFleetMemberName); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Minor, methodName, String.Format("Sending {0}", eventString))); LavishScript.ExecuteCommand(eventString); }
protected void DowntimeExitAndRelaunch() { Core.StealthBot.Instance.IsEnabled = false; if (Core.StealthBot.Config.MainConfig.RelaunchAfterDowntime) { LavishScriptAPI.LavishScript.ExecuteCommand( String.Format("relay {0} \"TimedCommand 54000 run isboxer -launch \"{1}\"\"", "${SettingXML[InnerSpace.XML].Set[Remote].GetString[Name].Escape}", Core.StealthBot.Config.MainConfig.CharacterSetToRelaunch)); } LavishScript.ExecuteCommand( "uplink TimedCommand 200 kill ${Session}"); Core.StealthBot.OnSaveAndExit(this); }
public void RelayAll(string Command, params string[] Args) { string msg = "relay \"all other\" Event[UpdateGroupControl]:Execute[" + Command; if (Args != null) { foreach (string arg in Args) { msg = msg + ",\"" + arg + "\""; } } msg = msg + "]"; LavishScript.ExecuteCommand(msg); }
/// <summary> /// Signal listeners that we need a fleet tank at a given location. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="isBookMark"></param> /// <param name="destination"></param> public void Send_SB_Event_Fleet_NeedTank(int sendingFleetMemberID, int solarSystemID, bool isBookMark, object destination) { string methodName = "Send_Fleet_NeedTank"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); string eventString = String.Format("relay \"other {0}\" \"Event[{1}]:Execute[{2},{3},{4},{5}]\"", RelayGroup, SB_Events.SB_Event_Fleet_NeedTank.ToString(), sendingFleetMemberID.ToString(), solarSystemID.ToString(), isBookMark.ToString(), destination.ToString()); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Debug, methodName, string.Format("Sending {0}", eventString))); LavishScript.ExecuteCommand(eventString); }
protected void ExitAndRelaunch() { StealthBot.Instance.IsEnabled = false; if (StealthBot.Config.MaxRuntimeConfig.UseRelaunching) { LavishScript.ExecuteCommand( String.Format("relay {0} \"TimedCommand 600 run isboxer -launch \"{1}\"\"", "${SettingXML[InnerSpace.XML].Set[Remote].GetString[Name].Escape}", StealthBot.Config.MaxRuntimeConfig.CharacterSetToRelaunch)); } //This code might not be correct, but the idea is. We want to exit after 5 seconds so we don't undock forever, which is going to get things blown up in low/nullsec. LavishScript.ExecuteCommand("uplink TimedCommand 200 kill ${Session}"); StealthBot.OnSaveAndExit(this); }
/// <summary> /// Signal to listeners what our fleet skills are. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="inBoostShip"></param> /// <param name="leadership"></param> /// <param name="wingCommand"></param> /// <param name="fleetCommand"></param> /// <param name="miningDirector"></param> /// <param name="miningForeman"></param> /// <param name="armoredWarfare"></param> /// <param name="skirmishWarfare"></param> /// <param name="informationWarfare"></param> /// <param name="siegeWarfare"></param> /// <param name="warfareLinkSpecialist"></param> public void Send_SB_Event_Info_UpdateFleetSkills(Int64 sendingFleetMemberID, int solarSystemID, int inBoostShip, int leadership, int wingCommand, int fleetCommand, int miningDirector, int miningForeman, int armoredWarfare, int skirmishWarfare, int informationWarfare, int siegeWarfare, int warfareLinkSpecialist) { var methodName = "Send_UpdateFleetSkills"; LogTrace(methodName); var eventString = String.Format("relay \"{0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14}]\"", RelayGroup, SB_Events.SB_Event_Info_UpdateFleetSkills.ToString(), sendingFleetMemberID, solarSystemID, inBoostShip, leadership, wingCommand, fleetCommand, miningDirector, miningForeman, armoredWarfare, skirmishWarfare, informationWarfare, siegeWarfare, warfareLinkSpecialist); LogMessage(methodName, LogSeverityTypes.Debug, "Sending {0}", eventString); LavishScript.ExecuteCommand(eventString); }
/// <summary> /// Signal to listeners what our fleet skills are. /// </summary> /// <param name="sendingFleetMemberID"></param> /// <param name="solarSystemID"></param> /// <param name="inBoostShip"></param> /// <param name="leadership"></param> /// <param name="wingCommand"></param> /// <param name="fleetCommand"></param> /// <param name="miningDirector"></param> /// <param name="miningForeman"></param> /// <param name="armoredWarfare"></param> /// <param name="skirmishWarfare"></param> /// <param name="informationWarfare"></param> /// <param name="siegeWarfare"></param> /// <param name="warfareLinkSpecialist"></param> public void Send_SB_Event_Info_UpdateFleetSkills(int sendingFleetMemberID, int solarSystemID, int inBoostShip, int leadership, int wingCommand, int fleetCommand, int miningDirector, int miningForeman, int armoredWarfare, int skirmishWarfare, int informationWarfare, int siegeWarfare, int warfareLinkSpecialist) { string methodName = "Send_UpdateFleetSkills"; Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Trace, methodName, string.Empty)); string eventString = String.Format("relay \"{0}\" \"Event[{1}]:Execute[{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14}]\"", RelayGroup, SB_Events.SB_Event_Info_UpdateFleetSkills.ToString(), sendingFleetMemberID, solarSystemID, inBoostShip, leadership, wingCommand, fleetCommand, miningDirector, miningForeman, armoredWarfare, skirmishWarfare, informationWarfare, siegeWarfare, warfareLinkSpecialist); Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Minor, methodName, String.Format("Sending {0}", eventString))); LavishScript.ExecuteCommand(eventString); }
public EventCommunications() : base() { IsEnabled = false; ObjectName = "EventCommunications"; //Register the events we'll be using LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedAssist.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedPickup.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_WillPickup.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_PickupRequestAcknowledged.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_NeedTank.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_TankReady.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Fleet_TankNotReady.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Info_NeedFleetSkills.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Info_UpdateFleetSkills.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString()); LavishScript.Events.RegisterEvent(SB_Events.SB_Event_Notify_UpdateConfigurationFile.ToString()); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedAssist.ToString(), _handle_SB_Event_Fleet_NeedAssist); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedPickup.ToString(), _handle_SB_Event_Fleet_NeedPickup); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_WillPickup.ToString(), _handle_SB_Event_Fleet_DidPickup); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_PickupRequestAcknowledged.ToString(), _handle_SB_Event_Notify_AcknowledgePickupRequest); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_NeedTank.ToString(), _handle_SB_Event_Fleet_NeedTank); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_TankReady.ToString(), _handle_SB_Event_Fleet_TankReady); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Fleet_TankNotReady.ToString(), _handle_SB_Event_Fleet_TankNotReady); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Info_NeedFleetSkills.ToString(), _handle_SB_Event_Info_NeedFleetSkills); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Info_UpdateFleetSkills.ToString(), _handle_SB_Event_Info_UpdateFleetSkills); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_AcceptFleetInvite.ToString(), _handle_SB_Event_Notify_AcceptFleetInvite); LavishScript.Events.AttachEventTarget(SB_Events.SB_Event_Notify_UpdateConfigurationFile.ToString(), _handle_SB_Event_Notify_UpdateConfigurationFile); //Join the stealthbot relay group LavishScript.ExecuteCommand(String.Format("Uplink RelayGroup -join {0}", RelayGroup)); //Core.StealthBot.Logging.OnLogMessage(ObjectName, new LogEventArgs(LogSeverityTypes.Debug, // "Ctor", String.Format("Joined RelayGroup {0}", RelayGroup))); }