public SkillMetadataEventArgs(SkillMetadata skill) { if (skill == null) throw new ArgumentNullException("skill"); this.skill = skill; }
public void AddSkill(SkillMetadata skill) { if (skill == null) { throw new ArgumentNullException("skill"); } string skillName = skill.Name.Trim(); bool wasUpdated = false; if (skills.ContainsKey(skillName)) { wasUpdated = true; } skills[skillName] = skill; if (wasUpdated) { OnSkillChanged(skill); } else { OnSkillAdded(skill); } }
void OnSkillRemoved(SkillMetadata skill) { var handler = this.SkillRemoved; if (handler != null) { handler(this, new SkillMetadataEventArgs(skill)); } }
public SkillMetadataEventArgs(SkillMetadata skill) { if (skill == null) { throw new ArgumentNullException("skill"); } this.skill = skill; }
public SkillMetadata GetSkill(string skillName) { skillName = skillName.Trim(); SkillMetadata skill = null; skills.TryGetValue(skillName, out skill); return(skill); }
public void CopyTo(SkillMetadata other) { other.Name = Name; other.Class = Class; other.GroupName = GroupName; other.ManaCost = ManaCost; other.Cooldown = Cooldown; other.IsAssail = IsAssail; other.OpensDialog = OpensDialog; other.CanImprove = CanImprove; other.RequiresDisarm = RequiresDisarm; }
public bool RenameSkill(string originalName, string newName) { SkillMetadata skill = null; var wasFound = skills.TryRemove(originalName, out skill); if (wasFound) { OnSkillRemoved(skill); skills[newName] = skill; OnSkillAdded(skill); } return(wasFound); }
public void AddSkill(SkillMetadata skill) { if (skill == null) throw new ArgumentNullException("skill"); string skillName = skill.Name.Trim(); bool wasUpdated = false; if (skills.ContainsKey(skillName)) wasUpdated = true; skills[skillName] = skill; if (wasUpdated) OnSkillChanged(skill); else OnSkillAdded(skill); }
public SkillEditorWindow(SkillMetadata skill, bool isEditMode = true) : this() { nameTextBox.Text = originalName = skill.Name; groupNameTextBox.Text = skill.GroupName; manaUpDown.Value = skill.ManaCost; cooldownTextBox.Text = skill.Cooldown.ToShortEnglish(); assailCheckBox.IsChecked = skill.IsAssail; dialogCheckBox.IsChecked = skill.OpensDialog; improveCheckBox.IsChecked = !skill.CanImprove; disarmCheckBox.IsChecked = skill.RequiresDisarm; SetPlayerClass(skill.Class); this.IsEditMode = isEditMode; if (isEditMode) this.Title = "Edit Skill"; }
void OnSkillRemoved(SkillMetadata skill) { var handler = this.SkillRemoved; if (handler != null) handler(this, new SkillMetadataEventArgs(skill)); }
void EditSkill(SkillMetadata skill) { var originalName = skill.Name; var skillWindow = new SkillEditorWindow(skill); skillWindow.Owner = this; var result = skillWindow.ShowDialog(); if (!result.HasValue || !result.Value) return; skillWindow.Skill.CopyTo(skill); BindingOperations.GetBindingExpression(skillListView, ListView.ItemsSourceProperty).UpdateTarget(); if (!string.Equals(skill.Name, originalName, StringComparison.Ordinal)) SkillMetadataManager.Instance.RenameSkill(originalName, skill.Name); skillListView.SelectedItem = skill; skillListView.ScrollIntoView(skill); }