/// <summary>
        /// Check if quest has multiple same objectives
        /// </summary>
        /// <param name="objective"></param>
        /// <returns></returns>
        private bool CanAcceptObjective(ObjectiveSO objective)
        {
            int count1 = 0, count2 = 0;

            for (int i = 0; i < _currentQuest.Objective.Count; i++)
            {
                if (_currentQuest.Objective[i].ObjectiveName.Equals(objective.ObjectiveName))
                {
                    count1++;
                }
            }

            if (count1 == 0)
            {
                return(false);
            }

            for (int i = 0; i < _submittedObjectives.Count; i++)
            {
                if (_submittedObjectives[i].ObjectiveName.Equals(objective.ObjectiveName))
                {
                    count2++;
                }
            }

            return(count1 > count2);
        }
 /// <summary>
 /// Checking if objective can be submitted
 /// </summary>
 /// <param name="objective"></param>
 private void TryToSubmitObjective(ObjectiveSO objective)
 {
     if (_currentQuest.Objective.Contains(objective) && CanAcceptObjective(objective))
     {
         SubmitObjective(objective);
     }
     else
     {
         TooltipActionEvent?.Invoke(tooltipTextSO.WrongObjective);
     }
 }
        /// <summary>
        /// Add objective to the _submittedObjectives and check if quest can be finished
        /// </summary>
        /// <param name="objective"></param>
        private void SubmitObjective(ObjectiveSO objective)
        {
            _submittedObjectives.Add(objective);

            ObjectiveSubmittedEvent?.Invoke();
            string endValue = string.Format(tooltipTextSO.ObjectiveSubmitted, objective.ObjectiveName);

            TooltipActionEvent?.Invoke(endValue);

            if (_submittedObjectives.Count == _currentQuest.Objective.Count)
            {
                FinishQuest();
            }
        }