Example #1
0
        /// <summary>
        /// Open the selected level scene
        /// </summary>
        private void OpenLevelScene(int index)
        {
            var curLevelID = LevelSceneManagement.GetLoadedLevelID(_levelData);

            LevelSceneManagement.OpenGamePlayScene();

            if (curLevelID == index)
            {
                Debug.Log("The specified level has been already opened");
                return;
            }

            // If user pressed cancel while asking for saving the scene,
            // not to load the new scene
            if (curLevelID != -1 &&
                !EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo())
            {
                return;
            }

            var sceneAssetPath = _levelData.GetLevelScenePath(index);

            LevelSceneManagement.OpenLevelScene(sceneAssetPath);
        }