39 lines
1.3 KiB
C#
39 lines
1.3 KiB
C#
|
|
namespace YooAsset
|
|
{
|
|
internal sealed class AllAssetsProvider : ProviderOperation
|
|
{
|
|
private FSLoadAllAssetsOperation _loadAllAssetsOp;
|
|
|
|
public AllAssetsProvider(ResourceManager manager, string providerGUID, AssetInfo assetInfo) : base(manager, providerGUID, assetInfo)
|
|
{
|
|
}
|
|
protected override void ProcessBundleResult()
|
|
{
|
|
if (_loadAllAssetsOp == null)
|
|
{
|
|
_loadAllAssetsOp = BundleResultObject.LoadAllAssetsAsync(MainAssetInfo);
|
|
_loadAllAssetsOp.StartOperation();
|
|
AddChildOperation(_loadAllAssetsOp);
|
|
}
|
|
|
|
if (IsWaitForAsyncComplete)
|
|
_loadAllAssetsOp.WaitForAsyncComplete();
|
|
|
|
_loadAllAssetsOp.UpdateOperation();
|
|
Progress = _loadAllAssetsOp.Progress;
|
|
if (_loadAllAssetsOp.IsDone == false)
|
|
return;
|
|
|
|
if (_loadAllAssetsOp.Status != EOperationStatus.Succeed)
|
|
{
|
|
InvokeCompletion(_loadAllAssetsOp.Error, EOperationStatus.Failed);
|
|
}
|
|
else
|
|
{
|
|
AllAssetObjects = _loadAllAssetsOp.Result;
|
|
InvokeCompletion(string.Empty, EOperationStatus.Succeed);
|
|
}
|
|
}
|
|
}
|
|
} |