Exemplo n.º 1
0
    //---------------------------------------------------------------

    /*
     *  @brief      シーンを遷移する
     *  @param[in]  GameModeData.GAMEMODE 遷移先シーン
     */
    //---------------------------------------------------------------
    public void ChangeScene(GameModeData.GAMEMODE next)
    {
        Debug.Log("Change Scene Start [ To: " + GameModeData.GameMode + " From: " + next + " ]");

        m_bLoad = true;
        StartCoroutine(LoadSceneAsync(next));
    }
Exemplo n.º 2
0
    IEnumerator LoadSceneAsync(GameModeData.GAMEMODE next)
    {
        // フェードアウトしてから
        GameFadeManager.Instance.StartFade(GameFadeManager.FadeType.FADE_OUT, 30);
        while (GameFadeManager.Instance.IsFade())
        {
            yield return(null);
        }

        // シーンの非同期読み込み
        string         sceneName = GameResourcePath.GetSceneName(next);
        AsyncOperation asyncOP   = SceneManager.LoadSceneAsync(sceneName);

        while (!asyncOP.isDone)
        {
            yield return(null);
        }

        GameModeData.ChangeGameMode(next);

        // フェードイン
        GameFadeManager.Instance.StartFade(GameFadeManager.FadeType.FADE_IN, 30);
        while (GameFadeManager.Instance.IsFade())
        {
            yield return(null);
        }

        m_bLoad = false;
    }
Exemplo n.º 3
0
    public static string GetSceneName(GameModeData.GAMEMODE mode)
    {
        switch (mode)
        {
        case GameModeData.GAMEMODE.GAME_MODE_BOOT:
            return(BootSequence);

        case GameModeData.GAMEMODE.GAME_MODE_STAGE:
            return(Stage[GameModeData.StageCount]);

        case GameModeData.GAMEMODE.GAME_MODE_TITLE:
            return(Title);
        }

        return(BootSequence);
    }