public IEnumerator SwitchScene(int sceneID) { if (onSceneUnload != null) { onSceneUnload.Invoke(); } SceneManager.UnloadSceneAsync(currentSceneID); currentSceneID = sceneID; yield return(StartCoroutine("LoadScene", sceneID)); if (onSceneLoad != null) { onSceneLoad.Invoke(); } yield return(null); yield break; }