//共通演出等を実行し、各演出を管理するコルーチン
    protected IEnumerator PerformManagement()
    {
        GameManager gm = GameManager.Instance;
        //フェード
        var async = gm.m_GameStarter.AddScene("FadeScene");

        while (async.isDone != false)
        {
            yield return(null);
        }
        //シーンのオブジェクトの作成を待つ(2フレ)
        yield return(null);

        yield return(null);

        //フェードイン
        bool             fadeEnd  = false;
        FadeSceneManager fadeMane = GameObject.Find("FadeSceneManager").GetComponent <FadeSceneManager>();

        fadeMane.EndEvent.AddListener(() => { fadeEnd = true; });
        fadeMane.FadeIn();

        while (!fadeEnd)
        {
            yield return(null);
        }

        /*暗転状態で行いたい処理*/
        //各オブジェクトの配置を初期化
        if (!CommonRedy())
        {
            yield break;
        }
        Redy();
        m_PerformAnim.clip.SampleAnimation(m_ParformAnimRootObj, 0.0f);
        GameManager.Instance.m_PlayCamera.SetActive(false);
        m_Camera.gameObject.SetActive(true);
        Pauser.Resume();
        yield return(null);

        //フェードアウト
        fadeEnd = false;
        fadeMane.FadeOut();
        while (!fadeEnd)
        {
            yield return(null);
        }

        //演出スタート
        yield return(StartCoroutine(PlayerParform()));

        //後処理
        EndPerform();
    }
Esempio n. 2
0
 public void OnClick()
 {
     FadeSceneManager.FadeOut(nextScene);
 }