private void InvokeReadyToPlayCallback() { DebugUtility.Log(Constants.LOG_TAG, string.Format("Map({0}) Ready To Play", m_MapUid)); //Debug.LogError("InvokeReadyToPlayCallback"); try { DebugUtility.Log(Constants.LOG_TAG, "Begin Invoke OnReadyToPlayCallback"); m_ForReadyToPlayCallback.OnReadyToPlayCallback?.Invoke(); DebugUtility.Log(Constants.LOG_TAG, "End Invoke OnReadyToPlayCallback"); } catch (System.Exception e) { DebugUtility.LogError(Constants.LOG_TAG, string.Format("Invoke OnReadyToPlayCallback Exception:\n{0}", e.ToString())); } finally { m_ForReadyToPlayCallback = null; } try { DebugUtility.Log(Constants.LOG_TAG, "Begin Invoke _OnChangedMap"); MapManager.GetInstance()._OnChangedMap?.Invoke(m_MapUid); DebugUtility.Log(Constants.LOG_TAG, "End Invoke _OnChangedMap"); } catch (System.Exception e) { DebugUtility.LogError(Constants.LOG_TAG, string.Format("Invoke _OnChangedMap Exception:\n{0}", e.ToString())); } }
/// <summary> /// Release current map /// </summary> public void RequestRelease() { DebugUtility.Log(Constants.LOG_TAG, string.Format("Map({0}) Request Release", m_MapUid)); m_State = State.ReleasingAreas; RequestReleaseCurrentArea(); m_ForReadyToPlayCallback = null; }
public void RequestInitialize(uint mapUid, System.Action OnReadyToPlayCallback = null) { DebugUtility.Log(Constants.LOG_TAG, string.Format("Map({0}) Request Initialize", mapUid)); m_MapUid = mapUid; m_ForReadyToPlayCallback = new ForReadyToPlayCallback(); m_ForReadyToPlayCallback.OnReadyToPlayCallback = OnReadyToPlayCallback; m_State = State.LoadingMap; m_ExpiredAreaControllers = new BetterList <AreaController>(4); // 加载新Map AssetUtil.LoadAssetAsync(Constants.MAP_INFO_ADDRESSKEY_STARTWITHS + mapUid, OnLoadMapInfoCompleted); }