/* * @Descripttion: * @version: 1.0.0 * @Author: YeeChan * @Date: 2020-07-23 16:59:58 */ /** * 远程资源管理 * 下载后的 cc.Asset 计数加1后 放入 数组存储,下次直接拿取 */ export default class RemoteMgr { private static remoteArrayTexture_custom: { [key: string]: cc.Texture2D; } = {} /** * 移除所有已加载的 */ public static removeAllRemote_custom() { for (let k in this.remoteArrayTexture_custom) { this.remoteArrayTexture_custom[k].decRef(); } this.remoteArrayTexture_custom = {}; } /** * 下载远程图片资源,成功后放入数组,计数自增 * @param url * @param listener */ public static loadRemote_custom(url: string, listener: FMListener) { let texture2D = this.remoteArrayTexture_custom[url]; if (texture2D) { callFM_custom(listener, null, this.remoteArrayTexture_custom[url]); } else { cc.assetManager.loadRemote(url, (error, data) => { if (error) { callFM_custom(listener, error, null); return; } else { if (!this.remoteArrayTexture_custom[url]) { //@ts-ignore this.remoteArrayTexture_custom[url] = data; this.remoteArrayTexture_custom[url].addRef();//计数+1 } callFM_custom(listener, null, this.remoteArrayTexture_custom[url]); } }) } } }