public List <Object> GetResObj(string name) { if (resObjs.ContainsKey(name)) { AssetSingleObj temo = resObjs[name]; return(temo.objs); } else { return(null); } }
//释放单个资源 public void ReleaseSingleObj(string name) { if (resObjs.ContainsKey(name)) { AssetSingleObj tempobj = resObjs[name]; tempobj.ReleaseObj(); } else { Debug.Log("release object is not exit:" + name); } }
public Object GetSingleResource(string bundleName, string resName) { //是否已经缓存了物体 if (loadObj.ContainsKey(bundleName)) { Debug.Log("0000"); AssetObjs temres = loadObj[bundleName]; List <Object> temobj = temres.GetResObj(resName); if (temobj != null) { return(temobj[0]); } } //表示已经加载过bundle if (loadHelper.ContainsKey(bundleName)) { // Debug.Log("表示已经加载过bundle"); IABRelastion loader = loadHelper[bundleName]; Object tempobj = loader.GetSingleResource(resName); AssetSingleObj tempsigleOb = new AssetSingleObj(tempobj); //缓存里是否有这个包 if (loadObj.ContainsKey(bundleName)) { // Debug.Log("1111"); AssetObjs temRes = loadObj[bundleName]; temRes.AddResobj(resName, tempsigleOb); } else { // Debug.Log("2222"); //没有加载过这个包 AssetObjs temRes = new AssetObjs(resName, tempsigleOb); loadObj.Add(bundleName, temRes); } return(tempobj); } else { Debug.Log("null"); return(null); } }
public Object[] GetMutiResource(string bundleName, string resName) { //是否已经缓存 if (loadObj.ContainsKey(bundleName)) { AssetObjs temres = loadObj[bundleName]; List <Object> temobj = temres.GetResObj(resName); if (temobj != null) { return(temobj.ToArray()); } } //表示已经加载过bundle if (loadHelper.ContainsKey(bundleName)) { IABRelastion loader = loadHelper[bundleName]; Object[] tempobj = loader.GetMutiResources(resName); AssetSingleObj tempsigleOb = new AssetSingleObj(tempobj); //缓存里是否有这个包 if (loadObj.ContainsKey(bundleName)) { AssetObjs temRes = loadObj[bundleName]; temRes.AddResobj(resName, tempsigleOb); } else { //没有加载过这个包 AssetObjs temRes = new AssetObjs(resName, tempsigleOb); loadObj.Add(bundleName, temRes); } return(tempobj); } else { return(null); } }
public void AddResobj(string name, AssetSingleObj temp) { resObjs.Add(name, temp); }
public AssetObjs(string name, AssetSingleObj tempobj) { resObjs = new Dictionary <string, AssetSingleObj>(); resObjs.Add(name, tempobj); }