Exemplo n.º 1
0
        public void Transition(MenuStages currentStage, MenuStages nextStage)
        {
            _currentStage = currentStage;
            _nextStage    = nextStage;

            if (_state == TransitionState.Idle)
            {
                // Only allow transitions to start from idle
                _state = TransitionState.FadeIn;
            }
            else
            {
                Debug.LogError("Attempting to transition stages while a transition is already happening!");
            }
        }
Exemplo n.º 2
0
        // Transition TO Black
        private void FadeInComplete()
        {
            GameObject currentStageGameObject = GetStageGameObject(_currentStage);
            GameObject nextStageGameObject    = GetStageGameObject(_nextStage);

            if (currentStageGameObject != null && nextStageGameObject != null)
            {
                currentStageGameObject.SetActive(false);
                nextStageGameObject.SetActive(true);

                // Update stage states
                _currentStage = _nextStage;
                _nextStage    = MenuStages.None;
            }

            _state = TransitionState.FadeOut;
        }
Exemplo n.º 3
0
        private GameObject GetStageGameObject(MenuStages stage)
        {
            switch (stage)
            {
            case MenuStages.MainMenu: {
                return(_mainMenu);
            }

            case MenuStages.JoinHost: {
                return(_joinHost);
            }

            case MenuStages.RoomName: {
                return(_roomName);
            }

            default:
                return(null);
            }
        }