public SceneStateController(GameLoop gameLoop) { SceneStateBase.Controller = this; _gameLoop = gameLoop; _state = SceneStateBase.CreateSceneState(GlobalDefine.LAUNCH_SCENE); _state.Init(); }
IEnumerator LoadScene(string sceneName) { var asyncOp = UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(sceneName); _isLoadingScene = true; while (!asyncOp.isDone) { yield return(null); } _state.Reclaim(); var nextState = SceneStateBase.CreateSceneState(sceneName); nextState.Init(); _state = nextState; _isLoadingScene = true; }