com.alicizax.unity.tuyoogam.../Runtime/ResourceManager/Provider/SubAssetsProvider.cs

39 lines
1.3 KiB
C#
Raw Normal View History

2025-01-09 11:31:04 +08:00

namespace YooAsset
{
internal sealed class SubAssetsProvider : ProviderOperation
{
private FSLoadSubAssetsOperation _loadSubAssetsOp;
public SubAssetsProvider(ResourceManager manager, string providerGUID, AssetInfo assetInfo) : base(manager, providerGUID, assetInfo)
{
}
protected override void ProcessBundleResult()
{
if (_loadSubAssetsOp == null)
{
_loadSubAssetsOp = BundleResultObject.LoadSubAssetsAsync(MainAssetInfo);
2025-02-28 16:11:01 +08:00
_loadSubAssetsOp.StartOperation();
AddChildOperation(_loadSubAssetsOp);
2025-01-09 11:31:04 +08:00
}
if (IsWaitForAsyncComplete)
_loadSubAssetsOp.WaitForAsyncComplete();
2025-02-28 16:11:01 +08:00
_loadSubAssetsOp.UpdateOperation();
2025-01-09 11:31:04 +08:00
Progress = _loadSubAssetsOp.Progress;
if (_loadSubAssetsOp.IsDone == false)
return;
if (_loadSubAssetsOp.Status != EOperationStatus.Succeed)
{
InvokeCompletion(_loadSubAssetsOp.Error, EOperationStatus.Failed);
}
else
{
SubAssetObjects = _loadSubAssetsOp.Result;
InvokeCompletion(string.Empty, EOperationStatus.Succeed);
}
}
}
}