protected override void _loadImp(int priority = 0, bool progress = false, uint retryCount = 0)
        {
            this.isProgress = progress;
            string manifesURI = "/" + manifesKey + "/";
            int    len        = manifesURI.Length;

            if (string.IsNullOrEmpty(manifesKey))
            {
                throw new Exception("不正常");
            }

            int index = url.IndexOf(manifesURI);

            manifesPrefix = url.Substring(0, index + len);

            dependKey = url.Substring(index + len);

            manifesURI = manifesKey + ".manifest";
            string        manifesURL = manifesPrefix + manifesKey;
            AssetResource resource   = AssetsManager.getResource(manifesURL, manifesURI, LoaderXDataType.MANIFEST);

            if (progress)
            {
                resource.addEventListener(EventX.PROGRESS, progressHandle);
            }
            AssetsManager.bindEventHandle(resource, manifesHandle);
            resource.load(3);

            return;
        }
Exemple #2
0
        private void _doNext()
        {
            if (isComplete)
            {
                return;
            }
            testCount++;
            if (queue.Count == 0 && running == 0 && isComplete == false)
            {
                isComplete = true;
                Log("QuComplete");
                this.simpleDispatch(EventX.COMPLETE);
                return;
            }

            while (queue.Count > 0 && running < threadCount)
            {
                AssetResource resource = queue.Dequeue();
                runningList.Add(resource);

                running++;
                Log("QuStart: {0} {1}", running, resource.url);

                AssetsManager.bindEventHandle(resource, itemComplete);
                resource.addEventListener(EventX.DISPOSE, itemComplete);
                resource.addEventListener(EventX.PROGRESS, itemProgress);
                resource.load(retryCount, false);
            }
        }
Exemple #3
0
        protected override void _loadImp(int priority = 0, bool progress = false, uint retryCount = 0)
        {
            this.isProgress = progress;
            string manifesURI = "/" + manifesKey + "/";
            int    len        = manifesURI.Length;

            if (string.IsNullOrEmpty(manifesKey))
            {
                throw new Exception("不正常:" + _url + "\tmanifesKey:" + manifesKey);
            }

            int index = _url.IndexOf(manifesURI);

            manifesPrefix = _url.Substring(0, index + len);
            dependKey     = url.Substring(index + len).ToLower();
            //prefab会被转换成小写的;
            this._url = manifesPrefix + dependKey;
            string manifesURL = manifesPrefix + manifesKey;

            //不做除引用操作;

            manifestResource = AssetsManager.getResource(manifesURL, LoaderXDataType.MANIFEST);
            manifestResource.initManifes(manifesPrefix, manifesKey);
            manifestResource.isForceRemote = isForceRemote;
            AssetsManager.bindEventHandle(manifestResource, manifesHandle);
            manifestResource.load();
        }
        public void load(string uri)
        {
            if (this.uri == uri)
            {
                return;
            }

            this.uri = uri;

            if (string.IsNullOrEmpty(uri))
            {
                return;
            }

            string url = getURL(uri);

            if (resource != null)
            {
                resource.release();
                AssetsManager.bindEventHandle(resource, resourceHandle, false);
            }

            resource = AssetsManager.getResource(url, LoaderXDataType.ASSETBUNDLE);
            resource.retain();
            AssetsManager.bindEventHandle(resource, resourceHandle);
            resource.load();
        }
Exemple #5
0
        public void load(string url)
        {
            isLoaded = false;

            AssetResource resource = null;

            if (AssetsManager.routerResourceDelegate != null)
            {
                resource = AssetsManager.routerResourceDelegate(url, name, "sound");
            }
            if (resource == null)
            {
                resource = AssetsManager.getResource(url, LoaderXDataType.PREFAB);
            }
            AssetsManager.bindEventHandle(resource, completeHandle);
            resource.load();
        }