public void OnDestroyScene()
    {
        _scoreManager.OnComboChange     -= _uiManager.UpdateCombo;
        _scoreManager.OnNewScoreChange  -= _uiManager.UpdateNewScore;
        _scoreManager.OnMainScoreChange -= _uiManager.UpdateScore;
        _scoreManager.OnMainScoreChange -= _belt.CheckPointsThreshold;
        _scoreManager.OnMainScoreChange -= _gemSpawner.CheckPointsThreshold;

        ComboStripe.OnTimeout -= _uiManager.GlideNewScore;
        ComboStripe.OnTimeout -= _scoreManager.BreakCombo;

        ComboStripe comboStripe = FindObjectOfType <ComboStripe>();

        _scoreManager.OnTimeUpdate -= comboStripe.UpdateTime;

        Conteiner.OnColorMatch -= _scoreManager.CheckForCombo;

        NewScoreText.OnGlideFinished -= _scoreManager.ScoreGlidedToMainScore;
        NewScoreText.OnGlideFinished -= _uiManager.HideCombo;
        // NewScoreText.OnGlideFinished -= ComboSounds.Instance.PlayRandomComboSound;
    }
    private void Start()
    {
        //update UI callbacks
        _scoreManager.OnComboChange     += _uiManager.UpdateCombo;
        _scoreManager.OnNewScoreChange  += _uiManager.UpdateNewScore;
        _scoreManager.OnMainScoreChange += _uiManager.UpdateScore;
        _scoreManager.OnMainScoreChange += _belt.CheckPointsThreshold;
        _scoreManager.OnMainScoreChange += _gemSpawner.CheckPointsThreshold;
        //update UI comboStripe
        ComboStripe.OnTimeout += _uiManager.GlideNewScore;
        ComboStripe.OnTimeout += _scoreManager.BreakCombo;
        // UpdateTime combostripe
        ComboStripe comboStripe = FindObjectOfType <ComboStripe>();

        _scoreManager.OnTimeUpdate += comboStripe.UpdateTime;
        // container callback
        Conteiner.OnColorMatch += _scoreManager.CheckForCombo;
        //adding newScore to mainScore callback
        NewScoreText.OnGlideFinished += _scoreManager.ScoreGlidedToMainScore;
        NewScoreText.OnGlideFinished += _uiManager.HideCombo;
        //NewScoreText.OnGlideFinished += ComboSounds.Instance.PlayRandomComboSound;
    }