Ejemplo n.º 1
0
        protected override void IntroReady()
        {
            Choom.Play("Music/credits");
            Choom.Pause(false);

            objectives.CheckComplete();
            Objectives.CheckAchievements();

            if (Objectives.AnyComplete)
            {
                LeanTween.delayedCall(4, () => {
                    menu.ignore_input = false;
                    refocusSelected.SetActive(true);
                    menu.SetFocus(refocusSelected);
                    objectives.Play(HashIDs.menu.Outtro);
                });
            }
            else
            {
                menu.ignore_input = false;
                refocusSelected.SetActive(true);
                menu.SetFocus(refocusSelected);
                objectives.Play(HashIDs.menu.Outtro);
            }

            MenuCredits.DisplayEnding = true;
            MenuCredits.ScrollDelay   = 3;
        }
Ejemplo n.º 2
0
        void OnEnable()
        {
            animator.speed = 0;
            refocusSelected.SetActive(false);

            MetaState.end_game = false;
            AppMain.screenShake(0, 0);
            Choom.StopAllEffects();
            Choom.Pause();

            if (MetaState.wave_number + 1 > DataStorage.StartOnWave)
            {
                DataStorage.StartOnWave = MetaState.wave_number + 1;
            }

            Objectives.BossDefeated();
            Objectives.SurvivedFinalStage();

            Platform.SaveEndWave();
            Objectives.CheckAchievements();

            objectives.UpdateText();

            menu.Fade(0.9f, 0.5f, () => {
                objectives.Play(HashIDs.menu.Intro);
                animator.speed = 1;
            });
        }
Ejemplo n.º 3
0
        protected override void OuttroFinished()
        {
            transitionID = MenuState.None; /* reset it for next time */
            Choom.Pause(false);

            base.OuttroFinished();
        }
Ejemplo n.º 4
0
        protected override void OuttroFinished()
        {
            /* record last selected item for if the player returns */
            lastSelected = UnityEngine.EventSystems.EventSystem.current.currentSelectedGameObject;

            if (transitionID == MenuState.Title ||
                transitionID == MenuState.None)
            {
                lastSelected = refocusSelected;
            }

            if (transitionID == MenuState.None)
            {
                Choom.Pause(false);

                State game_state = AppMain.top_state.child_state;
                AppMain.top_state.Dispose();
                AppMain.top_state = game_state;

                menu.SetActiveDayName(true);
                AppMain.tutorial.Pause(false);
                lastSelected = refocusSelected;
            }

            transitionID = MenuState.None; /* reset it for next time */

            base.OuttroFinished();
        }
Ejemplo n.º 5
0
        public void SetButton(OnClickItem item)
        {
            menu.SetActiveContextButtons(false, false);

            switch (item.item)
            {
            case MenuItem.Resume: { transitionID = MenuState.None; } break;

            case MenuItem.MainMenu: { transitionID = MenuState.Title; } break;

            case MenuItem.Audio: { transitionID = MenuState.Audio; } break;
            }

            switch (item.item)
            {
            case MenuItem.Audio: {
                menu.SetActiveDayName(false, true);
                Choom.Pause(false);
            } break;

            case MenuItem.MainMenu: {
                AppMain.HasWon          = false;
                AppMain.DisplayAnchor   = false;
                MetaState.hardcore_mode = false;

                AppMain.tutorial.SetLesson(Lesson.NONE);
                AppMain.tutorial.SetDisplay(false);
                AppMain.MatchBonus.DismissAnimations();

                Choom.StopAllEffects();
                Choom.Pause(false);

                AppMain.top_state.child_state.Dispose();
                AppMain.top_state.child_state = null;
                Game.instance = null;

                if (AppMain.IsPaused)
                {
                    Tracker.LevelQuit(MetaState.wave_number);
                }
                else
                {
                    Tracker.EndMode(MetaState.hardcore_mode, AppMain.MainMenu.DayName(MetaState.wave_number),
                                    MetaState.hardcore_mode ? MetaState.hardcore_score : DataStorage.Money);
                }

                menu.SetActiveDayName(false, true);

                AppMain.IsPaused = false;
            } break;
            }
            CancelPressed();
        }
Ejemplo n.º 6
0
        void OnEnable()
        {
            Tracker.ScreenVisit(SCREEN_NAME.PAUSE);

            Choom.Pause();
            AppMain.screenShake(0, 0);

            objectives.Play(HashIDs.menu.Intro);
            objectives.UpdateText();

            menu.SetActiveDayName(false);
            menu.Fade(0.9f, 0.25f);
        }
Ejemplo n.º 7
0
        void OnEnable()
        {
            Tracker.ScreenVisit(AppMain.HasWon ? SCREEN_NAME.WAVE_COMPLETE : SCREEN_NAME.WAVE_FAILED);

            AppMain.screenShake(0, 0);
            Choom.StopAllEffects();
            Choom.Pause();

            if (AppMain.HasWon)
            {
                if (MetaState.wave_number % 3 == 2)
                {
                    Objectives.BossDefeated();
                }

                if (MetaState.wave_number + 1 > DataStorage.StartOnWave &&
                    !MetaState.hardcore_mode)
                {
                    DataStorage.StartOnWave = MetaState.wave_number + 1;
                }
            }
            else
            {
                DataStorage.TimesDefeated++;

                if (MetaState.hardcore_mode)
                {
                    Game.instance.saveHardcoreScore();
                    Platform.SaveHardcore();
                }
            }

            Platform.SaveEndWave();
            Objectives.CheckAchievements();

            titles[0].SetActive(AppMain.HasWon);
            titles[1].SetActive(!AppMain.HasWon);

            for (int i = 0; i < buttons.Length; ++i)
            {
                buttons[i].SetActive(true);
            }
            refocusSelected = buttons[0].gameObject;

            menu.builder.Length = 0;
            if (MetaState.hardcore_mode && AppMain.HasWon)
            {
                menu.builder.AppendFormat("Hardcore mode score so far: {0}", MoneyGuy.me.printed_score);
                buttons[0].SetActive(true);
                buttons[1].SetActive(false);
                buttons[2].SetActive(true);
            }
            else if (MetaState.hardcore_mode && !AppMain.HasWon)
            {
                menu.builder.AppendFormat("Final hardcore mode score: {0}", MoneyGuy.me.printed_score);
                refocusSelected = buttons[2].gameObject;
                buttons[0].SetActive(false);
                buttons[1].SetActive(false);
                buttons[2].SetActive(true);
            }
            else if (AppMain.HasWon && MetaState.wave_number < GText.Story.story.Length)
            {
                menu.builder.Append(GText.Story.story[MetaState.wave_number]);
            }
            else
            {
                menu.builder.Append(GText.Story.tips[Random.Range(0, GText.Story.tips.Length)]);
            }

            waveResponse.item = AppMain.HasWon ? MenuItem.NextWave : MenuItem.RetryWave;
            waveResponse.GetComponent <TextMeshProUGUI>().text = AppMain.HasWon ? "Next Wave" : "Retry Wave";

            topLeftText.text = menu.builder.ToString();

            menu.SetActiveDayName(false);
            menu.Fade(0.9f, 1);
        }