Files
2026-04-08 23:40:05 +02:00

668 lines
33 KiB
C#

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<CurrencyManager>
{
// 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.<EGKJPJKLEAI>k__BackingField.head.transform;
Vector3 vector;
float z = vector.z;
float z2 = Player.<EGKJPJKLEAI>k__BackingField.<BAKJHFAALJA>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<bool?> 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<ISchedule> FNNPEBPMION(CurrencyManager.CurrencyAward FPHMMOJOLBB)
{
/*
An exception occurred when decompiling this method (0600C7A3)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<RecRoom.Core.ISchedule> 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<ISchedule> 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.Core.ISchedule> 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<ISchedule> 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.Core.ISchedule> RecRoom.CurrencyManager::HCHNKMNBIBB(Player,System.Int32,UnityEngine.Transform,RecRoom.CurrencyManager/NotificationTimings,ACDKILABNNC,System.Nullable`1<PlatformManager/FCIKKFJOMNO>,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<valuetype PlatformManager/FCIKKFJOMNO>(LPLMCKCJDAL::platformType, ldloc:LPLMCKCJDAL(var_0), ldc.i4:int32[exp:valuetype [mscorlib]System.Nullable`1<valuetype PlatformManager/FCIKKFJOMNO>](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.<OAIDPPDMCPA>k__BackingField.main;
ParticleSystem.MainModule main2 = pooledParticle.<OAIDPPDMCPA>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<ISchedule> 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.Core.ISchedule> RecRoom.CurrencyManager::AMIDOAEOCOB(WorldSpaceNotification,System.String,System.Int32,System.Int32,UnityEngine.Vector3,UnityEngine.Quaternion,RecRoom.CurrencyManager/NotificationTimings,ACDKILABNNC,System.Nullable`1<PlatformManager/FCIKKFJOMNO>)
---> 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<valuetype PlatformManager/FCIKKFJOMNO>(HGFIDLAPHEO::platformType, ldloc:HGFIDLAPHEO(var_0), ldc.i4:int32[exp:valuetype [mscorlib]System.Nullable`1<valuetype PlatformManager/FCIKKFJOMNO>](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;
}
}
}