/// <summary> /// The player learns all abilities of this skill. /// </summary> public void LearnAllAbilities() { foreach (var ability in SkillHandler.GetAbilities(SkillLine.Id)) { if (ability != null) { m_skills.Owner.Spells.AddSpell(ability.Spell); } } }
/// <summary>The player unlearns all abilities of this skill.</summary> public void RemoveAllAbilities() { foreach (SkillAbility ability in SkillHandler.GetAbilities(this.SkillLine.Id)) { if (ability != null) { this.m_skills.Owner.Spells.Remove(ability.Spell); } } }
/// <summary> /// Add a new Skill to this SkillCollection if its not a profession or the character still has professions left /// </summary> public Skill Add(SkillId skill, uint value, uint max, bool ignoreRestrictions) { return(Add(SkillHandler.Get(skill), value, max, ignoreRestrictions)); }
/// <summary> /// Adds and returns a skill with max values /// </summary> public void LearnMax(SkillId id) { LearnMax(SkillHandler.Get(id)); }
public static SkillAbility GetAbility(SkillId skill, SpellId spell) { return(Array.Find <SkillAbility>(SkillHandler.GetAbilities(skill), (Predicate <SkillAbility>)(ability => ability.Spell.SpellId == spell))); }