private void OnTriggerEnter(Collider other) { if (other.TryGetComponent <Player>(out var player)) { playerFinished = true; ControllManager.Instance.RemoveControl(); var racer = other.GetComponent <RacerStatus>(); if (racer != null) { racer.finished = true; OnPlayerCrossFinish?.Invoke(racer.GetRacerValues()); } PlayerDataHolder.AddGameCount(); OnCrossFinishLine?.Invoke(); } else if (other.TryGetComponent <OpponentBarin>(out var enemy)) { if (playerFinished == false) { playerPlace++; var racer = other.GetComponent <RacerStatus>(); if (racer != null) { racer.finished = true; OnEnemyCrossFinish?.Invoke(racer.GetRacerValues()); } } OnCrossFinishLineEnemy?.Invoke(enemy); } }