IEnumerator serverLoadSceneCo(string sceneName) { ObjectSyncMaster.Instance.SendingEnabled = false; //停止发送数据 UnityEngine.SceneManagement.SceneManager.LoadScene(sceneName); //读取场景 curSceneName = sceneName; //更新当前场景名 FduSyncBaseIDManager.OnLevelLoaded(); yield return(0); FduRpcManager.OnLevelLoaded(); FduActiveSyncManager.OnLevelLoaded(); ObjectSyncMaster.Instance.SendingEnabled = true; }
IEnumerator serverLoadSceneCo(string sceneName, Action customLoadSceneFunc) { ObjectSyncMaster.Instance.SendingEnabled = false; customLoadSceneFunc();//执行自定义读取场景函数 curSceneName = sceneName; FduSyncBaseIDManager.OnLevelLoaded(); yield return(0); FduRpcManager.OnLevelLoaded(); FduActiveSyncManager.OnLevelLoaded(); ObjectSyncMaster.Instance.SendingEnabled = true; }
IEnumerator slaveLoadSceneCo(string sceneName) { var syncSlave = ClusterHelper.Instance.GetComponent <FDUIGC_SyncSlave>(); syncSlave.SendMessage("BlockSwapSync", SendMessageOptions.DontRequireReceiver); UnityEngine.SceneManagement.SceneManager.LoadScene(sceneName); curSceneName = sceneName; FduSyncBaseIDManager.OnLevelLoaded(); yield return(0); syncSlave.SendMessage("ResumeSwapSync", SendMessageOptions.DontRequireReceiver); }