using System; using UnityEngine; using UnityEngine.SceneManagement; namespace Unity.Netcode { /// /// Used to override the LoadSceneAsync and UnloadSceneAsync methods called /// within the NetworkSceneManager. /// internal interface ISceneManagerHandler { // Generic action to call when a scene is finished loading/unloading struct SceneEventAction { internal uint SceneEventId; internal Action EventAction; internal void Invoke() { EventAction.Invoke(SceneEventId); } } AsyncOperation LoadSceneAsync(string sceneName, LoadSceneMode loadSceneMode, SceneEventAction sceneEventAction); AsyncOperation UnloadSceneAsync(Scene scene, SceneEventAction sceneEventAction); } }