using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using Cpp2IlInjected; using Photon.Pun; using Photon.Realtime; using RecRoom.Core; using RecRoom.Core.Pools; using RecRoom.Networking.SynchronizedFields; using UnityEngine; namespace RecRoom { // Token: 0x02001C6F RID: 7279 [Token(Token = "0x2001C6F")] [RequireComponent(typeof(PhotonView))] [StructLayout(3)] public class TriggerCollectible : MonoBehaviourPun, LNBFABEKDCN, GDMDKPLBJAC { // Token: 0x17001E80 RID: 7808 // (get) Token: 0x0600C321 RID: 49953 RVA: 0x002E0AC0 File Offset: 0x002DECC0 // (set) Token: 0x0600C322 RID: 49954 RVA: 0x002E0AD4 File Offset: 0x002DECD4 [Token(Token = "0x17001E80")] public int DMLIOOCLKKP { [Token(Token = "0x600C321")] [Address(RVA = "0xCAEAD0", Offset = "0xCAD4D0", VA = "0x180CAEAD0", Slot = "15")] get; [Token(Token = "0x600C322")] [Address(RVA = "0xA073A0", Offset = "0xA05DA0", VA = "0x180A073A0", Slot = "16")] set; } // Token: 0x17001E81 RID: 7809 // (get) Token: 0x0600C323 RID: 49955 RVA: 0x002E0AE8 File Offset: 0x002DECE8 // (set) Token: 0x0600C324 RID: 49956 RVA: 0x002E0B08 File Offset: 0x002DED08 [Token(Token = "0x17001E81")] public bool DLHOLKNMICH { [Token(Token = "0x600C323")] [Address(RVA = "0x147FEF0", Offset = "0x147E8F0", VA = "0x18147FEF0")] get { return this.NNCPOHOFKFI.Get() != null; } [Token(Token = "0x600C324")] [Address(RVA = "0x147F7A0", Offset = "0x147E1A0", VA = "0x18147F7A0")] private set { SynchronizedField nncpohofkfi = this.NNCPOHOFKFI; } } // Token: 0x17001E82 RID: 7810 // (get) Token: 0x0600C325 RID: 49957 RVA: 0x002E0B24 File Offset: 0x002DED24 [Token(Token = "0x17001E82")] public CCIMPAHNKAP OPLHMKFCNOL { [Token(Token = "0x600C325")] [Address(RVA = "0x446CA0", Offset = "0x4456A0", VA = "0x180446CA0")] get { return this.collectibleType; } } // Token: 0x17001E83 RID: 7811 // (get) Token: 0x0600C326 RID: 49958 RVA: 0x002E0B38 File Offset: 0x002DED38 [Token(Token = "0x17001E83")] public bool BNHPGLCPGAA { [Token(Token = "0x600C326")] [Address(RVA = "0x3F0F40", Offset = "0x3EF940", VA = "0x1803F0F40")] get { return this.respawn; } } // Token: 0x17001E84 RID: 7812 // (get) Token: 0x0600C327 RID: 49959 RVA: 0x002E0B4C File Offset: 0x002DED4C [Token(Token = "0x17001E84")] public bool ABIMGLMBCCF { [Token(Token = "0x600C327")] [Address(RVA = "0x446CB0", Offset = "0x4456B0", VA = "0x180446CB0")] get { return this.scaleUpOnRespawn; } } // Token: 0x0600C328 RID: 49960 RVA: 0x002E0B60 File Offset: 0x002DED60 [Token(Token = "0x600C328")] [Address(RVA = "0x147F2E0", Offset = "0x147DCE0", VA = "0x18147F2E0", Slot = "13")] protected override void Awake() { base..ctor(); int num = this.defaultValue; this.k__BackingField = num; float localUniformScale = base.transform.GetLocalUniformScale(); this.MCOFHCCLCHI = localUniformScale; Action action = new Action(this.BCDOEFIDDDK); int num2; int num3; SynchronizedField synchronizedField = new SynchronizedField(this, "TC", num2, (SetterPermissionMode)num3, action, num3); num3 = 0; num2 = 0; this.NNCPOHOFKFI = synchronizedField; ActionEvent onPhotonPlayerDisconnected = PhotonNetwork.OnPhotonPlayerDisconnected; Action action2 = new Action(this.OnPhotonPlayerDisconnected); PhotonNetwork.OnPhotonPlayerDisconnected = onPhotonPlayerDisconnected + action2; } // Token: 0x0600C329 RID: 49961 RVA: 0x002E0BE4 File Offset: 0x002DEDE4 [Token(Token = "0x600C329")] [Address(RVA = "0x147FE40", Offset = "0x147E840", VA = "0x18147FE40")] private void Start() { this.BCDOEFIDDDK(); } // Token: 0x0600C32A RID: 49962 RVA: 0x002E0BF8 File Offset: 0x002DEDF8 [Token(Token = "0x600C32A")] [Address(RVA = "0x147FAC0", Offset = "0x147E4C0", VA = "0x18147FAC0", Slot = "14")] protected override void OnDestroy() { ActionEvent onPhotonPlayerDisconnected = PhotonNetwork.OnPhotonPlayerDisconnected; Action action = new Action(this.OnPhotonPlayerDisconnected); PhotonNetwork.OnPhotonPlayerDisconnected = onPhotonPlayerDisconnected - action; base.OnDestroy(); } // Token: 0x0600C32B RID: 49963 RVA: 0x002E0C2C File Offset: 0x002DEE2C [Token(Token = "0x600C32B")] [Address(RVA = "0x147FCB0", Offset = "0x147E6B0", VA = "0x18147FCB0")] private void OnTriggerEnter(Collider HPKICPNGMDJ) { if (!this.LLJDPMFFKHM && this.NNCPOHOFKFI.Get() == 0) { int num = 0; global::Player player; bool flag; if (player != num && flag) { this.OnCollect(); } } } // Token: 0x0600C32C RID: 49964 RVA: 0x002E0C6C File Offset: 0x002DEE6C [Token(Token = "0x600C32C")] [Address(RVA = "0x147F800", Offset = "0x147E200", VA = "0x18147F800", Slot = "17")] public void OnCollect() { RecRoomAudioClip[] array = this.pickupSfx; this.LLJDPMFFKHM = true; Transform transform = base.transform; PooledParticle pooledParticle = this.pickupVfx; Transform transform2 = base.transform; Vector3 vector; float z = vector.z; if (!base.hasAuthority) { PhotonView photonView = base.photonView; Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer; photonView.TransferOwnership(localPlayer); } if (base.hasAuthority) { ActionEvent collectedEvent = TriggerCollectible.CollectedEvent; if (collectedEvent != 0) { collectedEvent.Invoke(this); } SynchronizedField nncpohofkfi = this.NNCPOHOFKFI; if (!this.respawn) { GameObject gameObject; PhotonNetwork.Destroy(gameObject); return; } Scheduler instance = SingletonMonoBehaviour.Instance; float num = this.respawnTime; TriggerCollectible.GEJGIMHABPN gejgimhabpn; gejgimhabpn.System.IDisposable.Dispose(); gejgimhabpn.respawnTime = num; gejgimhabpn.<>1__state = (int)((ulong)0L); gejgimhabpn.<>4__this = this; ISchedulerPromise schedulerPromise = instance.Run(this, gejgimhabpn); this.EPMNIFDPEFL = schedulerPromise; } } // Token: 0x0600C32D RID: 49965 RVA: 0x002E0D4C File Offset: 0x002DEF4C [Token(Token = "0x600C32D")] [Address(RVA = "0x147F650", Offset = "0x147E050", VA = "0x18147F650")] private IEnumerator DEGHDMCCGCO(float OKNMBNCECBK) { /* An exception occurred when decompiling this method (0600C32D) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.TriggerCollectible::DEGHDMCCGCO(System.Single) ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(GEJGIMHABPN::System.IDisposable.Dispose, ldloc:GEJGIMHABPN(var_0)) stfld:float32(GEJGIMHABPN::respawnTime, ldloc:GEJGIMHABPN(var_0), ldloc:float32(OKNMBNCECBK)) stfld:int32(GEJGIMHABPN::<>1__state, ldloc:GEJGIMHABPN(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:TriggerCollectible(GEJGIMHABPN::<>4__this, ldloc:GEJGIMHABPN(var_0), ldloc:TriggerCollectible(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: 0x0600C32E RID: 49966 RVA: 0x002E0D78 File Offset: 0x002DEF78 [Token(Token = "0x600C32E")] [Address(RVA = "0x147F460", Offset = "0x147DE60", VA = "0x18147F460")] private void BCDOEFIDDDK() { if (this.EPMNIFDPEFL != 0) { ISchedulerPromise epmnifdpefl = this.EPMNIFDPEFL; this.EPMNIFDPEFL = (ulong)0L; } bool flag = this.NNCPOHOFKFI.Get() != null; GameObject gameObject = this.visualRoot; this.LLJDPMFFKHM = flag; bool flag2 = this.NNCPOHOFKFI.Get() == 0; gameObject.SetActive(flag2); if (this.scaleUpOnRespawn) { Scheduler instance = SingletonMonoBehaviour.Instance; TriggerCollectible.JDCAOGNKADK jdcaognkadk; jdcaognkadk.System.IDisposable.Dispose(); jdcaognkadk.<>1__state = (int)((ulong)0L); jdcaognkadk.<>4__this = this; ISchedulerPromise schedulerPromise = instance.Run(this, jdcaognkadk); Action action = new Action(this.JLOHNCOFFHE); } } // Token: 0x0600C32F RID: 49967 RVA: 0x002E0E18 File Offset: 0x002DF018 [Token(Token = "0x600C32F")] [Address(RVA = "0x147F6C0", Offset = "0x147E0C0", VA = "0x18147F6C0")] private IEnumerator JJGFIBGMAFA() { /* An exception occurred when decompiling this method (0600C32F) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1 RecRoom.TriggerCollectible::JJGFIBGMAFA() ---> System.Exception: Basic block has to end with unconditional control flow. { Block_0: call:void(JDCAOGNKADK::System.IDisposable.Dispose, ldloc:JDCAOGNKADK(var_0)) stfld:int32(JDCAOGNKADK::<>1__state, ldloc:JDCAOGNKADK(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0))) stfld:TriggerCollectible(JDCAOGNKADK::<>4__this, ldloc:JDCAOGNKADK(var_0), ldloc:TriggerCollectible(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: 0x0600C330 RID: 49968 RVA: 0x002E0E3C File Offset: 0x002DF03C [Token(Token = "0x600C330")] [Address(RVA = "0x147FB90", Offset = "0x147E590", VA = "0x18147FB90")] private void OnPhotonPlayerDisconnected(Photon.Realtime.Player IEKDDPPNFPF) { if (!base.photonView.IsOwnerActive && PhotonNetwork.IsMasterClient && this.NNCPOHOFKFI.Get() != 0) { PhotonView photonView = base.photonView; Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer; photonView.TransferOwnership(localPlayer); if (base.hasAuthority) { int num = 0; this.DLHOLKNMICH = num != 0; } } } // Token: 0x0600C331 RID: 49969 RVA: 0x002E0EA0 File Offset: 0x002DF0A0 [Token(Token = "0x600C331")] [Address(RVA = "0x147FDF0", Offset = "0x147E7F0", VA = "0x18147FDF0", Slot = "18")] public void ResetObject() { base.StopAllCoroutines(); SynchronizedField nncpohofkfi = this.NNCPOHOFKFI; int num = 0; nncpohofkfi.Set(num); } // Token: 0x0600C332 RID: 49970 RVA: 0x002E0ECC File Offset: 0x002DF0CC [Token(Token = "0x600C332")] [Address(RVA = "0x147FEB0", Offset = "0x147E8B0", VA = "0x18147FEB0")] public TriggerCollectible() { } // Token: 0x0600C333 RID: 49971 RVA: 0x002E0F24 File Offset: 0x002DF124 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600C333")] [Address(RVA = "0x147FE50", Offset = "0x147E850", VA = "0x18147FE50")] static TriggerCollectible() { int num; ActionEvent actionEvent = new ActionEvent(4, num != 0); num = 0; TriggerCollectible.CollectedEvent = actionEvent; } // Token: 0x0600C334 RID: 49972 RVA: 0x002E0F44 File Offset: 0x002DF144 [Token(Token = "0x600C334")] [Address(RVA = "0x147F720", Offset = "0x147E120", VA = "0x18147F720")] [CompilerGenerated] private void JLOHNCOFFHE() { Transform transform = base.transform; float mcofhcclchi = this.MCOFHCCLCHI; transform.SetLocalUniformScale(mcofhcclchi); } // Token: 0x0400811A RID: 33050 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400811A")] [SerializeField] private CCIMPAHNKAP collectibleType = (CCIMPAHNKAP)((ulong)6L); // Token: 0x0400811B RID: 33051 [global::Cpp2IlInjected.FieldOffset(Offset = "0x44")] [Token(Token = "0x400811B")] [SerializeField] private int defaultValue = (int)((ulong)500L); // Token: 0x0400811C RID: 33052 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400811C")] [SerializeField] private bool respawn = true; // Token: 0x0400811D RID: 33053 [global::Cpp2IlInjected.FieldOffset(Offset = "0x4C")] [Token(Token = "0x400811D")] [SerializeField] [OMAIFIIBMNL("ShouldRespawn")] private float respawnTime = 5f; // Token: 0x0400811E RID: 33054 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x400811E")] [SerializeField] [OMAIFIIBMNL("ShouldRespawn")] private bool scaleUpOnRespawn = true; // Token: 0x0400811F RID: 33055 [global::Cpp2IlInjected.FieldOffset(Offset = "0x54")] [Token(Token = "0x400811F")] [SerializeField] [OMAIFIIBMNL("ScaleUpOnRespawn")] private float respawnScaleAnimationTime = 0.5f; // Token: 0x04008120 RID: 33056 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x4008120")] [SerializeField] private GameObject visualRoot; // Token: 0x04008121 RID: 33057 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x4008121")] [SerializeField] private RecRoomAudioClip[] pickupSfx; // Token: 0x04008122 RID: 33058 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x4008122")] [SerializeField] private PooledParticle pickupVfx; // Token: 0x04008123 RID: 33059 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x4008123")] private bool LLJDPMFFKHM; // Token: 0x04008124 RID: 33060 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x4008124")] private SynchronizedField NNCPOHOFKFI; // Token: 0x04008125 RID: 33061 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x4008125")] private ISchedulerPromise EPMNIFDPEFL; // Token: 0x04008126 RID: 33062 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x4008126")] private float MCOFHCCLCHI = 1f; // Token: 0x04008128 RID: 33064 [Token(Token = "0x4008128")] public static ActionEvent CollectedEvent; // Token: 0x02001C70 RID: 7280 [Token(Token = "0x2001C70")] public sealed class NCJGEILJFIJ : MulticastDelegate { // Token: 0x0600C335 RID: 49973 RVA: 0x002E0F68 File Offset: 0x002DF168 [Token(Token = "0x600C335")] [Address(RVA = "0x3E5170", Offset = "0x3E3B70", VA = "0x1803E5170")] public NCJGEILJFIJ(object @object, IntPtr method) { this.method = method; this.m_target = @object; } // Token: 0x0600C336 RID: 49974 RVA: 0x002E0F84 File Offset: 0x002DF184 [Token(Token = "0x600C336")] [Address(RVA = "0x6931D0", Offset = "0x691BD0", VA = "0x1806931D0", Slot = "13")] public void Invoke(TriggerCollectible IIOADMEEHLF) { if (this.delegates != 0) { } uint num; if (num != (uint)0) { throw new ExecutionEngineException(); } } // Token: 0x0600C337 RID: 49975 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600C337")] [Address(RVA = "0x42BD30", Offset = "0x42A730", VA = "0x18042BD30", Slot = "14")] public IAsyncResult BeginInvoke(TriggerCollectible IIOADMEEHLF, AsyncCallback AFLPGGJMPOE, object FEDFKKMABOG) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600C338 RID: 49976 RVA: 0x0000220F File Offset: 0x0000040F [Token(Token = "0x600C338")] [Address(RVA = "0x40BFF0", Offset = "0x40A9F0", VA = "0x18040BFF0", Slot = "15")] public void EndInvoke(IAsyncResult GIAOBLMEMMI) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } } }