using System; using System.Collections; using System.Collections.Generic; using Cpp2IlInjected; using RecRoom.Core; using RecRoom.Core.Pools; using UnityEngine; namespace RecRoom { // Token: 0x02002190 RID: 8592 [Token(Token = "0x2002190")] public class CurrencyManager : SingletonMonoBehaviour { // Token: 0x1700229C RID: 8860 // (get) Token: 0x0600D998 RID: 55704 RVA: 0x00320094 File Offset: 0x0031E294 [Token(Token = "0x1700229C")] public bool BJHGECKBCEO { [Token(Token = "0x600D998")] [Address(RVA = "0x1272A90", Offset = "0x1271A90", VA = "0x181272A90")] get { while (this.CCGHGCJJONJ != 0) { } } } // Token: 0x1700229D RID: 8861 // (get) Token: 0x0600D999 RID: 55705 RVA: 0x003200AC File Offset: 0x0031E2AC [Token(Token = "0x1700229D")] public bool HOGICELBMNA { [Token(Token = "0x600D999")] [Address(RVA = "0x1272A40", Offset = "0x1271A40", VA = "0x181272A40")] get { while (this.PNABCMMHIHC != 0) { } } } // Token: 0x1700229E RID: 8862 // (get) Token: 0x0600D99A RID: 55706 RVA: 0x003200C4 File Offset: 0x0031E2C4 [Token(Token = "0x1700229E")] private bool DEKMHMEINCI { [Token(Token = "0x600D99A")] [Address(RVA = "0x1271D00", Offset = "0x1270D00", VA = "0x181271D00")] get { Transform transform = Player.k__BackingField.head.transform; Vector3 vector; float z = vector.z; float z2 = Player.k__BackingField.k__BackingField.z; Vector3 vector2; float z3 = vector2.z; throw new NullReferenceException(); } } // Token: 0x0600D99B RID: 55707 RVA: 0x0032010C File Offset: 0x0031E30C [Token(Token = "0x600D99B")] [Address(RVA = "0x1271730", Offset = "0x1270730", VA = "0x181271730", Slot = "4")] protected override void Awake() { base.Awake(); MFBGLIHGCGO> bpbdcmoohlk = GEAPBDGCKMB.BPBDCMOOHLK; Action> action = new Action(this.BPBDCMOOHLK); GEAPBDGCKMB.BPBDCMOOHLK = MFBGLIHGCGO.BPJDFPACLMK(bpbdcmoohlk, action); } // Token: 0x0600D99C RID: 55708 RVA: 0x00320140 File Offset: 0x0031E340 [Token(Token = "0x600D99C")] [Address(RVA = "0x1272560", Offset = "0x1271560", VA = "0x181272560", Slot = "5")] protected override void OnDestroy() { base.OnDestroy(); MFBGLIHGCGO> bpbdcmoohlk = GEAPBDGCKMB.BPBDCMOOHLK; Action> action = new Action(this.BPBDCMOOHLK); GEAPBDGCKMB.BPBDCMOOHLK = MFBGLIHGCGO.GMNMHGMFGOL(bpbdcmoohlk, action); } // Token: 0x0600D99D RID: 55709 RVA: 0x00320174 File Offset: 0x0031E374 [Token(Token = "0x600D99D")] [Address(RVA = "0x1271A50", Offset = "0x1270A50", VA = "0x181271A50")] private void BPBDCMOOHLK(GEAPBDGCKMB.BalanceUpdateResponseDTO MAOOLFEBOOD) { int num; do { num = 0; bool flag; if (flag) { while (!flag) { } while (!flag) { } PMGCJEPKFOF pmgcjepkfof; if (MAOOLFEBOOD == (ulong)101L && SingletonMonoBehaviour.ONCPNMDGGKG != 0 && pmgcjepkfof == (ulong)2L) { continue; } CurrencyManager.CurrencyTypeSettings currencyTypeSettings; while (currencyTypeSettings == 0) { } while (currencyTypeSettings.skipAwardNotifications) { } IEnumerator enumerator; KFBABPAPIMB kfbabpapimb = SingletonMonoBehaviour.ONCPNMDGGKG.Run(this, enumerator); this.CCGHGCJJONJ = kfbabpapimb; } } while (num != 0); } // Token: 0x0600D99E RID: 55710 RVA: 0x003201DC File Offset: 0x0031E3DC [Token(Token = "0x600D99E")] [Address(RVA = "0x1271F70", Offset = "0x1270F70", VA = "0x181271F70")] private IEnumerator FNNPEBPMION(CurrencyManager.CurrencyAward FPHMMOJOLBB) { /* An exception occurred when decompiling this method (0600D99E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.CurrencyManager::FNNPEBPMION(RecRoom.CurrencyManager/CurrencyAward) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(ABLJAGAGLCH::System.IDisposable.Dispose, ldloc:ABLJAGAGLCH(var_0)) stfld:CurrencyManager(ABLJAGAGLCH::<>4__this, ldloc:ABLJAGAGLCH(var_0), ldloc:CurrencyManager(this)) stloc:DKMCNBHMKIK(var_1_13, ldfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldloc:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](FPHMMOJOLBB))) stfld:int32(ABLJAGAGLCH::<>1__state, ldloc:ABLJAGAGLCH(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldfld:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](ABLJAGAGLCH::currencyAward, ldloc:ABLJAGAGLCH(var_0)), ldloc:DKMCNBHMKIK(var_1_13)) } 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: 0x0600D99F RID: 55711 RVA: 0x00320214 File Offset: 0x0031E414 [Token(Token = "0x600D99F")] [Address(RVA = "0x1272630", Offset = "0x1271630", VA = "0x181272630")] public void ReceiveCurrencyAwardFromGiftBox(Player FAGBHOMBNBP, int JBHHGNEADNC, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE, Transform CBKILDKGKHK) { } // Token: 0x0600D9A0 RID: 55712 RVA: 0x00320224 File Offset: 0x0031E424 [Token(Token = "0x600D9A0")] [Address(RVA = "0x1272690", Offset = "0x1271690", VA = "0x181272690")] public void StartReceiveCurrencyAwardsCoroutine(Player AGHAGCKIPIK, CurrencyManager.CurrencyAward NEMAPMFAPNN, Transform CBKILDKGKHK, bool JCGKKHEFNIK) { if (this.PNABCMMHIHC != 0) { KFBABPAPIMB pnabcmmhihc = this.PNABCMMHIHC; } Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG; CurrencyManager.ICLAHBIDBGH iclahbidbgh; iclahbidbgh.System.IDisposable.Dispose(); iclahbidbgh.<>1__state = (int)((ulong)0L); iclahbidbgh.<>4__this = this; iclahbidbgh.targetPlayer = AGHAGCKIPIK; iclahbidbgh.spawnTransform = CBKILDKGKHK; iclahbidbgh.fromGiftBox = false; DKMCNBHMKIK balanceAddType = NEMAPMFAPNN.balanceAddType; iclahbidbgh.award.balanceAddType = balanceAddType; KFBABPAPIMB kfbabpapimb = instance.Run(this, iclahbidbgh); this.PNABCMMHIHC = kfbabpapimb; } // Token: 0x0600D9A1 RID: 55713 RVA: 0x003202A0 File Offset: 0x0031E4A0 [Token(Token = "0x600D9A1")] [Address(RVA = "0x1272800", Offset = "0x1271800", VA = "0x181272800")] public void StopReceiveCurrencyAwardsCoroutine() { if (this.PNABCMMHIHC != 0) { KFBABPAPIMB pnabcmmhihc = this.PNABCMMHIHC; } } // Token: 0x0600D9A2 RID: 55714 RVA: 0x003202C4 File Offset: 0x0031E4C4 [Token(Token = "0x600D9A2")] [Address(RVA = "0x12723F0", Offset = "0x12713F0", VA = "0x1812723F0")] private IEnumerator MGBFMKCKGMO(Player AGHAGCKIPIK, CurrencyManager.CurrencyAward NEMAPMFAPNN, Transform CBKILDKGKHK, bool JCGKKHEFNIK) { /* An exception occurred when decompiling this method (0600D9A2) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.CurrencyManager::MGBFMKCKGMO(Player,RecRoom.CurrencyManager/CurrencyAward,UnityEngine.Transform,System.Boolean) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(ICLAHBIDBGH::System.IDisposable.Dispose, ldloc:ICLAHBIDBGH(var_0)) stloc:DKMCNBHMKIK(var_1_0C, ldfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldloc:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](NEMAPMFAPNN))) stfld:Player(ICLAHBIDBGH::targetPlayer, ldloc:ICLAHBIDBGH(var_0), ldloc:Player(AGHAGCKIPIK)) stfld:Transform(ICLAHBIDBGH::spawnTransform, ldloc:ICLAHBIDBGH(var_0), ldloc:Transform(CBKILDKGKHK)) stfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldfld:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](ICLAHBIDBGH::award, ldloc:ICLAHBIDBGH(var_0)), ldloc:DKMCNBHMKIK(var_1_0C)) stfld:int32(ICLAHBIDBGH::<>1__state, ldloc:ICLAHBIDBGH(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(ICLAHBIDBGH::<>4__this, ldloc:ICLAHBIDBGH(var_0), ldloc:CurrencyManager(this)) stfld:bool(ICLAHBIDBGH::fromGiftBox, ldloc:ICLAHBIDBGH(var_0), ldc.i4:bool(0)) } 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: 0x0600D9A3 RID: 55715 RVA: 0x00320310 File Offset: 0x0031E510 [Token(Token = "0x600D9A3")] [Address(RVA = "0x12722C0", Offset = "0x12712C0", VA = "0x1812722C0")] private IEnumerator HCHNKMNBIBB(Player AGHAGCKIPIK, int DDHJGFIHFGL, Transform CBKILDKGKHK, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE, bool JCGKKHEFNIK) { /* An exception occurred when decompiling this method (0600D9A3) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.CurrencyManager::HCHNKMNBIBB(Player,System.Int32,UnityEngine.Transform,RecRoom.CurrencyManager/NotificationTimings,ACDKILABNNC,System.Nullable`1,System.Boolean) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(DNMCEKFIHFI::System.IDisposable.Dispose, ldloc:DNMCEKFIHFI(var_0)) stfld:ACDKILABNNC(DNMCEKFIHFI::currencyType, ldloc:DNMCEKFIHFI(var_0), ldc.i4:ACDKILABNNC(0)) stfld:valuetype [mscorlib]System.Nullable`1(DNMCEKFIHFI::platformType, ldloc:DNMCEKFIHFI(var_0), ldc.i4:int32[exp:valuetype [mscorlib]System.Nullable`1](0)) stfld:bool(DNMCEKFIHFI::fromGiftBox, ldloc:DNMCEKFIHFI(var_0), ldc.i4:bool(0)) stfld:Player(DNMCEKFIHFI::targetPlayer, ldloc:DNMCEKFIHFI(var_0), ldloc:Player(AGHAGCKIPIK)) stfld:int32(DNMCEKFIHFI::awardAmount, ldloc:DNMCEKFIHFI(var_0), ldloc:int32(DDHJGFIHFGL)) stfld:Transform(DNMCEKFIHFI::spawnTransform, ldloc:DNMCEKFIHFI(var_0), ldloc:Transform(CBKILDKGKHK)) stfld:int32(DNMCEKFIHFI::<>1__state, ldloc:DNMCEKFIHFI(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(DNMCEKFIHFI::<>4__this, ldloc:DNMCEKFIHFI(var_0), ldloc:CurrencyManager(this)) } 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: 0x0600D9A4 RID: 55716 RVA: 0x0032035C File Offset: 0x0031E55C [Token(Token = "0x600D9A4")] [Address(RVA = "0x1271FF0", Offset = "0x1270FF0", VA = "0x181271FF0")] private void GBBCOPKOPKE(float DDHJGFIHFGL, float ENCKBCHIPCL, Transform CBKILDKGKHK, CurrencyManager.CurrencyTypeSettings GHGBPMPLLBK) { GlobalPool instance = GlobalPool.ONCPNMDGGKG; PooledParticle pooledParticle; Transform transform = pooledParticle.transform; Vector3 vector; float z = vector.z; Transform transform2 = pooledParticle.transform; ParticleSystem.MainModule main = pooledParticle.k__BackingField.main; ParticleSystem.MainModule main2 = pooledParticle.k__BackingField.main; int num = 0; pooledParticle.Play(num != 0, -1f); } // Token: 0x0600D9A5 RID: 55717 RVA: 0x003203BC File Offset: 0x0031E5BC [Token(Token = "0x600D9A5")] [Address(RVA = "0x1271800", Offset = "0x1270800", VA = "0x181271800")] private void BFEBGOPHPBK(Player AGHAGCKIPIK, int DDHJGFIHFGL, Vector3 CAOHCBNEEND, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; if (currencyTypeSettings != 0) { } int num = 0; int num2 = 0; bool flag = num != num2; if (!flag) { Debug.LogError("Collectible prefab for " + flag + " is null"); } if (CurrencyManager.<>c.<>9__34_0 == 0) { CurrencyManager.<>c.<>9__34_0 = delegate { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); }; } float z = CAOHCBNEEND.z; IEnumerator enumerator; Coroutine coroutine = base.StartCoroutine(enumerator); } // Token: 0x0600D9A6 RID: 55718 RVA: 0x00320424 File Offset: 0x0031E624 [Token(Token = "0x600D9A6")] [Address(RVA = "0x1271650", Offset = "0x1270650", VA = "0x181271650")] private IEnumerator AMIDOAEOCOB(WorldSpaceNotification NOEDFHOANIO, string ACPMLLINIMG, int DDHJGFIHFGL, int PIIFLHOIFNK, Vector3 CAOHCBNEEND, Quaternion IGPENJBJADK, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { /* An exception occurred when decompiling this method (0600D9A6) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.CurrencyManager::AMIDOAEOCOB(WorldSpaceNotification,System.String,System.Int32,System.Int32,UnityEngine.Vector3,UnityEngine.Quaternion,RecRoom.CurrencyManager/NotificationTimings,ACDKILABNNC,System.Nullable`1) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(MMKHADIFDMK::System.IDisposable.Dispose, ldloc:MMKHADIFDMK(var_0)) stfld:int32(MMKHADIFDMK::previousAward, ldloc:MMKHADIFDMK(var_0), ldc.i4:int32(0)) stfld:WorldSpaceNotification(MMKHADIFDMK::notification, ldloc:MMKHADIFDMK(var_0), ldloc:WorldSpaceNotification(NOEDFHOANIO)) stfld:string(MMKHADIFDMK::subtitle, ldloc:MMKHADIFDMK(var_0), ldloc:string(ACPMLLINIMG)) stfld:float32(Vector3::z, ldfld:Vector3[exp:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3&](MMKHADIFDMK::spawnPosition, ldloc:MMKHADIFDMK(var_0)), ldloc:MMKHADIFDMK[exp:float32](var_0)) stfld:int32(MMKHADIFDMK::awardAmount, ldloc:MMKHADIFDMK(var_0), ldloc:int32(DDHJGFIHFGL)) stfld:int32(MMKHADIFDMK::<>1__state, ldloc:MMKHADIFDMK(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(MMKHADIFDMK::<>4__this, ldloc:MMKHADIFDMK(var_0), ldloc:CurrencyManager(this)) stfld:ACDKILABNNC(MMKHADIFDMK::currencyType, ldloc:MMKHADIFDMK(var_0), ldc.i4:ACDKILABNNC(0)) stfld:valuetype [mscorlib]System.Nullable`1(MMKHADIFDMK::platformType, ldloc:MMKHADIFDMK(var_0), ldc.i4:int32[exp:valuetype [mscorlib]System.Nullable`1](0)) } 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: 0x0600D9A7 RID: 55719 RVA: 0x0032047C File Offset: 0x0031E67C [Token(Token = "0x600D9A7")] [Address(RVA = "0x12724A0", Offset = "0x12714A0", VA = "0x1812724A0")] private CurrencyManager.CurrencyTypeSettings NPLGPEONBLD(ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings[] array = this.currencyTypeSettings; int num = 0; int length = array.Length; if (num < length) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings = array[num]; bool flag; if (currencyTypeSettings.currencyType != DLNFAILEHOA || !flag) { num++; } return currencyTypeSettings; } throw new NullReferenceException(); } // Token: 0x0600D9A8 RID: 55720 RVA: 0x003204C4 File Offset: 0x0031E6C4 [Token(Token = "0x600D9A8")] [Address(RVA = "0x1272380", Offset = "0x1271380", VA = "0x181272380")] private bool INBCPECPLJH(CurrencyManager.CurrencyTypeSettings GHGBPMPLLBK, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { if (DLNFAILEHOA != ACDKILABNNC.RecCenterTokens) { return true; } MLFKNFFOOPF[] platformTypes = GHGBPMPLLBK.platformTypes; bool flag; return !flag; } // Token: 0x0600D9A9 RID: 55721 RVA: 0x003204E8 File Offset: 0x0031E6E8 [Token(Token = "0x600D9A9")] [Address(RVA = "0x1272880", Offset = "0x1271880", VA = "0x181272880")] public string ToCurrencyString(long JDBAMHBKHPA, ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; string text; if ((ulong)(-9223372036854775808L) == (ulong)JDBAMHBKHPA) { if (currencyTypeSettings == 0 && (uint)1 == 0U) { return text; } } while (currencyTypeSettings == 0) { } return text; } // Token: 0x0600D9AA RID: 55722 RVA: 0x00320514 File Offset: 0x0031E714 [Token(Token = "0x600D9AA")] [Address(RVA = "0x1272220", Offset = "0x1271220", VA = "0x181272220")] public string GetPluralCurrencyName(ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; if (currencyTypeSettings == 0) { return "Tokens"; } string currencyName = currencyTypeSettings.currencyName; if (currencyTypeSettings.currencyNameSingularOnly) { } return currencyName + "s"; } // Token: 0x0600D9AB RID: 55723 RVA: 0x00320548 File Offset: 0x0031E748 [Token(Token = "0x600D9AB")] [Address(RVA = "0x1272200", Offset = "0x1271200", VA = "0x181272200")] public SpawnableCollectible GetCurrencyPrefab(ACDKILABNNC DLNFAILEHOA, MLFKNFFOOPF? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; do { currencyTypeSettings = this.NPLGPEONBLD(DLNFAILEHOA, DOLIGIACECE); } while (currencyTypeSettings == 0); return currencyTypeSettings.currencyPrefab; } // Token: 0x0600D9AC RID: 55724 RVA: 0x00320568 File Offset: 0x0031E768 [Token(Token = "0x600D9AC")] [Address(RVA = "0x1272980", Offset = "0x1271980", VA = "0x181272980")] public CurrencyManager() { int num = 0; this.postBaseAwardDelay = 0.65f; this.preFinishAudioDelay = 0.5f; CurrencyManager.CurrencyTypeSettings[] array = new CurrencyManager.CurrencyTypeSettings[num]; this.currencyTypeSettings = array; this.bonusSubtitleTemplate = "Daily bonus {0}/{1}"; this.awardNoDailySubtitle = "Daily bonus complete"; this.titleTemplate = "You've won {0}"; this.celebrateParticleSpacing = 0.4f; this.ANOEOCCPOPE = (int)((ulong)1L); base..ctor(); } // Token: 0x04008AB5 RID: 35509 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4008AB5")] [SerializeField] [Header("Award Timings")] private CurrencyManager.NotificationTimings baseAwardNotificationTimings; // Token: 0x04008AB6 RID: 35510 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4008AB6")] [SerializeField] private CurrencyManager.NotificationTimings bonusAwardNotificationTimings; // Token: 0x04008AB7 RID: 35511 [FieldOffset(Offset = "0x58")] [Token(Token = "0x4008AB7")] [SerializeField] private float postSpawnDelay = 0.5f; // Token: 0x04008AB8 RID: 35512 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x4008AB8")] [SerializeField] private float postBaseAwardDelay; // Token: 0x04008AB9 RID: 35513 [FieldOffset(Offset = "0x60")] [Token(Token = "0x4008AB9")] [SerializeField] public float preFinishAudioDelay; // Token: 0x04008ABA RID: 35514 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4008ABA")] [SerializeField] [Header("Texts")] private CurrencyManager.CurrencyTypeSettings[] currencyTypeSettings; // Token: 0x04008ABB RID: 35515 [FieldOffset(Offset = "0x70")] [Token(Token = "0x4008ABB")] [SerializeField] private string bonusSubtitleTemplate; // Token: 0x04008ABC RID: 35516 [FieldOffset(Offset = "0x78")] [Token(Token = "0x4008ABC")] [SerializeField] private string awardNoDailySubtitle; // Token: 0x04008ABD RID: 35517 [FieldOffset(Offset = "0x80")] [Token(Token = "0x4008ABD")] [SerializeField] private string titleTemplate; // Token: 0x04008ABE RID: 35518 [FieldOffset(Offset = "0x88")] [Token(Token = "0x4008ABE")] [SerializeField] [Header("Particles")] private PooledParticle celebrateParticlePrefab; // Token: 0x04008ABF RID: 35519 [FieldOffset(Offset = "0x90")] [Token(Token = "0x4008ABF")] [SerializeField] private float celebrateParticleSpacing; // Token: 0x04008AC0 RID: 35520 [FieldOffset(Offset = "0x94")] [Token(Token = "0x4008AC0")] private int ANOEOCCPOPE; // Token: 0x04008AC1 RID: 35521 [FieldOffset(Offset = "0x98")] [Token(Token = "0x4008AC1")] private KFBABPAPIMB PNABCMMHIHC; // Token: 0x04008AC2 RID: 35522 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4008AC2")] private KFBABPAPIMB CCGHGCJJONJ; // Token: 0x04008AC3 RID: 35523 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x4008AC3")] private GameObject AOBKCHPPNNC; // Token: 0x02002191 RID: 8593 [Token(Token = "0x2002191")] [Serializable] public struct NotificationTimings { // Token: 0x04008AC4 RID: 35524 [FieldOffset(Offset = "0x0")] [Token(Token = "0x4008AC4")] public float preCollectableDelay; // Token: 0x04008AC5 RID: 35525 [FieldOffset(Offset = "0x4")] [Token(Token = "0x4008AC5")] public float collectableSpawnDuration; // Token: 0x04008AC6 RID: 35526 [FieldOffset(Offset = "0x8")] [Token(Token = "0x4008AC6")] public float postCollectableDelay; // Token: 0x04008AC7 RID: 35527 [FieldOffset(Offset = "0xC")] [Token(Token = "0x4008AC7")] public float awardCountDuration; // Token: 0x04008AC8 RID: 35528 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4008AC8")] public float awardCountTickFrequency; // Token: 0x04008AC9 RID: 35529 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4008AC9")] public RecRoomAudioClip celebrationStartAudio; } // Token: 0x02002192 RID: 8594 [Token(Token = "0x2002192")] [Serializable] public class CurrencyTypeSettings { // Token: 0x0600D9AD RID: 55725 RVA: 0x003205E4 File Offset: 0x0031E7E4 [Token(Token = "0x600D9AD")] [Address(RVA = "0x1272AE0", Offset = "0x1271AE0", VA = "0x181272AE0")] public CurrencyTypeSettings() { AnimationCurve animationCurve = AnimationCurve.Linear((float)0, 1f, 1f, 1f); this.particleSpawnAmounts = animationCurve; AnimationCurve animationCurve2 = AnimationCurve.Linear((float)0, 1f, 1f, 1f); this.particleSpawnDurations = animationCurve2; base..ctor(); } // Token: 0x04008ACA RID: 35530 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4008ACA")] public ACDKILABNNC currencyType; // Token: 0x04008ACB RID: 35531 [FieldOffset(Offset = "0x14")] [Token(Token = "0x4008ACB")] public bool isPlatformSpecific; // Token: 0x04008ACC RID: 35532 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4008ACC")] public MLFKNFFOOPF[] platformTypes; // Token: 0x04008ACD RID: 35533 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4008ACD")] public string currencyName; // Token: 0x04008ACE RID: 35534 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4008ACE")] public bool currencyNameSingularOnly; // Token: 0x04008ACF RID: 35535 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4008ACF")] public SpawnableCollectible currencyPrefab; // Token: 0x04008AD0 RID: 35536 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4008AD0")] public PooledParticle currencyBoxAwardFx; // Token: 0x04008AD1 RID: 35537 [FieldOffset(Offset = "0x40")] [Token(Token = "0x4008AD1")] public AnimationCurve particleSpawnAmounts; // Token: 0x04008AD2 RID: 35538 [FieldOffset(Offset = "0x48")] [Token(Token = "0x4008AD2")] public AnimationCurve particleSpawnDurations; // Token: 0x04008AD3 RID: 35539 [FieldOffset(Offset = "0x50")] [Token(Token = "0x4008AD3")] public bool skipAwardNotifications; // Token: 0x04008AD4 RID: 35540 [FieldOffset(Offset = "0x58")] [Token(Token = "0x4008AD4")] [Header("Audio")] public RecRoomAudioClip celebrationFinishAudio; // Token: 0x04008AD5 RID: 35541 [FieldOffset(Offset = "0x60")] [Token(Token = "0x4008AD5")] public RecRoomAudioClip dispensingCurrencyAudioClip; // Token: 0x04008AD6 RID: 35542 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4008AD6")] public RecRoomAudioClip dispensingCurrencyShortAudioClip; // Token: 0x04008AD7 RID: 35543 [FieldOffset(Offset = "0x70")] [Token(Token = "0x4008AD7")] public RecRoomAudioClip countingCurrencyAudioClip; // Token: 0x04008AD8 RID: 35544 [FieldOffset(Offset = "0x78")] [Token(Token = "0x4008AD8")] public int smallAmountThreshold; } // Token: 0x02002193 RID: 8595 [Token(Token = "0x2002193")] [Serializable] public struct CurrencyAward { // Token: 0x04008AD9 RID: 35545 [FieldOffset(Offset = "0x0")] [Token(Token = "0x4008AD9")] public int baseAward; // Token: 0x04008ADA RID: 35546 [FieldOffset(Offset = "0x4")] [Token(Token = "0x4008ADA")] public int bonusAward; // Token: 0x04008ADB RID: 35547 [FieldOffset(Offset = "0x8")] [Token(Token = "0x4008ADB")] public int currentCount; // Token: 0x04008ADC RID: 35548 [FieldOffset(Offset = "0xC")] [Token(Token = "0x4008ADC")] public int rateLimit; // Token: 0x04008ADD RID: 35549 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4008ADD")] public DKMCNBHMKIK balanceAddType; // Token: 0x04008ADE RID: 35550 [FieldOffset(Offset = "0x14")] [Token(Token = "0x4008ADE")] public ACDKILABNNC currencyType; // Token: 0x04008ADF RID: 35551 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4008ADF")] public MLFKNFFOOPF? platformType; } } }