private void SaveCurrentBehavior() { if (_behavior.Name != string.Empty) { _behavior.ResetControllers(); foreach (Node node in BeComRules.Nodes) { var rule = (Rule)node.Tag; rule.Priority = node.Index; _behavior.CombatController.AddRule(rule); } foreach (Node node in BeBuffRules.Nodes) { var rule = (Rule)node.Tag; rule.Priority = node.Index; _behavior.BuffController.AddRule(rule); } foreach (Node node in BePullRules.Nodes) { var rule = (Rule)node.Tag; rule.Priority = node.Index; _behavior.PullController.AddRule(rule); } foreach (Node node in BeRestRules.Nodes) { var rule = (Rule)node.Tag; rule.Priority = node.Index; _behavior.RestController.AddRule(rule); } foreach (Node node in BePrePullRules.Nodes) { var rule = (Rule)node.Tag; rule.Priority = node.Index; _behavior.PrePullController.AddRule(rule); } _behavior.CombatDistance = BeCombatDistance.Value; _behavior.PullDistance = BePullDistance.Value; _behavior.PrePullDistance = BePrePullDistance.Value; _behavior.UseAutoAttack = BeEnableAutoAttack.Checked; _behavior.SendPet = BeSendPet.Checked; _behavior.GlobalCooldown = BeGlobalCooldown.Value; _behavior.Save(); } }
private void BeTbNewBehaviorPreviewKeyDown(object sender, PreviewKeyDownEventArgs e) { if (e.KeyValue == 13) { SaveCurrentBehavior(); _behavior = new BehaviorController { Name = BeTBNewBehavior.Text }; _behavior.ResetControllers(); ClearTree(BeComRules); ClearTree(BePullRules); ClearTree(BePrePullRules); ClearTree(BeBuffRules); ClearTree(BeRestRules); BeTBSelectBehavior.Items.Add(_behavior.Name); BeTBSelectBehavior.SelectedIndex = BeTBSelectBehavior.FindStringExact(_behavior.Name); BeTBNewBehavior.Text = "Enter name and press return to create new behavior."; PveBehaviorSettings.LoadedBeharvior = _behavior.Name; SaveCurrentBehavior(); LoadBehavior(); } }