public virtual void RemoveAbility(SkillsManager skillsManager)
 {
     Installed       = false;
     InstallPosition = new Vector2Int();
     OnCommandLine   = false;
     skillsManager.RemoveSkill(skill);
 }
예제 #2
0
        public void RemoveSkillActuallyRemovesSkill()
        {
            var skillsManager = new SkillsManager(0);
            var id            = skillsManager.AddSkill(new Skill
            {
                Name   = "TestSkill",
                Rating = skillsManager.MaxRating
            });

            skillsManager.RemoveSkill(id);
            Assert.That(skillsManager.GetSkills(), Is.Empty);
            Assert.That(skillsManager.GetSkill(id), Is.Null);
        }
예제 #3
0
    public void DoThrow()
    {
        if (absorbObject != null && objectAbsorbed)
        {
            absorbObject.SetActive(true);

            objectAbsorbed = false;

            skillsManager.RemoveSkill();

            absorbObject.transform.parent = null;

            Rigidbody2D rb = absorbObject.GetComponent <Rigidbody2D>();

            if (rb != null)
            {
                rb.AddForce(new Vector2(throwForce * direction, 0), ForceMode2D.Impulse);
            }

            SoundManager.instance.Play("Throw");

            RemoveItems();
        }
    }
예제 #4
0
        public void RemoveSkillForNonExistantSkillThrows()
        {
            var skillsManager = new SkillsManager(0);

            Assert.Throws <ArgumentException>(() => skillsManager.RemoveSkill(0));
        }