private void OnSceneStatusChanged(SceneLoadUnloadRequest request) { if (request.m_OpType == SceneLoadUnloadRequest.OpType.Load) { SceneLoadUnloadRequestHolder.OnSceneLoad(SceneManager.GetSceneByName(request.m_SceneName), request); return; } if (request.m_OpType == SceneLoadUnloadRequest.OpType.Unload) { SceneLoadUnloadRequestHolder.OnSceneUnload(SceneManager.GetSceneByName(request.m_SceneName), request); } }
public void UnloadScene(string scene_name, SceneLoadUnloadRequest.Reason reason) { SceneLoadUnloadRequest sceneLoadUnloadRequest = new SceneLoadUnloadRequest { m_SceneName = scene_name, m_OpType = SceneLoadUnloadRequest.OpType.Unload, m_Reason = reason }; sceneLoadUnloadRequest.m_Result = SceneLoadUnloadRequest.UpdateResult.PreStart; SceneLoadUnloadRequestHolder.OnSceneUnload(SceneManager.GetSceneByName(sceneLoadUnloadRequest.m_SceneName), sceneLoadUnloadRequest); this.Add(sceneLoadUnloadRequest); }