示例#1
0
        public void ChangeAppState(Enumerators.AppState stateTo)
        {
            if (AppState == stateTo)
            {
                return;
            }

            AppState = stateTo;

            AppStateChangedEvent?.Invoke(AppState);
        }
        private void AppStateChangedEventHandler(Enumerators.AppState appState)
        {
            switch (appState)
            {
            case Enumerators.AppState.Game:
                SetPage <GamePage>();
                break;

            case Enumerators.AppState.JoinRoom:
                SetPage <JoinRoomPage>();
                break;
            }
        }
        private void AppStateChangedEventHandler(Enumerators.AppState appState)
        {
            switch (appState)
            {
            case Enumerators.AppState.Game:
                SceneManager.LoadScene("GameLevel_0");
                break;

            case Enumerators.AppState.JoinRoom:
                StopGameplay();
                break;
            }
        }
示例#4
0
        public void ChangeScene(Enumerators.AppState appState, bool force = false)
        {
            if (!force)
            {
                if (appState == Enumerators.AppState.NONE || CurrentAppStateScene == appState)
                {
                    return;
                }
            }

            IsLoadedScene     = false;
            _isLoadingStarted = true;

            GameClient.Get <IAnalyticsManager>().LogScreen(appState.ToString());
            MainApp.Instance.StartCoroutine(LoadLevelAsync(appState.ToString()));
        }
示例#5
0
        private void SceneForAppStateWasLoadedEventHandler(Enumerators.AppState state)
        {
            switch (state)
            {
            case Enumerators.AppState.GAMEPLAY:
            {
                ForceStartGameplay(_gameplayManager.IsTutorial);
            }
            break;

            case Enumerators.AppState.APP_INIT:
            {
                _appStateManager.ChangeAppState(_finishMatchAppState);
            }
            break;
            }
        }
示例#6
0
        public void FinishMatch(Enumerators.AppState appStateAfterMatch)
        {
            _tutorialManager.StopTutorial();

            if (_gameplayManager.IsTutorial &&
                !_tutorialManager.IsTutorial &&
                appStateAfterMatch != Enumerators.AppState.MAIN_MENU)
            {
                _sceneManager.ChangeScene(Enumerators.AppState.GAMEPLAY, true);
                return;
            }

            _finishMatchAppState = appStateAfterMatch;

            _uiManager.HideAllPages();
            _uiManager.DrawPopup <LoadingGameplayPopup>();

            _gameplayManager.ResetWholeGameplayScene();

            _sceneManager.ChangeScene(Enumerators.AppState.APP_INIT);
        }
示例#7
0
        public void ChangeAppState(Enumerators.AppState stateTo)
        {
            if (AppState == stateTo)
            {
                return;
            }

            AppState = stateTo;

            switch (stateTo)
            {
            case Enumerators.AppState.AppStart:
                ChangeAppState(Enumerators.AppState.Gameplay);
                break;

            case Enumerators.AppState.Main:
                break;

            case Enumerators.AppState.Gameplay:
                GameClient.Get <IUIManager>().SetPage <GameplayPage>();
                GameClient.Get <IGameManager>().StartGame();
                break;
            }
        }
示例#8
0
        public void SkipTutorial(Enumerators.AppState state)
        {
            _soundManager.PlaySound(Enumerators.SoundType.CLICK, Constants.SfxSoundVolume, false, false, true);

            string        tutorialSkipQuestion = "Are you sure you want to go back to Main Menu?";
            QuestionPopup questionPopup        = _uiManager.GetPopup <QuestionPopup>();

            if (state == Enumerators.AppState.MAIN_MENU)
            {
                questionPopup.ConfirmationReceived += ConfirmQuitReceivedHandler;
            }
            else
            {
                tutorialSkipQuestion = "Do you really want to skip \nBasic Tutorial?";
                if (_dataManager.CachedUserLocalData.CurrentTutorialId > 0)
                {
                    tutorialSkipQuestion = "Do you really want to skip \nAdvanced Tutorial?";
                }
                questionPopup.ConfirmationReceived += ConfirmSkipReceivedHandler;
            }

            _uiManager.DrawPopup <QuestionPopup>(new object[] { tutorialSkipQuestion, false });
            GameClient.Get <IAppStateManager>().SetPausingApp(true);
        }
        public void ChangeAppState(Enumerators.AppState stateTo, bool force = false)
        {
            if (!force)
            {
                if (AppState == stateTo)
                {
                    return;
                }
            }

            switch (stateTo)
            {
            case Enumerators.AppState.APP_INIT:
                _uiManager.SetPage <LoadingPage>();
                GameClient.Get <ISoundManager>().PlaySound(
                    Enumerators.SoundType.BACKGROUND,
                    128,
                    Constants.BackgroundSoundVolume,
                    null,
                    true);

                break;

            case Enumerators.AppState.LOGIN:
                break;

            case Enumerators.AppState.MAIN_MENU:
                _uiManager.SetPage <MainMenuPage>();
                break;

            case Enumerators.AppState.HERO_SELECTION:
                _uiManager.SetPage <HeroSelectionPage>();
                break;

            case Enumerators.AppState.DECK_SELECTION:
                _uiManager.SetPage <HordeSelectionPage>();
                break;

            case Enumerators.AppState.COLLECTION:
                _uiManager.SetPage <CollectionPage>();
                break;

            case Enumerators.AppState.DECK_EDITING:
                _uiManager.SetPage <DeckEditingPage>();
                break;

            case Enumerators.AppState.SHOP:

                //_uiManager.SetPage<ShopPage>();
                //break;
                _uiManager.DrawPopup <WarningPopup>(
                    $"The Shop is Disabled\nfor version {BuildMetaInfo.Instance.DisplayVersionName}\n\n Thanks for helping us make this game Awesome\n\n-Loom Team");
                return;

            case Enumerators.AppState.PACK_OPENER:
            {
                //_uiManager.SetPage<PackOpenerPage>();
                //break;
                _uiManager.DrawPopup <WarningPopup>(
                    $"The Pack Opener is Disabled\nfor version {BuildMetaInfo.Instance.DisplayVersionName}\n\n Thanks for helping us make this game Awesome\n\n-Loom Team");
                return;
            }

            case Enumerators.AppState.GAMEPLAY:
                _uiManager.SetPage <GameplayPage>();
                break;

            case Enumerators.AppState.CREDITS:
                _uiManager.SetPage <CreditsPage>();
                break;

            default:
                throw new NotImplementedException("Not Implemented " + stateTo + " state!");
            }

            _previousState = AppState != Enumerators.AppState.SHOP ? AppState : Enumerators.AppState.MAIN_MENU;

            AppState = stateTo;
        }
示例#10
0
 public static void Init()
 {
     _isAppStarted = true;
     AppState      = Enumerators.AppState.MENU;
 }