using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using Photon.Pun; using RecRoom.Circuits; using RecRoom.Core.Creation.Circuits; using UnityEngine; namespace RecRoom.Core.Creation { // Token: 0x02002BD6 RID: 11222 [Token(Token = "0x2002BD6")] [StructLayout(3)] public class SandboxCircuitBeacon : MonoBehaviourPun { // Token: 0x06013C40 RID: 80960 RVA: 0x004BDAFC File Offset: 0x004BBCFC [Token(Token = "0x6013C40")] [Address(RVA = "0x1AC45D0", Offset = "0x1AC2FD0", VA = "0x181AC45D0")] private void Start() { CircuitEventNodeDisplay circuitEventNodeDisplay = this.circuitNode; Action action = new Action(this.NFCJMMCJNAP); circuitEventNodeDisplay.DMKDMKIDPLC += action; Tool tool = this.tool; Action action2 = new Action(this.BOBBBOLPOPC); tool.NBBKCDDPBPD += action2; SandboxColorable sandboxColorable = this.sandboxColorable; Action action3 = new Action(this.NFCJMMCJNAP); sandboxColorable.JJCKDBNNKAM += action3; if (this.circuitNode.IsInputConnected(InputSlot.C)) { CircuitNode mbbjmcdgdmn = this.circuitNode.MBBJMCDGDMN; if (mbbjmcdgdmn == 0) { goto IL_87; } int inputSignal = mbbjmcdgdmn.GetInputSignal(InputSlot.C); } this.OGLDMBFDGKH(1); IL_87: if (this.circuitNode.IsInputConnected(InputSlot.M)) { CircuitNode mbbjmcdgdmn2 = this.circuitNode.MBBJMCDGDMN; if (mbbjmcdgdmn2 == 0) { goto IL_CC; } int inputSignal2 = mbbjmcdgdmn2.GetInputSignal(InputSlot.M); } int num = this.sandboxColorable.EJGFMPCAIOD.Get(); this.IBMHPGNKNCA(num); IL_CC: if (!this.circuitNode.IsInputConnected(InputSlot.Y)) { this.DICJIIBFIIA = (int)((ulong)0L); this.OHOOCMKOPLO(); } this.OHOOCMKOPLO(); } // Token: 0x06013C41 RID: 80961 RVA: 0x004BDC00 File Offset: 0x004BBE00 [Token(Token = "0x6013C41")] [Address(RVA = "0x1AC43D0", Offset = "0x1AC2DD0", VA = "0x181AC43D0", Slot = "14")] protected override void OnDestroy() { CircuitEventNodeDisplay circuitEventNodeDisplay = this.circuitNode; Action action = new Action(this.NFCJMMCJNAP); circuitEventNodeDisplay.DMKDMKIDPLC -= action; Tool tool = this.tool; Action action2 = new Action(this.BOBBBOLPOPC); tool.NBBKCDDPBPD -= action2; SandboxColorable sandboxColorable = this.sandboxColorable; Action action3 = new Action(this.NFCJMMCJNAP); sandboxColorable.JJCKDBNNKAM -= action3; base.OnDestroy(); } // Token: 0x06013C42 RID: 80962 RVA: 0x004BDC70 File Offset: 0x004BBE70 [Token(Token = "0x6013C42")] [Address(RVA = "0x1AC3C40", Offset = "0x1AC2640", VA = "0x181AC3C40")] private void BOBBBOLPOPC() { this.OHOOCMKOPLO(); } // Token: 0x06013C43 RID: 80963 RVA: 0x004BDC84 File Offset: 0x004BBE84 [Token(Token = "0x6013C43")] [Address(RVA = "0x1AC40A0", Offset = "0x1AC2AA0", VA = "0x181AC40A0")] private void NFCJMMCJNAP() { if (this.circuitNode.IsInputConnected(InputSlot.C)) { CircuitNode mbbjmcdgdmn = this.circuitNode.MBBJMCDGDMN; if (mbbjmcdgdmn == 0) { goto IL_2E; } int inputSignal = mbbjmcdgdmn.GetInputSignal(InputSlot.C); } this.OGLDMBFDGKH(1); IL_2E: if (this.circuitNode.IsInputConnected(InputSlot.M)) { CircuitNode mbbjmcdgdmn2 = this.circuitNode.MBBJMCDGDMN; if (mbbjmcdgdmn2 == 0) { goto IL_6F; } int inputSignal2 = mbbjmcdgdmn2.GetInputSignal(InputSlot.M); } int num = this.sandboxColorable.EJGFMPCAIOD.Get(); this.IBMHPGNKNCA(num); IL_6F: if (!this.circuitNode.IsInputConnected(InputSlot.Y)) { this.DICJIIBFIIA = (int)((ulong)0L); this.OHOOCMKOPLO(); } } // Token: 0x06013C44 RID: 80964 RVA: 0x004BDD24 File Offset: 0x004BBF24 [Token(Token = "0x6013C44")] [Address(RVA = "0x1AC44E0", Offset = "0x1AC2EE0", VA = "0x181AC44E0")] public void OnInputsReceived(Dictionary updates) { int num = 0; if (updates.TryGetValue(3, num) && this.circuitNode.IsInputConnected(InputSlot.C)) { this.OGLDMBFDGKH(num); } if (updates.TryGetValue((uint)4, num)) { this.IBMHPGNKNCA(num); } bool flag; if (flag) { this.OHOOCMKOPLO(); } } // Token: 0x06013C45 RID: 80965 RVA: 0x004BDD78 File Offset: 0x004BBF78 [Token(Token = "0x6013C45")] [Address(RVA = "0x1AC41F0", Offset = "0x1AC2BF0", VA = "0x181AC41F0")] private void OGLDMBFDGKH(int BECIIEHIPMJ) { GameObject gameObject = this.beamMesh.gameObject; } // Token: 0x06013C46 RID: 80966 RVA: 0x004BDD98 File Offset: 0x004BBF98 [Token(Token = "0x6013C46")] [Address(RVA = "0x1AC4280", Offset = "0x1AC2C80", VA = "0x181AC4280")] private void OHOOCMKOPLO() { Transform transform = base.transform; Transform transform2 = this.beamMesh.transform; Transform transform3 = this.beamMesh.transform; MeshRenderer meshRenderer = this.beamMesh; Vector3 vector; float z = vector.z; Transform transform4 = meshRenderer.transform; } // Token: 0x06013C47 RID: 80967 RVA: 0x004BDDE8 File Offset: 0x004BBFE8 [Token(Token = "0x6013C47")] [Address(RVA = "0x1AC3C50", Offset = "0x1AC2650", VA = "0x181AC3C50")] private HolographicColorPair HEAGHKOOMJD(int AOGHIJCLDDC) { /* An exception occurred when decompiling this method (06013C47) ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Core.Creation.HolographicColorPair RecRoom.Core.Creation.SandboxCircuitBeacon::HEAGHKOOMJD(System.Int32) ---> System.Exception: Basic block has to end with unconditional control flow. { IL_06: stloc:Color(var_3_11, ldfld:Color(HolographicColorPair::ShaftColor, ldfld:HolographicColorPair[exp:valuetype RecRoom.Core.Creation.HolographicColorPair&](ShapeColorInfo::holographicColors, ldloc:ShapeColorInfo(var_1)))) stloc:int32(var_6_19, ldc.i4:int32(0)) stfld:native int(Object::m_CachedPtr, ldloc:SandboxCircuitBeacon[exp:Object](this), ldloc:int32[exp:native int](var_6_19)) } 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: 0x06013C48 RID: 80968 RVA: 0x004BDE18 File Offset: 0x004BC018 [Token(Token = "0x6013C48")] [Address(RVA = "0x1AC3DD0", Offset = "0x1AC27D0", VA = "0x181AC3DD0")] private void IBMHPGNKNCA(int AOGHIJCLDDC) { ShapeColorInfo shapeColorInfo; if (shapeColorInfo == 0) { } Color shaftColor = shapeColorInfo.holographicColors.ShaftColor; float num = this.scanlineColorLighteningFactor; int num2 = 0; float a = this.unwiredHolographicColor.ShaftColor.a; int num3 = 0; MaterialPropertyBlock pojkkilegbc = this.POJKKILEGBC; this.KHKHEGCJGGD = num2; this.KHKHEGCJGGD.ShaftColor = num3; MaterialPropertyBlock materialPropertyBlock; if (pojkkilegbc == 0) { materialPropertyBlock = new MaterialPropertyBlock(); this.POJKKILEGBC = materialPropertyBlock; } this.beamMesh.Internal_GetPropertyBlock(materialPropertyBlock); MaterialPropertyBlock pojkkilegbc2 = this.POJKKILEGBC; Color shaftColor2 = this.KHKHEGCJGGD.ShaftColor; int cchofpafeho = PAMNDKEGFFG.CCHOFPAFEHO; pojkkilegbc2.SetColor(cchofpafeho, shaftColor2); MaterialPropertyBlock pojkkilegbc3 = this.POJKKILEGBC; HolographicColorPair khkhegcjggd = this.KHKHEGCJGGD; MeshRenderer meshRenderer = this.beamMesh; MaterialPropertyBlock pojkkilegbc4 = this.POJKKILEGBC; meshRenderer.Internal_SetPropertyBlock(pojkkilegbc4); MeshRenderer meshRenderer2 = this.baseMesh; MaterialPropertyBlock pojkkilegbc5 = this.POJKKILEGBC; meshRenderer2.Internal_GetPropertyBlock(pojkkilegbc5); MaterialPropertyBlock pojkkilegbc6 = this.POJKKILEGBC; Color shaftColor3 = this.KHKHEGCJGGD.ShaftColor; int cchofpafeho2 = PAMNDKEGFFG.CCHOFPAFEHO; pojkkilegbc6.SetColor(cchofpafeho2, shaftColor3); MeshRenderer meshRenderer3 = this.baseMesh; MaterialPropertyBlock pojkkilegbc7 = this.POJKKILEGBC; meshRenderer3.Internal_SetPropertyBlock(pojkkilegbc7); } // Token: 0x06013C49 RID: 80969 RVA: 0x004BDF48 File Offset: 0x004BC148 [Token(Token = "0x6013C49")] [Address(RVA = "0x1AC4810", Offset = "0x1AC3210", VA = "0x181AC4810")] public SandboxCircuitBeacon() { } // Token: 0x0400D552 RID: 54610 [Token(Token = "0x400D552")] private const InputSlot INHGGCHKDPG = InputSlot.C; // Token: 0x0400D553 RID: 54611 [Token(Token = "0x400D553")] private const InputSlot DCBAFLCOHHP = InputSlot.M; // Token: 0x0400D554 RID: 54612 [Token(Token = "0x400D554")] private const InputSlot INFBFKEILAF = InputSlot.Y; // Token: 0x0400D555 RID: 54613 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400D555")] private MaterialPropertyBlock POJKKILEGBC; // Token: 0x0400D556 RID: 54614 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400D556")] private HolographicColorPair KHKHEGCJGGD; // Token: 0x0400D557 RID: 54615 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x400D557")] private int DICJIIBFIIA; // Token: 0x0400D558 RID: 54616 [global::Cpp2IlInjected.FieldOffset(Offset = "0x6C")] [Token(Token = "0x400D558")] private float DPHCBKPEDDK; // Token: 0x0400D559 RID: 54617 [global::Cpp2IlInjected.FieldOffset(Offset = "0x70")] [Token(Token = "0x400D559")] [SerializeField] private MeshRenderer beamMesh; // Token: 0x0400D55A RID: 54618 [global::Cpp2IlInjected.FieldOffset(Offset = "0x78")] [Token(Token = "0x400D55A")] [SerializeField] private MeshRenderer baseMesh; // Token: 0x0400D55B RID: 54619 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x400D55B")] [SerializeField] private HolographicColorPair unwiredHolographicColor; // Token: 0x0400D55C RID: 54620 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")] [Token(Token = "0x400D55C")] [SerializeField] private float scanlineColorLighteningFactor = 1.25f; // Token: 0x0400D55D RID: 54621 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x400D55D")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private CircuitEventNodeDisplay circuitNode; // Token: 0x0400D55E RID: 54622 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")] [Token(Token = "0x400D55E")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private SandboxColorable sandboxColorable; // Token: 0x0400D55F RID: 54623 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")] [Token(Token = "0x400D55F")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private Tool tool; } }