using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using Cpp2IlInjected; using RecRoom.Avatars.Data.Runtime; using RecRoom.Avatars.Outfit; using RecRoom.Consumable; using RecRoom.Core; using UnityEngine; using UnityEngine.Rendering.Universal; // Token: 0x020003DA RID: 986 [Token(Token = "0x20003DA")] public class ImposterSpawnManager : SingletonMonoBehaviour { // Token: 0x17000591 RID: 1425 // (get) Token: 0x06001F5B RID: 8027 RVA: 0x00080738 File Offset: 0x0007E938 [Token(Token = "0x17000591")] private int FFMLOLDJEJA { [Token(Token = "0x6001F5B")] [Address(RVA = "0x13603C0", Offset = "0x135F3C0", VA = "0x1813603C0")] get { IRecRoomQualityConfigProvider nncbfajkomh = this.NNCBFAJKOMH; throw new NullReferenceException(); } } // Token: 0x06001F5C RID: 8028 RVA: 0x00080754 File Offset: 0x0007E954 [Token(Token = "0x6001F5C")] [Address(RVA = "0x135F960", Offset = "0x135E960", VA = "0x18135F960", Slot = "4")] protected override void Awake() { base.Awake(); Action action = new Action(this.EHDNCHLIKMF); IRecRoomQualityConfigProvider recRoomQualityConfigProvider; this.NNCBFAJKOMH = recRoomQualityConfigProvider; } // Token: 0x06001F5D RID: 8029 RVA: 0x00080788 File Offset: 0x0007E988 [Token(Token = "0x6001F5D")] [Address(RVA = "0x13600E0", Offset = "0x135F0E0", VA = "0x1813600E0")] private void EHDNCHLIKMF(PPDOPHKNMCK NLNHFEEMFBN) { IRecRoomQualityConfigProvider recRoomQualityConfigProvider; this.NNCBFAJKOMH = recRoomQualityConfigProvider; } // Token: 0x06001F5E RID: 8030 RVA: 0x000807A4 File Offset: 0x0007E9A4 [Token(Token = "0x6001F5E")] [Address(RVA = "0x1360550", Offset = "0x135F550", VA = "0x181360550")] private void Start() { Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG; Stack pbaokcmdcnh = this.PBAOKCMDCNH; ImposterSpawnManager.GFJAPNINJPJ gfjapninjpj; gfjapninjpj.System.IDisposable.Dispose(); gfjapninjpj.<>1__state = (int)((ulong)0L); gfjapninjpj.<>4__this = this; gfjapninjpj.queue = pbaokcmdcnh; KFBABPAPIMB kfbabpapimb = instance.Run(this, gfjapninjpj); } // Token: 0x06001F5F RID: 8031 RVA: 0x000807EC File Offset: 0x0007E9EC [Token(Token = "0x6001F5F")] [Address(RVA = "0x1360410", Offset = "0x135F410", VA = "0x181360410", Slot = "5")] protected override void OnDestroy() { Action action = new Action(this.EHDNCHLIKMF); this.PBAOKCMDCNH.Clear(); base.OnDestroy(); } // Token: 0x06001F60 RID: 8032 RVA: 0x00080820 File Offset: 0x0007EA20 [Token(Token = "0x6001F60")] [Address(RVA = "0x13602F0", Offset = "0x135F2F0", VA = "0x1813602F0")] public JCOINEEFENJ LoadItemAsync(AvatarItem LACNEKHKOII) { ImposterSpawnManager.KNICAPDOFDI knicapdofdi; knicapdofdi.NAAEMBKDEGI = (ulong)0L; DCLIBCDKJNF dclibcdkjnf = new DCLIBCDKJNF(); knicapdofdi.BAINEAGHDEH = dclibcdkjnf; this.PBAOKCMDCNH.Push(knicapdofdi); DCLIBCDKJNF baineaghdeh = knicapdofdi.BAINEAGHDEH; throw new NullReferenceException(); } // Token: 0x06001F61 RID: 8033 RVA: 0x0008085C File Offset: 0x0007EA5C [Token(Token = "0x6001F61")] [Address(RVA = "0x1360210", Offset = "0x135F210", VA = "0x181360210")] public JCOINEEFENJ LoadItemAsync(MJLPNOMEFKG NAAEMBKDEGI) { ImposterSpawnManager.KNICAPDOFDI knicapdofdi; knicapdofdi.NAAEMBKDEGI = NAAEMBKDEGI; if (NAAEMBKDEGI.k__BackingField == CDFEDFLKOBE.OutfitItem) { } DCLIBCDKJNF dclibcdkjnf = new DCLIBCDKJNF(); knicapdofdi.BAINEAGHDEH = dclibcdkjnf; this.PBAOKCMDCNH.Push(knicapdofdi); DCLIBCDKJNF baineaghdeh = knicapdofdi.BAINEAGHDEH; throw new NullReferenceException(); } // Token: 0x06001F62 RID: 8034 RVA: 0x000808A0 File Offset: 0x0007EAA0 [Token(Token = "0x6001F62")] [Address(RVA = "0x13601A0", Offset = "0x135F1A0", VA = "0x1813601A0")] private IEnumerator LPJIOPNMHJD(Stack MJHMBNIDGCA) { /* An exception occurred when decompiling this method (06001F62) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 ImposterSpawnManager::LPJIOPNMHJD(System.Collections.Generic.Stack`1) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(GFJAPNINJPJ::System.IDisposable.Dispose, ldloc:GFJAPNINJPJ(var_0)) stfld:ImposterSpawnManager(GFJAPNINJPJ::<>4__this, ldloc:GFJAPNINJPJ(var_0), ldloc:ImposterSpawnManager(this)) stfld:int32(GFJAPNINJPJ::<>1__state, ldloc:GFJAPNINJPJ(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:class [System]System.Collections.Generic.Stack`1(GFJAPNINJPJ::queue, ldloc:GFJAPNINJPJ(var_0), ldloc:class [System]System.Collections.Generic.Stack`1(MJHMBNIDGCA)) } at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852 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 355 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 1663 */; } // Token: 0x06001F63 RID: 8035 RVA: 0x000808CC File Offset: 0x0007EACC [Token(Token = "0x6001F63")] [Address(RVA = "0x135FAF0", Offset = "0x135EAF0", VA = "0x18135FAF0")] private DABKFAIHBBP BEHEGDPEALL(Stack MJHMBNIDGCA) { do { ImposterSpawnManager.KNICAPDOFDI knicapdofdi = MJHMBNIDGCA.Pop(); ImposterSpawnManager.KNICAPDOFDI loadRequest = knicapdofdi; DCLIBCDKJNF baineaghdeh = knicapdofdi.BAINEAGHDEH; CBLLFJEDOII cbllfjedoii = new CBLLFJEDOII(); ImposterSpawnManager.KNICAPDOFDI loadRequest2 = loadRequest; MJLPNOMEFKG naaembkdegi = loadRequest2.NAAEMBKDEGI; MJLPNOMEFKG currentItem = naaembkdegi; if (loadRequest2.NAAEMBKDEGI == (ulong)0L) { OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; AvatarItem lacnekhkoii = loadRequest.LACNEKHKOII; PMGCJEPKFOF pmgcjepkfof = instance.SpawnOutfitImposter(lacnekhkoii); if (ImposterSpawnManager.<>c.<>9__14_0 == 0) { ImposterSpawnManager.<>c.<>9__14_0 = (OutfitRenderSetup v) => v.gameObject; } } if (naaembkdegi.k__BackingField > CDFEDFLKOBE.Query) { goto IL_13E; } OutfitManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; } while (ImposterSpawnManager.<>c.<>9__14_2 != 0); ImposterSpawnManager.<>c.<>9__14_2 = (OutfitRenderSetup v) => v.gameObject; EquipmentManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; MJLPNOMEFKG currentItem3 = emfjpdpcjin.currentItem; string k__BackingField = currentItem3.k__BackingField; string k__BackingField = currentItem3.k__BackingField; GameObject gameObject = instance3.SpawnEquipmentImposter(k__BackingField, k__BackingField); ConsumableManager instance4 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; string k__BackingField = emfjpdpcjin.currentItem.k__BackingField; GameObject gameObject2 = instance4.SpawnConsumableImposter(k__BackingField); MJLPNOMEFKG currentItem2 = emfjpdpcjin.currentItem; GiftBoxMerchVisual giftBoxMerchVisual; bool flag = giftBoxMerchVisual.SetGiftDrop(currentItem2); GameObject gameObject3 = giftBoxMerchVisual.gameObject; OutfitManager instance5 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; string k__BackingField = emfjpdpcjin.currentItem.k__BackingField; GameObject gameObject4 = instance5.SpawnHairDyeImposter(k__BackingField); IL_13E: PMGCJEPKFOF pmgcjepkfof2 = JJEKJGALHKO.MKLIDFOGIGO(0); Action action = delegate(GameObject visualGo) { if (!emfjpdpcjin.loadRequest.BAINEAGHDEH.HLBOMBLINAL) { int num = 0; if (visualGo != num) { global::UnityEngine.Object.Destroy(visualGo); return; } } int num2 = 0; if (visualGo != num2) { if (emfjpdpcjin.currentItem != 0) { } OutfitManager instance6 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; AvatarItem lacnekhkoii2 = emfjpdpcjin.loadRequest.LACNEKHKOII; string itemFriendlyName = instance6.GetItemFriendlyName(lacnekhkoii2); visualGo.name = itemFriendlyName; } emfjpdpcjin.loadRequest.BAINEAGHDEH.OOOIENHGNCA(visualGo); }; DCLIBCDKJNF baineaghdeh2 = emfjpdpcjin.loadRequest.BAINEAGHDEH; throw new NullReferenceException(); } // Token: 0x06001F64 RID: 8036 RVA: 0x00080A40 File Offset: 0x0007EC40 [Token(Token = "0x6001F64")] [Address(RVA = "0x1360630", Offset = "0x135F630", VA = "0x181360630")] public ImposterSpawnManager() { Stack stack = new Stack(); this.PBAOKCMDCNH = stack; base..ctor(); } // Token: 0x06001F65 RID: 8037 RVA: 0x00080A60 File Offset: 0x0007EC60 [Token(Token = "0x6001F65")] [Address(RVA = "0xA4B7D0", Offset = "0xA4A7D0", VA = "0x180A4B7D0")] [CompilerGenerated] private void DADHLOPLABH() { } // Token: 0x040017C2 RID: 6082 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40017C2")] [SerializeField] private GiftBoxMerchVisual giftBoxMerchVisualPrefab; // Token: 0x040017C3 RID: 6083 [FieldOffset(Offset = "0x20")] [Token(Token = "0x40017C3")] private readonly Stack PBAOKCMDCNH; // Token: 0x040017C4 RID: 6084 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40017C4")] private int KBCKLJLADDF; // Token: 0x040017C5 RID: 6085 [FieldOffset(Offset = "0x30")] [Token(Token = "0x40017C5")] private IRecRoomQualityConfigProvider NNCBFAJKOMH; // Token: 0x020003DB RID: 987 [Token(Token = "0x20003DB")] private class KNICAPDOFDI { // Token: 0x06001F66 RID: 8038 RVA: 0x00080A70 File Offset: 0x0007EC70 [Token(Token = "0x6001F66")] [Address(RVA = "0x1371F70", Offset = "0x1370F70", VA = "0x181371F70")] public KNICAPDOFDI(MJLPNOMEFKG NAAEMBKDEGI) { this.NAAEMBKDEGI = NAAEMBKDEGI; if (NAAEMBKDEGI.k__BackingField == CDFEDFLKOBE.OutfitItem) { } DCLIBCDKJNF dclibcdkjnf = new DCLIBCDKJNF(); this.BAINEAGHDEH = dclibcdkjnf; } // Token: 0x06001F67 RID: 8039 RVA: 0x00080AA8 File Offset: 0x0007ECA8 [Token(Token = "0x6001F67")] [Address(RVA = "0x1372000", Offset = "0x1371000", VA = "0x181372000")] public KNICAPDOFDI(AvatarItem LACNEKHKOII) { this.NAAEMBKDEGI = (ulong)0L; DCLIBCDKJNF dclibcdkjnf = new DCLIBCDKJNF(); this.BAINEAGHDEH = dclibcdkjnf; } // Token: 0x040017C6 RID: 6086 [FieldOffset(Offset = "0x10")] [Token(Token = "0x40017C6")] public MJLPNOMEFKG NAAEMBKDEGI; // Token: 0x040017C7 RID: 6087 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40017C7")] public AvatarItem LACNEKHKOII; // Token: 0x040017C8 RID: 6088 [FieldOffset(Offset = "0x28")] [Token(Token = "0x40017C8")] public DCLIBCDKJNF BAINEAGHDEH; } // Token: 0x020003DD RID: 989 [Token(Token = "0x20003DD")] [CompilerGenerated] private sealed class EMFJPDPCJIN { // Token: 0x06001F6E RID: 8046 RVA: 0x00080BD8 File Offset: 0x0007EDD8 [Token(Token = "0x6001F6E")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public EMFJPDPCJIN() { } // Token: 0x06001F6F RID: 8047 RVA: 0x00080BEC File Offset: 0x0007EDEC [Token(Token = "0x6001F6F")] [Address(RVA = "0x135C6A0", Offset = "0x135B6A0", VA = "0x18135C6A0")] internal void b__1(GameObject visualGo) { if (!this.loadRequest.BAINEAGHDEH.HLBOMBLINAL) { int num = 0; if (visualGo != num) { global::UnityEngine.Object.Destroy(visualGo); return; } } int num2 = 0; if (visualGo != num2) { if (this.currentItem != 0) { } OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; AvatarItem lacnekhkoii = this.loadRequest.LACNEKHKOII; string itemFriendlyName = instance.GetItemFriendlyName(lacnekhkoii); visualGo.name = itemFriendlyName; } this.loadRequest.BAINEAGHDEH.OOOIENHGNCA(visualGo); } // Token: 0x040017CD RID: 6093 [FieldOffset(Offset = "0x10")] [Token(Token = "0x40017CD")] public ImposterSpawnManager.KNICAPDOFDI loadRequest; // Token: 0x040017CE RID: 6094 [FieldOffset(Offset = "0x18")] [Token(Token = "0x40017CE")] public MJLPNOMEFKG currentItem; } }