IEnumerator UnLoadScene(string sceneName) { Scene scene = SceneManager.GetSceneByName(sceneName); if (!scene.isLoaded) { Debug.LogError("Scene " + sceneName + " is not loaded"); yield break; } SceneLogic sceneLogic = GetSceneLogic(scene); sceneLogic.OnQuit(); AsyncOperation async = SceneManager.UnloadSceneAsync(scene); yield return(async); }