public static void LoadEffectInQueue(int id, LoadFinishCallback delFinish, object param1 = null) { LoadCompleteCallBackParameter data = new LoadCompleteCallBackParameter(); data.Parameter1 = param1; ResourcesManager.Instance.Load(id, EResourceType.Effect, data, delFinish); }
public static void LoadModelInQueue(int id, EResourceType type, LoadFinishCallback delFinish, object param1, object param2, object param3) { LoadCompleteCallBackParameter data = new LoadCompleteCallBackParameter(); data.Parameter1 = param1; data.Parameter2 = param2; data.Parameter3 = param3; ResourcesManager.Instance.Load(id, type, data, delFinish); }
private static bool LoadModelToRoot(int id, EResourceType type, LoadFinishCallback callback, GameObject root, object parameter2, object parameter3) { if (callback == null) { LogModule.ErrorLog("LoadModelToRoot called but callback == null!"); return(false); } BundleManager.LoadModelInQueue(id, type, callback, root, parameter2, parameter3); return(true); }
protected override void OnFail2Load() { Log.E("OnFail2Load:{0}", AssetPath); Log.E(ErrorMessage); if (LoadFinishCallback != null) { LoadFinishCallback.Invoke(null); LoadFinishCallback = null; } if (LoadSuccessCallback != null) { LoadFailCallback.Invoke(this); } }
protected override void OnSuccess2Load() { Log.I("OnSuccess2Load:{0}", AssetPath); if (LoadFinishCallback != null) { LoadFinishCallback.Invoke(this); LoadFinishCallback = null; } if (LoadSuccessCallback != null) { LoadSuccessCallback.Invoke(this); } }
/// <summary> /// 加载完成有回调 /// </summary> /// <param name="id"></param> /// <param name="type"></param> /// <param name="condition"></param> /// <param name="loadComplete"></param> /// <param name="loadFailed"></param> /// <returns></returns> public void Load(int id, EResourceType type, LoadCompleteCallBackParameter parameter, LoadFinishCallback loadComplete = null, Func <bool> condition = null, Action <string> loadFailed = null) { string url = _pathManager.GetPath(id, type); if (condition == null) { condition = () => true; } if (string.IsNullOrEmpty(url)) { LogModule.ErrorLog("Retrive Failed Because url is null or empty : {0} And ResourceType: {1}", url, type); if (loadFailed != null) { if (condition()) { loadFailed("Load Failed"); } } return; } Object obj = GetCached(url, type); if (obj != null) { if (loadComplete != null && condition()) { LoadedObjData callBackData; callBackData.Url = url; callBackData.LoadedObj = obj; loadComplete(callBackData, parameter); } return; } //var loader = _assetManager.Retrieve(type, _pathManager.GetPath(id, type)) ?? LoadFromCacheOrDownload(id, type); var loader = _assetManager.Retrieve(type, url) ?? LoadFromCacheOrDownload(url, type); if (loader.IsWaiting() || loader.IsLoading()) { if (loadComplete != null) { loader.EventLoadingComplete += (e) => { if (condition()) { LoadedObjData callBackData; callBackData.Url = url; callBackData.LoadedObj = e.AssetBundle.mainAsset; loadComplete(callBackData, parameter); } else { LogModule.WarningLog("Cancel Callback cause Condition is false: " + e.Path); } }; } if (loadFailed != null) { loader.EventLoadingFailed += (e) => { if (condition()) { loadFailed("Load Failed"); } }; } } else if (loader.IsLoaded()) { if (loadComplete != null) { if (condition()) { LoadedObjData callBackData; callBackData.Url = url; callBackData.LoadedObj = loader.AssetBundle.mainAsset; loadComplete(callBackData, parameter); } } if (loadFailed != null) { if (condition()) { loader.EventLoadingFailed += e => loadFailed(null); } } } return; }