Пример #1
0
        public async UniTask ReturnAsync()
        {
            await _transition.FadeInAsync(_transitionDuration / 2f);

            if (_currentScreen != null)
            {
                _currentScreen.Hide();
            }

            _currentScreen = null;

            await _transition.FadeOutAsync(_transitionDuration / 2f);
        }
Пример #2
0
        /// <summary>
        /// Transitions to the given <paramref name="screen"/> asynchronously.
        /// </summary>
        /// <param name="screen">The screen to transition to.</param>
        /// <returns>A task to be awaited representing the fade transition.</returns>
        private async UniTask TransitionToAsync(Screen screen)
        {
            await _transition.FadeInAsync(_transitionDuration / 2f);

            if (_currentScreen != null)
            {
                _currentScreen.Hide();
            }

            screen.Show();
            _currentScreen = screen;

            await _transition.FadeOutAsync(_transitionDuration / 2f);
        }
Пример #3
0
 private void StartMatch(MatchSettings settings)
 {
     OnStartMatch?.Invoke(settings);
     _currentScreen = null;
 }