Exemplo n.º 1
0
    private IEnumerator SceneChange(SceneStatusEnum scene)
    {
        yield return(new WaitForSeconds(0.2f));

        //シーンステータス変更
        GameStatus.SceneStatusReactivePropety.Value = scene;

        //シーンオブジェクトをすべてOFF
        for (int i = 0; i < _sceneObjs.Length; i++)
        {
            _sceneObjs[i].SetActive(false);
        }

        yield return(new WaitForSeconds(0.5f));

        if ((int)scene == TITLE_NOM)
        {
            //タイトルシーンに変更
            _sceneObjs[TITLE_NOM].SetActive(true);
            AudioController.Instance.OpPlay();
        }
        else if ((int)scene == MENU_NOM)
        {
            //メニューシーンに変更
            _sceneObjs[MENU_NOM].SetActive(true);
        }
        else if ((int)scene == GAME_NOM)
        {
            //ゲームシーンに変更
            _sceneObjs[GAME_NOM].SetActive(true);
            GameStatus.GameStatusReactivePropety.Value = GameStatusEnum.None;
        }
        yield break;
    }
Exemplo n.º 2
0
 /// <summary>
 /// SceneChenge呼び出し用
 /// </summary>
 /// <param name="scene"></param>
 public void CallSceneChange(SceneStatusEnum scene)
 {
     StartCoroutine(SceneChange(scene));
 }