private void OnLoadAreaDetailInfoCompleted(string pathOrAddress, UnityObject obj, SystemObject userData) { if (obj == null) { DebugUtility.LogError(Constants.LOG_TAG, "AreaDetailInfo is null"); } m_IsInitialized = true; if (m_IsReleasing) { if (m_AreaRoot != null) { UnityObject.DestroyImmediate(m_AreaRoot.gameObject); m_AreaRoot = null; } return; } TextAsset text = obj as TextAsset; m_AreaDetailInfo = new AreaDetailInfo(); byte[] areaBytes = text.bytes; m_AreaDetailInfo.Deserialize(areaBytes); InitAreaLayer(); ///一初始化完 就得去刷新地图 DoCheckPlayerPos(true); #if UNITY_EDITOR DebugAreaLayer debugLayer = m_AreaRoot.GetOrAddComponent <DebugAreaLayer>(); debugLayer.m_AreaLayerInfos = m_AreaDetailInfo.AreaLayerInfos; debugLayer.m_AreaDetailInfo = m_AreaDetailInfo; #endif }
private bool TryLoadAreaDetailInfo() { if (m_AreaDetailInfo == null) { string areaDetailInfoPath = string.Format("{0}/{1}{2}/{3}.asset" , MapEditorUtility.GetOrCreateMapEditorSetting().AssetExportDirectory , Constants.EXPORT_MAP_FOLDER_NAME_STARTWITHS , m_Owner.GetMapUid() , AreaInfo.DetailInfoAddressableKey); m_AreaDetailInfo = AssetDatabase.LoadAssetAtPath <AreaDetailInfo>(areaDetailInfoPath); if (areaDetailInfoPath == null) { Debug.LogError(string.Format("cant find file ({0})", areaDetailInfoPath)); } } return(m_AreaDetailInfo != null); }