public override void GiveEffect(UnitBase character)
        {
            if (baseForRecoveryAmount == RecoveryAmountBase.DamageDealt && Math.Abs(numberToHealFrom - (-1)) < 0.001f)
            {
                return;
            }

            switch (target)
            {
            case HealingTarget.Self: character.Heal(GetFinalHealAmount(character));
                return;

            case HealingTarget.Party: PartyManager.Members.ForEach(m => m.Heal(GetFinalHealAmount(character)));
                return;

            case HealingTarget.OtherMember: HealOtherMember(character);
                return;
            }
        }
    private void OnTriggerEnter(Collider collider)
    {
        if (collider.gameObject.tag == "Player")
        {
            UnitBase targetUnit = collider.GetComponent <UnitBase>();
            if (targetUnit == null)
            {
                return;
            }

            if (!targetUnit.IsMaxHealth)
            {
                if (UnitBase.IsRunOnServer)
                {
                    targetUnit.Heal(healthAmount);
                }
                StartCoroutine(RespawnTimer());
            }
        }
    }