using System; using System.Collections; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom.Async; using RecRoom.Core; using RecRoom.Core.Pools; using UnityEngine; namespace RecRoom { // Token: 0x02001D00 RID: 7424 [Token(Token = "0x2001D00")] [StructLayout(3)] public class CurrencyManager : SingletonMonoBehaviour { // Token: 0x17001F1F RID: 7967 // (get) Token: 0x0600C79F RID: 51103 RVA: 0x002F57BC File Offset: 0x002F39BC [Token(Token = "0x17001F1F")] public bool BJHGECKBCEO { [Token(Token = "0x600C79F")] [Address(RVA = "0x121D2E0", Offset = "0x121BCE0", VA = "0x18121D2E0")] get { while (this.CCGHGCJJONJ != 0) { } } } // Token: 0x17001F20 RID: 7968 // (get) Token: 0x0600C7A0 RID: 51104 RVA: 0x002F57D4 File Offset: 0x002F39D4 [Token(Token = "0x17001F20")] public bool HOGICELBMNA { [Token(Token = "0x600C7A0")] [Address(RVA = "0x121D290", Offset = "0x121BC90", VA = "0x18121D290")] get { while (this.PNABCMMHIHC != 0) { } } } // Token: 0x17001F21 RID: 7969 // (get) Token: 0x0600C7A1 RID: 51105 RVA: 0x002F57EC File Offset: 0x002F39EC [Token(Token = "0x17001F21")] private bool DEKMHMEINCI { [Token(Token = "0x600C7A1")] [Address(RVA = "0x121C420", Offset = "0x121AE20", VA = "0x18121C420")] 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: 0x0600C7A2 RID: 51106 RVA: 0x002F5834 File Offset: 0x002F3A34 [Token(Token = "0x600C7A2")] [Address(RVA = "0x121CC80", Offset = "0x121B680", VA = "0x18121CC80")] public void ReceiveCurrencyAwardDirectly(Player FAGBHOMBNBP, int PLABGJCEDNM, int AKMCKAEDEIF, int PMFBBJNMNDC, int APNMPIBGHKF, DKMCNBHMKIK IGNJPMALPIK, ACDKILABNNC DLNFAILEHOA, JEHHKIPLMPM PBDLNAOOEGH) { IPromise promise; CurrencyManager.CurrencyTypeSettings currencyTypeSettings; if ((SingletonMonoBehaviour.Instance == 0 || promise != (ulong)2L) && currencyTypeSettings != 0 && !currencyTypeSettings.skipAwardNotifications) { Scheduler instance = SingletonMonoBehaviour.Instance; CurrencyManager.JFKGHIBDHFB jfkghibdhfb; jfkghibdhfb.System.IDisposable.Dispose(); jfkghibdhfb.<>1__state = (int)((ulong)0L); jfkghibdhfb.<>4__this = this; jfkghibdhfb.currencyAward = PLABGJCEDNM; ISchedulerPromise schedulerPromise = instance.Run(this, jfkghibdhfb); this.CCGHGCJJONJ = schedulerPromise; } } // Token: 0x0600C7A3 RID: 51107 RVA: 0x002F58A4 File Offset: 0x002F3AA4 [Token(Token = "0x600C7A3")] [Address(RVA = "0x121C690", Offset = "0x121B090", VA = "0x18121C690")] private IEnumerator FNNPEBPMION(CurrencyManager.CurrencyAward FPHMMOJOLBB) { /* An exception occurred when decompiling this method (0600C7A3) 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(JFKGHIBDHFB::System.IDisposable.Dispose, ldloc:JFKGHIBDHFB(var_0)) stfld:CurrencyManager(JFKGHIBDHFB::<>4__this, ldloc:JFKGHIBDHFB(var_0), ldloc:CurrencyManager(this)) stloc:DKMCNBHMKIK(var_1_13, ldfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldloc:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](FPHMMOJOLBB))) stfld:int32(JFKGHIBDHFB::<>1__state, ldloc:JFKGHIBDHFB(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldfld:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](JFKGHIBDHFB::currencyAward, ldloc:JFKGHIBDHFB(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: 0x0600C7A4 RID: 51108 RVA: 0x002F58DC File Offset: 0x002F3ADC [Token(Token = "0x600C7A4")] [Address(RVA = "0x121CEA0", Offset = "0x121B8A0", VA = "0x18121CEA0")] public void ReceiveCurrencyAwardFromGiftBox(Player FAGBHOMBNBP, int JBHHGNEADNC, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE, Transform CBKILDKGKHK) { } // Token: 0x0600C7A5 RID: 51109 RVA: 0x002F58EC File Offset: 0x002F3AEC [Token(Token = "0x600C7A5")] [Address(RVA = "0x121CF00", Offset = "0x121B900", VA = "0x18121CF00")] public void StartReceiveCurrencyAwardsCoroutine(Player AGHAGCKIPIK, CurrencyManager.CurrencyAward NEMAPMFAPNN, Transform CBKILDKGKHK, bool JCGKKHEFNIK) { if (this.PNABCMMHIHC != 0) { ISchedulerPromise pnabcmmhihc = this.PNABCMMHIHC; } Scheduler instance = SingletonMonoBehaviour.Instance; CurrencyManager.HDIALPOHMOP hdialpohmop; hdialpohmop.System.IDisposable.Dispose(); hdialpohmop.<>1__state = (int)((ulong)0L); hdialpohmop.<>4__this = this; hdialpohmop.targetPlayer = AGHAGCKIPIK; hdialpohmop.spawnTransform = CBKILDKGKHK; hdialpohmop.fromGiftBox = false; DKMCNBHMKIK balanceAddType = NEMAPMFAPNN.balanceAddType; hdialpohmop.award.balanceAddType = balanceAddType; ISchedulerPromise schedulerPromise = instance.Run(this, hdialpohmop); this.PNABCMMHIHC = schedulerPromise; } // Token: 0x0600C7A6 RID: 51110 RVA: 0x002F5968 File Offset: 0x002F3B68 [Token(Token = "0x600C7A6")] [Address(RVA = "0x121D070", Offset = "0x121BA70", VA = "0x18121D070")] public void StopReceiveCurrencyAwardsCoroutine() { if (this.PNABCMMHIHC != 0) { ISchedulerPromise pnabcmmhihc = this.PNABCMMHIHC; } } // Token: 0x0600C7A7 RID: 51111 RVA: 0x002F598C File Offset: 0x002F3B8C [Token(Token = "0x600C7A7")] [Address(RVA = "0x121CB10", Offset = "0x121B510", VA = "0x18121CB10")] private IEnumerator MGBFMKCKGMO(Player AGHAGCKIPIK, CurrencyManager.CurrencyAward NEMAPMFAPNN, Transform CBKILDKGKHK, bool JCGKKHEFNIK) { /* An exception occurred when decompiling this method (0600C7A7) 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(HDIALPOHMOP::System.IDisposable.Dispose, ldloc:HDIALPOHMOP(var_0)) stloc:DKMCNBHMKIK(var_1_0C, ldfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldloc:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](NEMAPMFAPNN))) stfld:Player(HDIALPOHMOP::targetPlayer, ldloc:HDIALPOHMOP(var_0), ldloc:Player(AGHAGCKIPIK)) stfld:Transform(HDIALPOHMOP::spawnTransform, ldloc:HDIALPOHMOP(var_0), ldloc:Transform(CBKILDKGKHK)) stfld:DKMCNBHMKIK(CurrencyAward::balanceAddType, ldfld:CurrencyAward[exp:valuetype RecRoom.CurrencyManager/CurrencyAward&](HDIALPOHMOP::award, ldloc:HDIALPOHMOP(var_0)), ldloc:DKMCNBHMKIK(var_1_0C)) stfld:int32(HDIALPOHMOP::<>1__state, ldloc:HDIALPOHMOP(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(HDIALPOHMOP::<>4__this, ldloc:HDIALPOHMOP(var_0), ldloc:CurrencyManager(this)) stfld:bool(HDIALPOHMOP::fromGiftBox, ldloc:HDIALPOHMOP(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: 0x0600C7A8 RID: 51112 RVA: 0x002F59D8 File Offset: 0x002F3BD8 [Token(Token = "0x600C7A8")] [Address(RVA = "0x121C9E0", Offset = "0x121B3E0", VA = "0x18121C9E0")] private IEnumerator HCHNKMNBIBB(Player AGHAGCKIPIK, int DDHJGFIHFGL, Transform CBKILDKGKHK, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE, bool JCGKKHEFNIK) { /* An exception occurred when decompiling this method (0600C7A8) 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(LPLMCKCJDAL::System.IDisposable.Dispose, ldloc:LPLMCKCJDAL(var_0)) stfld:ACDKILABNNC(LPLMCKCJDAL::currencyType, ldloc:LPLMCKCJDAL(var_0), ldc.i4:ACDKILABNNC(0)) stfld:valuetype [mscorlib]System.Nullable`1(LPLMCKCJDAL::platformType, ldloc:LPLMCKCJDAL(var_0), ldc.i4:int32[exp:valuetype [mscorlib]System.Nullable`1](0)) stfld:bool(LPLMCKCJDAL::fromGiftBox, ldloc:LPLMCKCJDAL(var_0), ldc.i4:bool(0)) stfld:Player(LPLMCKCJDAL::targetPlayer, ldloc:LPLMCKCJDAL(var_0), ldloc:Player(AGHAGCKIPIK)) stfld:int32(LPLMCKCJDAL::awardAmount, ldloc:LPLMCKCJDAL(var_0), ldloc:int32(DDHJGFIHFGL)) stfld:Transform(LPLMCKCJDAL::spawnTransform, ldloc:LPLMCKCJDAL(var_0), ldloc:Transform(CBKILDKGKHK)) stfld:int32(LPLMCKCJDAL::<>1__state, ldloc:LPLMCKCJDAL(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(LPLMCKCJDAL::<>4__this, ldloc:LPLMCKCJDAL(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: 0x0600C7A9 RID: 51113 RVA: 0x002F5A24 File Offset: 0x002F3C24 [Token(Token = "0x600C7A9")] [Address(RVA = "0x121C710", Offset = "0x121B110", VA = "0x18121C710")] 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; ParticleSystem.MainModule.set_duration_Injected(main2, DDHJGFIHFGL); float num = ParticleSystem.MainModule.get_duration_Injected(main2); int num2 = 0; pooledParticle.Play(num2 != 0, -1f); } // Token: 0x0600C7AA RID: 51114 RVA: 0x002F5A98 File Offset: 0x002F3C98 [Token(Token = "0x600C7AA")] [Address(RVA = "0x121C1D0", Offset = "0x121ABD0", VA = "0x18121C1D0")] private void BFEBGOPHPBK(Player AGHAGCKIPIK, int DDHJGFIHFGL, Vector3 CAOHCBNEEND, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? 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__32_0 == 0) { CurrencyManager.<>c.<>9__32_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: 0x0600C7AB RID: 51115 RVA: 0x002F5B00 File Offset: 0x002F3D00 [Token(Token = "0x600C7AB")] [Address(RVA = "0x121C0F0", Offset = "0x121AAF0", VA = "0x18121C0F0")] private IEnumerator AMIDOAEOCOB(WorldSpaceNotification NOEDFHOANIO, string ACPMLLINIMG, int DDHJGFIHFGL, int PIIFLHOIFNK, Vector3 CAOHCBNEEND, Quaternion IGPENJBJADK, CurrencyManager.NotificationTimings MONFHJEHALP, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE) { /* An exception occurred when decompiling this method (0600C7AB) 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(HGFIDLAPHEO::System.IDisposable.Dispose, ldloc:HGFIDLAPHEO(var_0)) stfld:int32(HGFIDLAPHEO::previousAward, ldloc:HGFIDLAPHEO(var_0), ldc.i4:int32(0)) stfld:WorldSpaceNotification(HGFIDLAPHEO::notification, ldloc:HGFIDLAPHEO(var_0), ldloc:WorldSpaceNotification(NOEDFHOANIO)) stfld:string(HGFIDLAPHEO::subtitle, ldloc:HGFIDLAPHEO(var_0), ldloc:string(ACPMLLINIMG)) stfld:float32(Vector3::z, ldfld:Vector3[exp:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3&](HGFIDLAPHEO::spawnPosition, ldloc:HGFIDLAPHEO(var_0)), ldloc:HGFIDLAPHEO[exp:float32](var_0)) stfld:int32(HGFIDLAPHEO::awardAmount, ldloc:HGFIDLAPHEO(var_0), ldloc:int32(DDHJGFIHFGL)) stfld:int32(HGFIDLAPHEO::<>1__state, ldloc:HGFIDLAPHEO(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:CurrencyManager(HGFIDLAPHEO::<>4__this, ldloc:HGFIDLAPHEO(var_0), ldloc:CurrencyManager(this)) stfld:ACDKILABNNC(HGFIDLAPHEO::currencyType, ldloc:HGFIDLAPHEO(var_0), ldc.i4:ACDKILABNNC(0)) stfld:valuetype [mscorlib]System.Nullable`1(HGFIDLAPHEO::platformType, ldloc:HGFIDLAPHEO(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: 0x0600C7AC RID: 51116 RVA: 0x002F5B58 File Offset: 0x002F3D58 [Token(Token = "0x600C7AC")] [Address(RVA = "0x121CBC0", Offset = "0x121B5C0", VA = "0x18121CBC0")] private CurrencyManager.CurrencyTypeSettings NPLGPEONBLD(ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? 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: 0x0600C7AD RID: 51117 RVA: 0x002F5BA0 File Offset: 0x002F3DA0 [Token(Token = "0x600C7AD")] [Address(RVA = "0x121CAA0", Offset = "0x121B4A0", VA = "0x18121CAA0")] private bool INBCPECPLJH(CurrencyManager.CurrencyTypeSettings GHGBPMPLLBK, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE) { if (DLNFAILEHOA != ACDKILABNNC.RecCenterTokens) { return true; } PlatformManager.FCIKKFJOMNO[] platformTypes = GHGBPMPLLBK.platformTypes; bool flag; return !flag; } // Token: 0x0600C7AE RID: 51118 RVA: 0x002F5BC4 File Offset: 0x002F3DC4 [Token(Token = "0x600C7AE")] [Address(RVA = "0x121D0F0", Offset = "0x121BAF0", VA = "0x18121D0F0")] public string ToCurrencyString(long JDBAMHBKHPA, ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; if (currencyTypeSettings != 0 || (ulong)1L != 0UL) { while (currencyTypeSettings == 0) { } } string text; return text; } // Token: 0x0600C7AF RID: 51119 RVA: 0x002F5BE4 File Offset: 0x002F3DE4 [Token(Token = "0x600C7AF")] [Address(RVA = "0x121C940", Offset = "0x121B340", VA = "0x18121C940")] public string GetPluralCurrencyName(ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; if (currencyTypeSettings == 0) { return "Tokens"; } string currencyName = currencyTypeSettings.currencyName; if (currencyTypeSettings.currencyNameSingularOnly) { } return currencyName + "s"; } // Token: 0x0600C7B0 RID: 51120 RVA: 0x002F5C18 File Offset: 0x002F3E18 [Token(Token = "0x600C7B0")] [Address(RVA = "0x121C920", Offset = "0x121B320", VA = "0x18121C920")] public SpawnableCollectible GetCurrencyPrefab(ACDKILABNNC DLNFAILEHOA, PlatformManager.FCIKKFJOMNO? DOLIGIACECE) { CurrencyManager.CurrencyTypeSettings currencyTypeSettings; do { currencyTypeSettings = this.NPLGPEONBLD(DLNFAILEHOA, DOLIGIACECE); } while (currencyTypeSettings == 0); return currencyTypeSettings.currencyPrefab; } // Token: 0x0600C7B1 RID: 51121 RVA: 0x002F5C38 File Offset: 0x002F3E38 [Token(Token = "0x600C7B1")] [Address(RVA = "0x121D1D0", Offset = "0x121BBD0", VA = "0x18121D1D0")] 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: 0x04008449 RID: 33865 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4008449")] [SerializeField] [Header("Award Timings")] private CurrencyManager.NotificationTimings baseAwardNotificationTimings; // Token: 0x0400844A RID: 33866 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x400844A")] [SerializeField] private CurrencyManager.NotificationTimings bonusAwardNotificationTimings; // Token: 0x0400844B RID: 33867 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x400844B")] [SerializeField] private float postSpawnDelay = 0.5f; // Token: 0x0400844C RID: 33868 [global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")] [Token(Token = "0x400844C")] [SerializeField] private float postBaseAwardDelay; // Token: 0x0400844D RID: 33869 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x400844D")] [SerializeField] public float preFinishAudioDelay; // Token: 0x0400844E RID: 33870 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x400844E")] [SerializeField] [Header("Texts")] private CurrencyManager.CurrencyTypeSettings[] currencyTypeSettings; // Token: 0x0400844F RID: 33871 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x400844F")] [SerializeField] private string bonusSubtitleTemplate; // Token: 0x04008450 RID: 33872 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4008450")] [SerializeField] private string awardNoDailySubtitle; // Token: 0x04008451 RID: 33873 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4008451")] [SerializeField] private string titleTemplate; // Token: 0x04008452 RID: 33874 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x4008452")] [SerializeField] [Header("Particles")] private PooledParticle celebrateParticlePrefab; // Token: 0x04008453 RID: 33875 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x4008453")] [SerializeField] private float celebrateParticleSpacing; // Token: 0x04008454 RID: 33876 [global::Cpp2IlInjected.FieldOffset(Offset = "0x94")] [Token(Token = "0x4008454")] private int ANOEOCCPOPE; // Token: 0x04008455 RID: 33877 [global::Cpp2IlInjected.FieldOffset(Offset = "0x98")] [Token(Token = "0x4008455")] private ISchedulerPromise PNABCMMHIHC; // Token: 0x04008456 RID: 33878 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x4008456")] private ISchedulerPromise CCGHGCJJONJ; // Token: 0x04008457 RID: 33879 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x4008457")] private GameObject AOBKCHPPNNC; // Token: 0x02001D01 RID: 7425 [Token(Token = "0x2001D01")] [Serializable] public struct NotificationTimings { // Token: 0x04008458 RID: 33880 [global::Cpp2IlInjected.FieldOffset(Offset = "0x0")] [Token(Token = "0x4008458")] public float preCollectableDelay; // Token: 0x04008459 RID: 33881 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4")] [Token(Token = "0x4008459")] public float collectableSpawnDuration; // Token: 0x0400845A RID: 33882 [global::Cpp2IlInjected.FieldOffset(Offset = "0x8")] [Token(Token = "0x400845A")] public float postCollectableDelay; // Token: 0x0400845B RID: 33883 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC")] [Token(Token = "0x400845B")] public float awardCountDuration; // Token: 0x0400845C RID: 33884 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400845C")] public float awardCountTickFrequency; // Token: 0x0400845D RID: 33885 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400845D")] public RecRoomAudioClip celebrationStartAudio; } // Token: 0x02001D02 RID: 7426 [Token(Token = "0x2001D02")] [Serializable] public class CurrencyTypeSettings { // Token: 0x0600C7B2 RID: 51122 RVA: 0x002F5CB4 File Offset: 0x002F3EB4 [Token(Token = "0x600C7B2")] [Address(RVA = "0x121D330", Offset = "0x121BD30", VA = "0x18121D330")] 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: 0x0400845E RID: 33886 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400845E")] public ACDKILABNNC currencyType; // Token: 0x0400845F RID: 33887 [global::Cpp2IlInjected.FieldOffset(Offset = "0x14")] [Token(Token = "0x400845F")] public bool isPlatformSpecific; // Token: 0x04008460 RID: 33888 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4008460")] public PlatformManager.FCIKKFJOMNO[] platformTypes; // Token: 0x04008461 RID: 33889 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4008461")] public string currencyName; // Token: 0x04008462 RID: 33890 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4008462")] public bool currencyNameSingularOnly; // Token: 0x04008463 RID: 33891 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x4008463")] public SpawnableCollectible currencyPrefab; // Token: 0x04008464 RID: 33892 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x4008464")] public PooledParticle currencyBoxAwardFx; // Token: 0x04008465 RID: 33893 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x4008465")] public AnimationCurve particleSpawnAmounts; // Token: 0x04008466 RID: 33894 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x4008466")] public AnimationCurve particleSpawnDurations; // Token: 0x04008467 RID: 33895 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x4008467")] public bool skipAwardNotifications; // Token: 0x04008468 RID: 33896 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4008468")] [Header("Audio")] public RecRoomAudioClip celebrationFinishAudio; // Token: 0x04008469 RID: 33897 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4008469")] public RecRoomAudioClip dispensingCurrencyAudioClip; // Token: 0x0400846A RID: 33898 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x400846A")] public RecRoomAudioClip dispensingCurrencyShortAudioClip; // Token: 0x0400846B RID: 33899 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x400846B")] public RecRoomAudioClip countingCurrencyAudioClip; // Token: 0x0400846C RID: 33900 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x400846C")] public int smallAmountThreshold; } // Token: 0x02001D03 RID: 7427 [Token(Token = "0x2001D03")] [Serializable] public struct CurrencyAward { // Token: 0x0400846D RID: 33901 [global::Cpp2IlInjected.FieldOffset(Offset = "0x0")] [Token(Token = "0x400846D")] public int baseAward; // Token: 0x0400846E RID: 33902 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4")] [Token(Token = "0x400846E")] public int bonusAward; // Token: 0x0400846F RID: 33903 [global::Cpp2IlInjected.FieldOffset(Offset = "0x8")] [Token(Token = "0x400846F")] public int currentCount; // Token: 0x04008470 RID: 33904 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC")] [Token(Token = "0x4008470")] public int rateLimit; // Token: 0x04008471 RID: 33905 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x4008471")] public DKMCNBHMKIK balanceAddType; // Token: 0x04008472 RID: 33906 [global::Cpp2IlInjected.FieldOffset(Offset = "0x14")] [Token(Token = "0x4008472")] public ACDKILABNNC currencyType; // Token: 0x04008473 RID: 33907 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4008473")] public PlatformManager.FCIKKFJOMNO? platformType; } } }