Пример #1
0
        /// <summary>
        /// 队列加载当前缓存中的数据
        /// </summary>
        private void loadByQueue()
        {
            if (cachesLoadIngs.Count <= 0)
            {
                return;
            }

            LoadIngInfo loadIngInfo = LoaderUtils.getLoadinfInfo(cachesLoadIngs);

            if (loadIngInfo == null)
            {
                return;
            }

            BaseLoader baseLoader = LoaderUtils.createLoader(loadIngInfo, this.gameObject);

            ///找不到对应的加载器
            if (baseLoader == null)
            {
                return;
            }

            currentLoadingNumber += 1;

            loadIngInfo.isLoading     = true;
            loadIngInfo.currentLoader = baseLoader;

            baseLoader.onLoadError    = onLoadErrorHandler;
            baseLoader.onLoadComplete = onLoadCompleteHandler;
            baseLoader.onLoadProgress = onLoadProgressHandler;
            baseLoader.loadAsset(loadIngInfo.assetPath);
        }
Пример #2
0
 /// <summary>
 /// 销毁加载所用到的角本
 /// </summary>
 /// <param name="baseLoader">Base loader.</param>
 private void destroyLoader(BaseLoader baseLoader)
 {
     if (this.isInMapEditor == true)              //地图编辑器模式下面加载数据
     {
         DestroyImmediate(baseLoader);
         return;
     }
     Destroy(baseLoader);
 }
Пример #3
0
        /// <summary>
        /// 创建加载类
        /// </summary>
        /// <returns>The loader.</returns>
        /// <param name="loadIngInfo">Load ing info.</param>
        public static BaseLoader createLoader(QueueLoader.LoadIngInfo loadIngInfo, GameObject gameObject)
        {
            if (loadIngInfo == null || loadIngInfo.dataFormate == null)
            {
                return(null);
            }

            if (loadTypes.ContainsKey(loadIngInfo.dataFormate) == false)
            {
                return(null);
            }

            Type loaderType = loadTypes[loadIngInfo.dataFormate];

            if (loaderType == null)
            {
                return(null);
            }
            BaseLoader resultLoader = gameObject.AddComponent(loaderType) as BaseLoader;            //;Activator.CreateInstance (loaderType.GetType());

            return(resultLoader);
        }