public void OnExitRound() { if (GameManager.Instance.ScoreManager.Score != GameManager.Instance.ScoreManager.LimitBlocksInRound && State != StateGame.WIN_STATE) { GameManager.Instance.ScoreManager.Stage = 1; State = StateGame.LOSE_ROUND; Vibration.Lose(); } _block.Collision.EventNextBlock -= OnNextBlock; _block.Movement.EventExit -= OnExitRound; foreach (var remainder in GameManager.Instance.Remainders) { Destroy(remainder.gameObject); } GameManager.Instance.Remainders.Clear(); GameManager.Instance.Base.GetComponentInChildren <BlockCollisionBase>().Collision = BlockCollisionBase.TypeCollision.Second; GameManager.Instance.BackgroundGroundFX.Stop(); if (GameManager.Instance.ScoreManager.Score != GameManager.Instance.ScoreManager.LimitBlocksInRound) { Destroy(_block.gameObject); } StartCoroutine(WaitDel()); }