Beispiel #1
0
        public void LoadScene(string sceneName)
        {
            SingletonManager.GetSingleton <InputManager> ().ClearKeys();

            string previousScene = GetCurrentActiveScene().name;

            UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(sceneName, LoadSceneMode.Additive).completed += (op) => {
                var previousSceneController = CurrentSceneController;
                CurrentScene = UnityEngine.SceneManagement.SceneManager.GetSceneByName(sceneName);

                UnityEngine.SceneManagement.SceneManager.UnloadSceneAsync(previousScene).completed += (op2) => {
                    previousSceneController.OnSceneUnload();

                    UnityEngine.SceneManagement.SceneManager.SetActiveScene(CurrentScene);
                    CurrentSceneController = GetSceneController();
                    CurrentSceneController.OnSceneLoad();
                };
            };
        }
Beispiel #2
0
 public void Initialize()
 {
     this.SubscribeAsSingleton();
     CurrentSceneController = GetSceneController();
     CurrentSceneController.OnSceneLoad();
 }