static UnityEngine.Object[] MM_Detour(AssetBundleRequest self) { if (ResourceRedirection.TryGetAssetBundleLoadInfo(self, out var info)) { UnityEngine.Object[] result; if (info.ResolveType == AsyncAssetLoadingResolve.ThroughAssets) { result = info.Assets; } else { result = _original(self); } if (!info.SkipAllPostfixes) { ResourceRedirection.Hook_AssetLoaded_Postfix(info.Parameters, info.Bundle, ref result); } return(result); } else { return(_original(self)); } }
static UnityEngine.Object MM_Detour(AssetBundleRequest self) { if (ResourceRedirection.TryGetAssetBundleLoadInfo(self, out var info)) { UnityEngine.Object result = null; if (info.ResolveType == AsyncAssetLoadingResolve.ThroughAssets) { var assets = info.Assets; if (assets != null && assets.Length > 0) { result = assets[0]; } } else { result = _original(self); } if (!info.SkipAllPostfixes) { ResourceRedirection.Hook_AssetLoaded_Postfix(null, null, 0, null, self, ref result); } return(result); } else { return(_original(self)); } }