Beispiel #1
0
    private void StartGame()
    {
        //ShowStatement();

        /*
         * gameScene = SceneManager.GetSceneByName(sceneName);
         * SceneManager.SetActiveScene(gameScene);
         */
        //ゲームの時間を決める
        float waitTime = 4f;

        if (currentGameType == GameType.Short)
        {
            waitTime = 4f;
        }
        else if (currentGameType == GameType.Long)
        {
            waitTime = 8f;
        }

        Sequence seq = DOTween.Sequence()
                       .OnStart(() =>
        {
            /*
             * number++;
             * numberMesh.text = number.ToString();
             */
        })
                       .Append(numberMesh.transform.DOScale(0.5f, 0.25f).SetRelative())
                       .AppendInterval(0.25f)
                       .Append(numberMesh.transform.DOScale(-0.5f, 0.25f).SetRelative())
                       .AppendInterval(1f)
                       .AppendCallback(() =>
        {
            ShowStatement();
            isCanPause = false;
            //シーンを非同期で読み込み
            gameScene = SceneManager.GetSceneByName(sceneName);
            if (!gameScene.IsValid())
            {
                async = SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive);
                async.allowSceneActivation = false;
                //DebugTextManager.Display(() => "Loading:" + (async.progress * 100).ToString() + "%\n");
            }
        })
                       .AppendInterval(0.15f)
                       .AppendCallback(() =>
        {
            MusicManager.FadeOut(0.1f);
        })
                       .AppendInterval(0.1f)
                       .AppendCallback(() =>
        {
            TimeCountManager.CountDownStart(waitTime);
            CameraZoomUp();
            Instance.async.allowSceneActivation = true;
            IsGamePlaying = true;
        })
                       .AppendInterval(0.05f)
                       .AppendCallback(() =>
        {
            /*
             * Debug.Log(Camera.main.orthographicSize);
             * Camera.main.DOOrthoSize(Camera.main.orthographicSize * 16f / 9f / managerCamera.aspect, 0.05f);
             */
        })
                       .AppendInterval(waitTime - 0.05f)
                       .OnComplete(() =>
        {
            EndGame();
        });
    }
    private void InitAIDynamicPatrolling()
    {
        if ( m_PatrolPath.Length != m_PatrolPathWaitTiming.Length ) {
            Debug.LogError( "PatrolPath lenght and PatrolPathWaitTiming lenght must be the same!" );
            Debug.Break();
        }
        m_vCurrentPosition      = this.transform.position;
        m_vOriginalYPosition    = this.transform.position.y;
        m_PatrolPathLenght      = m_PatrolPath.Length;

        if ( m_PatrolPath.Length > 0 ) {
            m_PatrolCheckPoint  = m_PatrolPath[ m_PatrolCurrentStep ];
            m_vDirectionToLook  = m_PatrolCheckPoint.transform.position - this.transform.position;
            //m_fTimeToWait       = m_PatrolPathWaitTiming[ m_PatrolCurrentStep ];
        }

        m_tcmTimeManager = new TimeCountManager();
    }