/// <summary> /// Casts the spell that is defined in the subclass. /// </summary> /// <param name="position">The position for the spell.</param> public void CastSpell(Vector3 position) { if (!_mana.CanCastSpell(SpellCost)) { return; } StartCoroutine(Cast(position)); _mana.CastSpell(SpellCost); }