public override void Start() { PBLog.Debug("Start Called"); IsRunning = true; AttachEvents(); // make sure bank frame is closed on start to ensure Util.IsGBankFrameOpen is synced Util.CloseBankFrames(); if (IsExecutingActionWhileHonorbuddyIsStopped) { IsExecutingActionWhileHonorbuddyIsStopped = false; ResetSecondaryBot(); } else { // reset all actions Reset(); if (DynamicCodeCompiler.CodeIsModified) { DynamicCodeCompiler.GenorateDynamicCode(); } } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } if (!SecondaryBot.Initialized) { SecondaryBot.DoInitialize(); } }
private void Init() { try { if (!_init) { Debug("Initializing ..."); if (!Directory.Exists(BotPath)) { Directory.CreateDirectory(BotPath); } DynamicCodeCompiler.WipeTempFolder(); // force Tripper.Tools.dll to load........ new Vector3(0, 0, 0); MySettings = new ProfessionBuddySettings( Path.Combine(Logging.ApplicationPath, string.Format(@"Settings\{0}\{0}[{1}-{2}].xml", Name, Me.Name, Lua.GetReturnVal <string>( "return GetRealmName()", 0))) ); GlobalSettings = new GlobalPBSettings( Path.Combine(Logging.ApplicationPath, string.Format(@"Settings\{0}\{0}.xml", Name))); IsTradeSkillsLoaded = false; MaterialList = new Dictionary <uint, int>(); TradeSkillList = new List <TradeSkill>(); LoadProtectedItems(); LoadTradeSkills(); DataStore = new DataStore(); DataStore.ImportDataStore(); // load localized strings LoadStrings(); BotBase bot = BotManager.Instance.Bots.Values.FirstOrDefault( b => b.Name.IndexOf(MySettings.LastBotBase, StringComparison.InvariantCultureIgnoreCase) >= 0); if (bot != null) { _root.SecondaryBot = bot; } // check for Professionbuddy updates new Thread(Updater.CheckForUpdate) { IsBackground = true }.Start(); _init = true; } } catch (Exception ex) { Logging.Write(Color.Red, ex.ToString()); } }
private void Init() { try { if (!_init) { Lua.Events.AttachEvent("BAG_UPDATE", OnBagUpdate); Lua.Events.AttachEvent("SKILL_LINES_CHANGED", OnSkillUpdate); Lua.Events.AttachEvent("SPELLS_CHANGED", OnSpellsChanged); Lua.Events.AttachEvent("BANKFRAME_OPENED", Util.OnBankFrameOpened); Lua.Events.AttachEvent("BANKFRAME_CLOSED", Util.OnBankFrameClosed); Debug("Initializing ..."); if (!Directory.Exists(BotPath)) { Directory.CreateDirectory(BotPath); } DynamicCodeCompiler.WipeTempFolder(); // force Tripper.Tools.dll to load........ new Tripper.Tools.Math.Vector3(0, 0, 0); MySettings = new ProfessionBuddySettings( Path.Combine(Logging.ApplicationPath, string.Format(@"Settings\{0}\{0}[{1}-{2}].xml", Name, Me.Name, Lua.GetReturnVal <string>("return GetRealmName()", 0))) ); IsTradeSkillsLoaded = false; MaterialList = new Dictionary <uint, int>(); TradeSkillList = new List <TradeSkill>(); LoadProtectedItems(); LoadTradeSkills(); DataStore = new DataStore(); DataStore.ImportDataStore(); if (!string.IsNullOrEmpty(MySettings.LastProfile)) { try { LoadProfile(string.IsNullOrEmpty(_profileToLoad) ? MySettings.LastProfile : _profileToLoad); } catch (Exception ex) { Err(ex.ToString()); } } BotBase bot = BotManager.Instance.Bots.Values.FirstOrDefault(b => b.Name.IndexOf(MySettings.LastBotBase, StringComparison.InvariantCultureIgnoreCase) >= 0); if (bot != null) { _root.SecondaryBot = bot; } //HonorBuddyProfilePath = ProfileManager.XmlLocation; _init = true; } } catch (Exception ex) { Logging.Write(Color.Red, ex.ToString()); } }
public static void LoadPBProfile(string path, XElement element = null) { PbProfile profile = null; if (!string.IsNullOrEmpty(path)) { if (File.Exists(path)) { PBLog.Log("Loading profile {0} from file", Path.GetFileName(path)); profile = PbProfile.LoadFromFile(path); Instance.MySettings.LastProfile = path; } else { PBLog.Warn("Profile: {0} does not exist", path); Instance.MySettings.LastProfile = path; return; } } else if (element != null) { PBLog.Log("Loading profile from Xml element"); profile = PbProfile.LoadFromXml(element); } if (profile == null) { return; } Instance.CurrentProfile = profile; Instance.MySettings.LastProfile = path; Instance.ProfileSettings.Load(); DynamicCodeCompiler.GenorateDynamicCode(); Instance.UpdateMaterials(); if (MainForm.IsValid) { MainForm.Instance.InitActionTree(); MainForm.Instance.RefreshTradeSkillTabs(); } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } Instance.MySettings.Save(); }
private void MainFormLoad(object sender, EventArgs e) { if (!_pb.IsTradeSkillsLoaded) { _pb.OnTradeSkillsLoaded -= OnTradeSkillsLoadedEventHandler; _pb.OnTradeSkillsLoaded += OnTradeSkillsLoadedEventHandler; } else { Initialize(); } if (DynamicCodeCompiler.CodeWasModified) { DynamicCodeCompiler.GenorateDynamicCode(); } }
private void MainFormLoad(object sender, EventArgs e) { if (!ProfessionbuddyBot.Instance.IsTradeSkillsLoaded) { ProfessionbuddyBot.Instance.OnTradeSkillsLoaded -= OnTradeSkillsLoadedEventHandler; ProfessionbuddyBot.Instance.OnTradeSkillsLoaded += OnTradeSkillsLoadedEventHandler; } else { Initialize(); } if (DynamicCodeCompiler.CodeIsModified) { DynamicCodeCompiler.GenorateDynamicCode(); } }
public override void Start() { Debug("Start Called"); IsRunning = true; if (!_isChangingBot) { // reset all actions PbBehavior.Reset(); if (DynamicCodeCompiler.CodeWasModified) { DynamicCodeCompiler.GenorateDynamicCode(); } } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } try { try { if (SecondaryBot != null) { SecondaryBot.Start(); } } catch (Exception ex) { Logging.WriteDebug(ex.ToString()); } } catch (Exception ex) { if (SecondaryBot != null) { Err("{0} {1}", SecondaryBot.Name, ex); } } }
public static void LoadPBProfile(string path) { bool preloadedHBProfile = false; if (File.Exists(path)) { Log("Loading profile {0}", Path.GetFileName(path)); PbDecorator idComp = Instance.CurrentProfile.LoadFromFile(path); if (idComp != null) { Instance.PbBehavior = idComp; Instance.MySettings.LastProfile = path; Instance.ProfileSettings.Load(); DynamicCodeCompiler.GenorateDynamicCode(); Instance.UpdateMaterials(); preloadedHBProfile = PreLoadHbProfile(); if (MainForm.IsValid) { MainForm.Instance.InitActionTree(); MainForm.Instance.RefreshTradeSkillTabs(); } } } else { Err("Profile: {0} does not exist", path); Instance.MySettings.LastProfile = path; return; } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } if (!preloadedHBProfile && LastProfileIsHBProfile && !string.IsNullOrEmpty(_lastProfilePath)) { ProfileManager.LoadNew(_lastProfilePath, true); } Instance.MySettings.Save(); }
public static bool LoadProfile(string path) { if (File.Exists(path)) { Log("Loading profile {0}", Path.GetFileName(path)); PbDecorator idComp = Instance.CurrentProfile.LoadFromFile(path); if (idComp != null) { Instance.PbBehavior = idComp; Instance.MySettings.LastProfile = path; Instance.ProfileSettings.Load(); DynamicCodeCompiler.GenorateDynamicCode(); Instance.UpdateMaterials(); PreLoadHbProfile(); if (MainForm.IsValid) { MainForm.Instance.InitActionTree(); MainForm.Instance.RefreshTradeSkillTabs(); } } else { return(false); } } else { Err("Profile: {0} does not exist", path); Instance.MySettings.LastProfile = path; return(false); } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } Instance.MySettings.Save(); return(true); }
public override void Start() { Debug("Start Called"); IsRunning = true; // reattach lua events on bot start in case it they get destroyed from loging out of game Lua.Events.DetachEvent("BAG_UPDATE", OnBagUpdate); Lua.Events.DetachEvent("SKILL_LINES_CHANGED", OnSkillUpdate); Lua.Events.DetachEvent("SPELLS_CHANGED", OnSpellsChanged); Lua.Events.DetachEvent("BANKFRAME_OPENED", Util.OnBankFrameOpened); Lua.Events.DetachEvent("BANKFRAME_CLOSED", Util.OnBankFrameClosed); Lua.Events.AttachEvent("BAG_UPDATE", OnBagUpdate); Lua.Events.AttachEvent("SKILL_LINES_CHANGED", OnSkillUpdate); Lua.Events.AttachEvent("SPELLS_CHANGED", OnSpellsChanged); Lua.Events.AttachEvent("BANKFRAME_OPENED", Util.OnBankFrameOpened); Lua.Events.AttachEvent("BANKFRAME_CLOSED", Util.OnBankFrameClosed); if (!_isChangingBot) { // reset all actions PbBehavior.Reset(); if (DynamicCodeCompiler.CodeWasModified) { DynamicCodeCompiler.GenorateDynamicCode(); } } if (MainForm.IsValid) { MainForm.Instance.UpdateControls(); } if (!_firstStartDone) { try { if (!string.IsNullOrEmpty(_profileToLoad)) { LoadPBProfile(_profileToLoad); LastProfileIsHBProfile = false; } else if (!string.IsNullOrEmpty(MySettings.LastProfile)) { LoadPBProfile(MySettings.LastProfile); } } catch (Exception ex) { Err(ex.ToString()); } _firstStartDone = true; } try { if (SecondaryBot != null) { SecondaryBot.Start(); } } catch (Exception ex) { Logging.WriteDebug(ex.ToString()); } }
public override void Initialize() { try { if (!_init) { PBLog.Debug("Initializing ..."); Util.ScanForOffsets(); if (!Directory.Exists(BotPath)) { Directory.CreateDirectory(BotPath); } DynamicCodeCompiler.WipeTempFolder(); // force Tripper.Tools.dll to load........ new Vector3(0, 0, 0); MySettings = new ProfessionBuddySettings( Path.Combine( Utilities.AssemblyDirectory, string.Format(@"Settings\{0}\{0}[{1}-{2}].xml", Name, Me.Name, Lua.GetReturnVal <string>("return GetRealmName()", 0)))); IsTradeSkillsLoaded = false; LoadTradeSkills(); DataStore = new DataStore(); DataStore.ImportDataStore(); LoadTradeskillTools(); // load localized strings LoadStrings(); // load the previous BotBase bot = BotManager.Instance.Bots.Values.FirstOrDefault( b => b.Name.IndexOf(MySettings.LastBotBase, StringComparison.InvariantCultureIgnoreCase) >= 0); if (bot == null) { // look for combat bot, otherwise select first bot if combat bot is not found bot = BotManager.Instance.Bots.Values.FirstOrDefault(b => b.GetType().ToString() == "CombatBot") ?? BotManager.Instance.Bots.Values.FirstOrDefault(); MySettings.LastBotBase = bot.Name; MySettings.Save(); } SecondaryBot = bot; bot.DoInitialize(); try { if (!string.IsNullOrEmpty(_profileToLoad)) { LoadPBProfile(_profileToLoad); } else if (!string.IsNullOrEmpty(MySettings.LastProfile)) { LoadPBProfile(MySettings.LastProfile); } } catch (Exception ex) { PBLog.Warn(ex.ToString()); } _init = true; } } catch (Exception ex) { Logging.Write(Colors.Red, ex.ToString()); } }