public Asset(string inName, ResourceEventHandler inCallback, ResourceAssetType inType, string tag) { AssetName = inName; AssetType = inType; EventDelegate = inCallback; Tag = tag; }
public static ResourceAssetType GetResourceTypeByFileName(string fname) { string extension = FileManager.GetExtension(fname, ""); ResourceAssetType result = ResourceAssetType.NONE; switch (extension) { case "assetbundle": result = ResourceAssetType.ASSET_BUNDLE; break; case "unity3d": result = ResourceAssetType.ASSET_BUNDLE; break; case "txt": case "json": case "xml": result = ResourceAssetType.STRING; break; case "jpg": case "png": result = ResourceAssetType.IMAGE; break; case "ogg": result = ResourceAssetType.AUDIO; break; } return(result); }
public void AddAsset(string inName, ResourceEventHandler inCallback, ResourceAssetType intype, string tag) { Asset asset = FindAsset(inName); if (asset != null) { asset.AddCallback(inCallback); } else { mAssetList.Add(new Asset(inName, inCallback, intype, tag)); } }
public object LoadAssetFromBundle(string bundleName, string assetname, string tag, ResourceEventHandler callback, ResourceAssetType intype) { AppResource appResource = FindAppResource(bundleName); if (appResource != null) { object loadedAsset = appResource.GetLoadedAsset(assetname); if (loadedAsset != null) { callback(success: true, tag, loadedAsset); return(loadedAsset); } appResource.AddAsset(assetname, callback, intype, tag); StartDownload(appResource); } else if (Utilities.IsURL(bundleName)) { LoadResourceAsset(bundleName, 999999, null, ResourceAssetType.ASSET_BUNDLE, tag); FindAppResource(bundleName)?.AddAsset(assetname, callback, intype, tag); } else { UnityEngine.Object @object = Resources.Load(bundleName + "/" + assetname); if (@object != null) { DisneyMobile.CoreUnitySystems.Logger.LogInfo(this, "Found in resource" + bundleName + "/" + assetname); callback(success: true, tag, @object); return(@object); } DisneyMobile.CoreUnitySystems.Logger.LogWarning(this, "Asset not found under Resource " + bundleName + "/" + assetname); } return(null); }
public object LoadResourceAsset(string resourcename, int cachehours, ResourceEventHandler callback, ResourceAssetType inType, string tag) { AppResource appResource = FindAppResource(resourcename); if (appResource != null) { if (!appResource.Expired()) { object loadedAsset = appResource.GetLoadedAsset(); if (loadedAsset != null) { return(loadedAsset); } } if (appResource.ResourceRequest == null) { appResource.ResourceRequest = new Asset(resourcename, callback, inType, tag); } else { appResource.ResourceRequest.AddCallback(callback); } StartDownload(appResource); return(null); } appResource = new AppResource(resourcename, cachehours, callback, inType, tag); ResourceCatalog.Add(resourcename, appResource); DisneyMobile.CoreUnitySystems.Logger.LogInfo(this, "New resource added to download list, " + resourcename); if (cachehours > 0) { SaveResourceCatalog(); } StartDownload(appResource); return(null); }
public AppResource(string inassetName, int cachehours, ResourceEventHandler inCallback, ResourceAssetType inType, string tag) { isText = inType == ResourceAssetType.STRING; isRequired = false; createLocalCache = cachehours > 0; expirationTime = cachehours; ResetExpirationDate(); serverCatalogVersion = 1; assetName = inassetName; assetFileName = GetNextCacheName() + "." + FileManager.GetExtension(assetName, ".bin"); url = inassetName; ResourceRequest = new Asset(inassetName, inCallback, inType, tag); }