using System; using System.Collections.Generic; using Cpp2IlInjected; using MEC; using UnityEngine; // Token: 0x0200010D RID: 269 [Token(Token = "0x200010D")] public sealed class GameAssetManager { // Token: 0x06000E7B RID: 3707 RVA: 0x000228CC File Offset: 0x00020ACC [Token(Token = "0x6000E7B")] [Address(RVA = "0x538FE0", Offset = "0x537DE0", VA = "0x180538FE0")] public void Init() { AssetLoader assetLoader = new AssetLoader(); Action action = new Action(this.OnAssetLoaded); assetLoader.k__BackingField = action; this.assetLoader = assetLoader; Queue queue = new Queue(); this.handlingRequests = queue; List list = new List(); this.pendingRequests = list; Dictionary dictionary = new Dictionary(); this.assetsCache = dictionary; int num; GameAssetManager.d__20 d__ = new GameAssetManager.d__20(num); num = 0; d__.<>4__this = this; CoroutineHandle coroutineHandle = MECExtensionMethods1.RunCoroutine(d__); this.assetRequestProcessor = coroutineHandle; } // Token: 0x06000E7C RID: 3708 RVA: 0x00022950 File Offset: 0x00020B50 [Token(Token = "0x6000E7C")] [Address(RVA = "0x417A20", Offset = "0x416820", VA = "0x180417A20")] public void BindAssetRequestUpdateHandler(Action handler) { /* An exception occurred when decompiling this method (06000E7C) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void GameAssetManager::BindAssetRequestUpdateHandler(System.Action`1) ---> System.Exception: Basic block has to end with unconditional control flow. {; Block_0:; stfld:class [mscorlib]System.Action`1(GameAssetManager::updateHandler, ldloc:GameAssetManager(this), ldloc:class [mscorlib]System.Action`1(handler)); }; at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810 at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 344 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123 at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88 --- End of inner exception stack trace --- at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92 at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1618 */; } // Token: 0x06000E7D RID: 3709 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E7D")] [Address(RVA = "0x5392D0", Offset = "0x5380D0", VA = "0x1805392D0")] public void LoadAllPendingAssetAsync(Action handler) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E7E RID: 3710 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E7E")] [Address(RVA = "0x538D50", Offset = "0x537B50", VA = "0x180538D50")] public void AddAssetRequest(AssetRequestBase req) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E7F RID: 3711 RVA: 0x00022964 File Offset: 0x00020B64 [Token(Token = "0x6000E7F")] [Address(RVA = "0x539500", Offset = "0x538300", VA = "0x180539500")] public void LoadAssetAsync(AssetRequestBase req) { this.handlingRequests.Enqueue(req); } // Token: 0x06000E80 RID: 3712 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E80")] [Address(RVA = "0x539560", Offset = "0x538360", VA = "0x180539560")] public void LoadAsset(AssetRequestBase req) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E81 RID: 3713 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E81")] [Address(RVA = "0x2D0F60", Offset = "0x2CFD60", VA = "0x1802D0F60")] public T GetAsset(int assetType, string assetName) where T : UnityEngine.Object { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E82 RID: 3714 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E82")] [Address(RVA = "0x2D10C0", Offset = "0x2CFEC0", VA = "0x1802D10C0")] public T GetSubAsset(int assetType, string assetName, string subAssetName) where T : UnityEngine.Object { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E83 RID: 3715 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E83")] [Address(RVA = "0x2D0D50", Offset = "0x2CFB50", VA = "0x1802D0D50")] public T[] GetAllAssets(int assetType, string assetName) where T : UnityEngine.Object { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E84 RID: 3716 RVA: 0x00022984 File Offset: 0x00020B84 [Token(Token = "0x6000E84")] [Address(RVA = "0x5399C0", Offset = "0x5387C0", VA = "0x1805399C0")] public void UnloadUnusedAssets() { this.assetsCache.Clear(); AsyncOperation asyncOperation = Resources.UnloadUnusedAssets(); } // Token: 0x06000E85 RID: 3717 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E85")] [Address(RVA = "0x5397A0", Offset = "0x5385A0", VA = "0x1805397A0")] public void UnloadAssetsCache(string resType) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E86 RID: 3718 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E86")] [Address(RVA = "0x538DB0", Offset = "0x537BB0", VA = "0x180538DB0")] public void Dispose() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E87 RID: 3719 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E87")] [Address(RVA = "0x539730", Offset = "0x538530", VA = "0x180539730")] private IEnumerator Tick() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E88 RID: 3720 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E88")] [Address(RVA = "0x539A10", Offset = "0x538810", VA = "0x180539A10")] private IEnumerator WaitForAllHandlingRequest() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E89 RID: 3721 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E89")] [Address(RVA = "0x538F30", Offset = "0x537D30", VA = "0x180538F30")] private void HandleRequests() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E8A RID: 3722 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E8A")] [Address(RVA = "0x538E60", Offset = "0x537C60", VA = "0x180538E60")] private UnityEngine.Object[] GetAssetFromCache(string assetKey) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E8B RID: 3723 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E8B")] [Address(RVA = "0x5391E0", Offset = "0x537FE0", VA = "0x1805391E0")] private bool IsRequestHandled(AssetRequestBase req) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E8C RID: 3724 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E8C")] [Address(RVA = "0x539640", Offset = "0x538440", VA = "0x180539640")] private void OnAssetLoaded(AssetRequestBase req, UnityEngine.Object[] assetObjs) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E8D RID: 3725 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6000E8D")] [Address(RVA = "0x538EE0", Offset = "0x537CE0", VA = "0x180538EE0")] private string GetCacheKey(int resType, string assetName) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06000E8E RID: 3726 RVA: 0x000229AC File Offset: 0x00020BAC [Token(Token = "0x6000E8E")] [Address(RVA = "0x3D8B20", Offset = "0x3D7920", VA = "0x1803D8B20")] public GameAssetManager() { } // Token: 0x0400190C RID: 6412 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400190C")] private AssetLoader assetLoader; // Token: 0x0400190D RID: 6413 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400190D")] private Queue handlingRequests; // Token: 0x0400190E RID: 6414 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400190E")] private List pendingRequests; // Token: 0x0400190F RID: 6415 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400190F")] private Dictionary assetsCache; // Token: 0x04001910 RID: 6416 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4001910")] private CoroutineHandle assetRequestProcessor; // Token: 0x04001911 RID: 6417 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4001911")] private Action updateHandler; // Token: 0x04001912 RID: 6418 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4001912")] private Action completeHandler; // Token: 0x04001913 RID: 6419 [Token(Token = "0x4001913")] private const int ASSET_REQUEST_HANDLING_RATE = 8; }