Exemplo n.º 1
0
        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
        }
Exemplo n.º 2
0
        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);
        }