Beispiel #1
0
        public void Add(Skill skill, bool placeOnActionBar = true)
        {
            skill.Caster = gameObject;
            Skills.Add(skill);

            if (placeOnActionBar && FindSuitableSlot(skill) != null)
            {
                PlaceOnActionBar(skill);
            }

            SkillAdded?.Invoke(skill);
        }
Beispiel #2
0
        /// <inheritdoc/>
        public virtual void AddSkill(Skill skill)
        {
            var skillIndex = this.AddSkillToList(skill);

            using var writer = this.player.Connection.StartSafeWrite(SkillAdded.HeaderType, SkillAdded.Length);
            _ = new SkillAdded(writer.Span)
            {
                SkillIndex  = skillIndex,
                SkillNumber = (ushort)skill.Number,
            };
            writer.Commit();
        }