using Cysharp.Threading.Tasks; using Lights; using System; using static EndGameConditionChecker; public class GameSessionTerminator { public Action OnTerminate; public void TerminateGame(EndgameReason reason) { OnTerminate?.Invoke(reason); LightSystem.Ef_End(); RankSystem.Instance.UnsubscribeOnScore(); EndGameAnimation().Forget(); } private async UniTaskVoid EndGameAnimation() { await UniTask.Delay(3000); //запустить блэкаут await UniTask.Delay(1000); SceneLoader.LoadScene("Awards"); } }