private void InitializeButtons() { try { ResetTVarsCommand = new RelayCommand( (parameter) => { try { if (MessageBox.Show( "Are you sure you want to reset all Trinity Variables?", "Confirm Reset All", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { V.ResetAll(); } } catch (Exception ex) { Logger.Log("Exception Resetting TVars: {0}", ex); } }); SaveTVarsCommand = new RelayCommand( (parameter) => { try { V.Save(); } catch (Exception ex) { Logger.Log("Exception saving TVars: {0}", ex); } }); DumpTVarsCommand = new RelayCommand( (parameter) => { try { V.Dump(); } catch (Exception ex) { Logger.Log("Exception Dumping TVars: {0}", ex); } }); } catch (Exception ex) { Logger.LogNormal("Exception in InitializeButtons: {0}", ex.ToString()); } }
/// <summary> /// Initializes a new instance of the <see cref="ConfigViewModel" /> class. /// </summary> /// <param name="model">The model.</param> public ConfigViewModel(TrinitySetting model) { try { _OriginalModel = model; _Model = new TrinitySetting(); _OriginalModel.CopyTo(_Model); InitializeResetCommand(); SaveCommand = new RelayCommand( parameter => { try { if (Trinity.StashRule == null && _Model.Loot.ItemFilterMode == ItemFilterMode.TrinityWithItemRules) { // Load interpreter for the first time if needed Trinity.StashRule = new Interpreter(); } _Model.CopyTo(_OriginalModel); _OriginalModel.Save(); if (_Model.Advanced.TPSEnabled != _OriginalModel.Advanced.TPSEnabled) BotManager.SetBotTicksPerSecond(); if (_Model.Advanced.UnstuckerEnabled != _OriginalModel.Advanced.UnstuckerEnabled) BotManager.SetUnstuckProvider(); if (_Model.Loot.ItemFilterMode != _OriginalModel.Loot.ItemFilterMode) BotManager.SetItemManagerProvider(); CacheData.FullClear(); UsedProfileManager.SetProfileInWindowTitle(); UILoader.CloseWindow(); } catch (Exception ex) { Logger.Log("Exception in UI SaveCommand {0}", ex); } }); DumpBackpackCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping Backpack Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.Backpack); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception dumping Backpack: {0}", ex); } }); DumpQuickItemsCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nQuick Dumping Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpQuickItems(); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception Quick Dumping: {0}", ex); } }); DumpAllItemsCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping ALL Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.All); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception Dumping ALL Items: {0}", ex); } }); DumpSkillsAndItemsCommand = new RelayCommand( parameter => { try { UILoader.CloseWindow(); DebugUtil.LogBuildAndItems(TrinityLogLevel.Info); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception Dumping Skill/Rune/Passive Items: {0}", ex); } }); DumpInvalidItemsCommand = new RelayCommand( parameter => { try { UILoader.CloseWindow(); DebugUtil.LogInvalidItems(TrinityLogLevel.Info); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception Dumping Invalid Items: {0}", ex); } }); DumpItemSNOReference = new RelayCommand( parameter => { try { UILoader.CloseWindow(); DebugUtil.DumpItemSNOReference(); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception in DumpItemSNOReference: {0}", ex); } }); DumpMerchantItemsCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping Merchant Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.Merchant); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception dumping Merchant: {0}", ex); } }); DumpEquippedCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping Equipped Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.Equipped); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception dumping Equipped: {0}", ex); } }); DumpGroundItemsCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping Ground Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.Ground); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception dumping Ground: {0}", ex); } }); DumpStashCommand = new RelayCommand( parameter => { try { Logger.Log( "\n############################################\n" + "\nDumping Stash Items. This will hang your client. Please wait....\n" + "##########################"); UILoader.CloseWindow(); TrinityItemManager.DumpItems(TrinityItemManager.DumpItemLocation.Stash); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "Exception dumping Stash: {0}", ex); } }); TestScoreCommand = new RelayCommand( parameter => { try { ItemValuation.TestScoring(); //UILoader.CloseWindow(); } catch (Exception ex) { Logger.Log(LogCategory.UserInformation, "{0}", ex); } }); HelpLinkCommand = new RelayCommand( parameter => { var link = parameter as string; if (!string.IsNullOrWhiteSpace(link)) { Process.Start(link); } }); ConfigureLootToHunting = new RelayCommand( parameter => ConfigHuntingLoot()); ConfigureLootToQuesting = new RelayCommand( parameter => ConfigQuestingLoot()); LoadItemRuleSetCommand = new RelayCommand( parameter => { try { LoadItemRulesPath(); } catch (Exception ex) { Logger.Log("Exception in LoadItemRuleSetCommand: {0}", ex); } }); OpenTVarsCommand = new RelayCommand( parameter => { try { V.ValidateLoad(); TVarsViewModel.CreateWindow().Show(); } catch (Exception ex) { Logger.Log("Exception in OpenTVarsCommand: {0}", ex); } }); UseGlobalConfigFileCommand = new RelayCommand( parameter => { DialogResult rusure = MessageBox.Show("This will force all bots running under this Demonbuddy directory to use a shared configuration file.\n" + "You can undo this by removing the Trinity.xml file under your Demonbuddy settings directory. \n" + "Are you sure?", "Confirm global settings", MessageBoxButtons.OKCancel); if (rusure == DialogResult.OK) { Trinity.Settings.Save(true); } }); DumpSkillsCommand = new RelayCommand( parameter => { CacheData.Hotbar.Dump(); UILoader.CloseWindow(); }); } catch (Exception ex) { Logger.LogError("Error creating Trinity View Model {0}", ex); } }
/// <summary> /// Initializes the Reset commands. /// </summary> private void InitializeResetCommand() { try { ResetMiscCommand = new RelayCommand( parameter => _Model.Combat.Misc.Reset()); ResetBarbCommand = new RelayCommand( parameter => { _Model.Combat.Barbarian.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetCrusaderCommand = new RelayCommand( parameter => { _Model.Combat.Crusader.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetMonkCommand = new RelayCommand( parameter => { _Model.Combat.Monk.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetWizardCommand = new RelayCommand( parameter => { _Model.Combat.Wizard.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetWitchDoctorCommand = new RelayCommand( parameter => { _Model.Combat.WitchDoctor.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetDemonHunterCommand = new RelayCommand( parameter => { _Model.Combat.DemonHunter.Reset(); _Model.Combat.AvoidanceRadius.Reset(); }); ResetWorldObjectCommand = new RelayCommand( parameter => _Model.WorldObject.Reset()); ResetItemCommand = new RelayCommand( parameter => _Model.Loot.Pickup.Reset()); ResetItemRulesCommand = new RelayCommand( parameter => _Model.Loot.ItemRules.Reset()); ReloadScriptRulesCommand = new RelayCommand( parameter => { try { _Model.CopyTo(_OriginalModel); _OriginalModel.Save(); if (Trinity.StashRule == null) Trinity.StashRule = new Interpreter(); if (Trinity.StashRule != null) { BotMain.PauseWhile(Trinity.StashRule.reloadFromUI); } } catch (Exception ex) { Logger.Log("Exception in ReloadScriptRulesCommand: {0}", ex); } } ); ResetTownRunCommand = new RelayCommand( parameter => _Model.Loot.TownRun.Reset()); ResetAdvancedCommand = new RelayCommand( parameter => _Model.Advanced.Reset()); ResetNotificationCommand = new RelayCommand( parameter => _Model.Notification.Reset()); ResetAllCommand = new RelayCommand( parameter => _Model.UserRequestedReset()); } catch (Exception ex) { Logger.LogError("Exception initializing commands {0}", ex); } }
public void LoadCommands() { AddRequiredRuleCommand = new RelayCommand(parameter => { try { if (parameter == null) { Logger.Log("Parameter = null in AddRequiredRuleCommand {0}", parameter.ToString()); return; } Logger.Log("AddOptionalRuleCommand {0}", parameter.ToString()); var item = parameter as ComboBoxItem; var selectedPropertyName = item != null ? item.Content.ToString() : parameter.ToString(); AddRule(selectedPropertyName, RuleType.Required); } catch (Exception ex) { Logger.Log("Exception in AddRequiredRuleCommand: {0} {1}", ex.Message, ex.InnerException); } }); AddOptionalRuleCommand = new RelayCommand(parameter => { try { if (parameter == null) { Logger.Log("Parameter = null in AddRequiredRuleCommand {0}", parameter.ToString()); return; } Logger.Log("AddOptionalRuleCommand {0}", parameter.ToString()); var item = parameter as ComboBoxItem; var selectedPropertyName = item != null ? item.Content.ToString() : parameter.ToString(); AddRule(selectedPropertyName, RuleType.Optional); } catch (Exception ex) { Logger.Log("Exception in AddRequiredRuleCommand: {0} {1}", ex.Message, ex.InnerException); } }); RemoveRuleCommand = new RelayCommand(parameter => { try { var lRule = parameter as LRule; if (lRule == null) return; Logger.Log("RemoveRuleCommand: {0}", lRule.Name); Rules.Remove(lRule); OnPropertyChanged("Rules"); OnPropertyChanged( lRule.RuleType + "Rules"); } catch (Exception ex) { Logger.Log("Exception in AddRequiredRuleCommand: {0} {1}", ex.Message, ex.InnerException); } }); }