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

323 lines
12 KiB
C#

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<InputSlot, int> 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;
}
}