Exemple #1
0
        private void OnSkillDroppedOut(Skill skill)
        {
            if (skill.Type == SkillType.Weapon)
            {
                return;
            }

            SkillRemoved?.Invoke(skill);
        }
Exemple #2
0
        /// <inheritdoc/>
        public virtual void RemoveSkill(Skill skill)
        {
            var skillIndex = this.SkillList.IndexOf(skill);

            using var writer = this.player.Connection.StartSafeWrite(SkillRemoved.HeaderType, SkillRemoved.Length);
            _ = new SkillRemoved(writer.Span)
            {
                SkillIndex  = (byte)skillIndex,
                SkillNumber = (ushort)skill.Number,
            };
            this.SkillList[skillIndex] = null;
            writer.Commit();
        }
Exemple #3
0
        public void Remove(int skillId)
        {
            var skill = Skills.FirstOrDefault(s => s.Id == skillId);

            if (skill == null)
            {
                return;
            }

            if (IsOnActionBar(skill.Id))
            {
                RemoveFromActionBar(skill.Id);
            }

            Skills.Remove(skill);
            SkillRemoved?.Invoke(skill);
        }