コード例 #1
0
        private void Start()
        {
            var token = this.GetCancellationTokenOnDestroy();

            menuRectTransform = pauseMenu.GetComponent <RectTransform>();
            pauseMenu.SetActive(false);

            pauseButton
            .OnClickAsObservable()
            .Where(_ => !pauseMenuManager.IsPause.Value)
            .Do(_ => pauseMenuManager.SetIsPaused(true))
            .Subscribe(_ => ActiveMenuAnimation(true, token).ToObservable())
            .AddTo(this);

            homeButton
            .OnClickAsObservable()
            .Subscribe(_ => pauseMenuManager.MoveToSelectMenuScene(true))
            .AddTo(this);

            restartButton
            .OnClickAsObservable()
            .Subscribe(_ => pauseMenuManager.MoveToPuzzleScene())
            .AddTo(this);

            playButton
            .OnClickAsObservable()
            .Do(_ => pauseMenuManager.SetIsPaused(false))
            .Subscribe(_ => ActiveMenuAnimation(false, token).ToObservable())
            .AddTo(this);
        }
コード例 #2
0
        private async UniTaskVoid Start()
        {
            resultMenu.SetActive(false);
            resultMenuRectTransform = resultMenu.GetComponent <RectTransform>();

            homeButton
            .OnClickAsObservable()
            .Subscribe(_ => pauseMenuManager.MoveToSelectMenuScene(false))
            .AddTo(this);

            restartButton
            .OnClickAsObservable()
            .Subscribe(_ => pauseMenuManager.MoveToPuzzleScene())
            .AddTo(this);

            await gameStateManager.CurrentGameState.Where(x => x == GameState.Result).FirstOrDefault();

            resultMenu.SetActive(true);
            resultMenuRectTransform.localScale = resultMenuRectTransform.localScale.SetY(0f);
            await resultMenuRectTransform.DOScaleY(1f, 0.2f).ToAwaiter(this.GetCancellationTokenOnDestroy());

            bestScoreText.text = "best: " + scoreManager.BestScore.Value;
            scoreText.text     = "score: " + scoreManager.CurrentScore.Value;
            naichilab.RankingLoader.Instance.SendScoreAndShowRanking(scoreManager.CurrentScore.Value, (int)gameInfo.ModeType);
        }