519 lines
15 KiB
C#
519 lines
15 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Circuits;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core.Creation.Circuits
|
|
{
|
|
// Token: 0x020032FE RID: 13054
|
|
[Token(Token = "0x20032FE")]
|
|
public abstract class CircuitConnectionPoint : CircuitConnectionPointBase
|
|
{
|
|
// Token: 0x17003D80 RID: 15744
|
|
// (get) Token: 0x0601645D RID: 91229 RVA: 0x0052B8F0 File Offset: 0x00529AF0
|
|
[Token(Token = "0x17003D80")]
|
|
public override InputSlot? MNIEHHMNFFE
|
|
{
|
|
[Token(Token = "0x601645D")]
|
|
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "22")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003D81 RID: 15745
|
|
// (get) Token: 0x0601645E RID: 91230 RVA: 0x0052B900 File Offset: 0x00529B00
|
|
[Token(Token = "0x17003D81")]
|
|
public override OutputSlot? MDMBMHINCLJ
|
|
{
|
|
[Token(Token = "0x601645E")]
|
|
[Address(RVA = "0x4242C0", Offset = "0x4232C0", VA = "0x1804242C0", Slot = "23")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003D82 RID: 15746
|
|
// (get) Token: 0x0601645F RID: 91231 RVA: 0x0052B910 File Offset: 0x00529B10
|
|
[Token(Token = "0x17003D82")]
|
|
public override Tool PBBJCLJPFMI
|
|
{
|
|
[Token(Token = "0x601645F")]
|
|
[Address(RVA = "0x19A0B60", Offset = "0x199FB60", VA = "0x1819A0B60", Slot = "8")]
|
|
get
|
|
{
|
|
CircuitNodeDisplay nodeDisplay;
|
|
do
|
|
{
|
|
nodeDisplay = this.NodeDisplay;
|
|
}
|
|
while (nodeDisplay == 0);
|
|
return nodeDisplay.Tool;
|
|
}
|
|
}
|
|
|
|
// Token: 0x140001F9 RID: 505
|
|
// (add) Token: 0x06016460 RID: 91232 RVA: 0x0052B930 File Offset: 0x00529B30
|
|
// (remove) Token: 0x06016461 RID: 91233 RVA: 0x0052B958 File Offset: 0x00529B58
|
|
[Token(Token = "0x140001F9")]
|
|
public event CircuitConnectionPoint.COGKPLDHHCB LOPDLFLHHFE
|
|
{
|
|
[Token(Token = "0x6016460")]
|
|
[Address(RVA = "0x19A09A0", Offset = "0x199F9A0", VA = "0x1819A09A0")]
|
|
[CompilerGenerated]
|
|
add
|
|
{
|
|
CircuitConnectionPoint.COGKPLDHHCB lopdlflhhfe;
|
|
Delegate @delegate;
|
|
do
|
|
{
|
|
lopdlflhhfe = this.LOPDLFLHHFE;
|
|
@delegate = Delegate.Combine(lopdlflhhfe, value);
|
|
}
|
|
while (@delegate != 0 && @delegate == 0);
|
|
while (@delegate != lopdlflhhfe)
|
|
{
|
|
}
|
|
}
|
|
[Token(Token = "0x6016461")]
|
|
[Address(RVA = "0x19A0B80", Offset = "0x199FB80", VA = "0x1819A0B80")]
|
|
[CompilerGenerated]
|
|
remove
|
|
{
|
|
CircuitConnectionPoint.COGKPLDHHCB lopdlflhhfe;
|
|
Delegate @delegate;
|
|
do
|
|
{
|
|
lopdlflhhfe = this.LOPDLFLHHFE;
|
|
@delegate = Delegate.Remove(lopdlflhhfe, value);
|
|
}
|
|
while (@delegate != 0 && @delegate == 0);
|
|
while (@delegate != lopdlflhhfe)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003D83 RID: 15747
|
|
// (get) Token: 0x06016462 RID: 91234 RVA: 0x0052B980 File Offset: 0x00529B80
|
|
[Token(Token = "0x17003D83")]
|
|
public override Color BLLLCAAJBHC
|
|
{
|
|
[Token(Token = "0x6016462")]
|
|
[Address(RVA = "0x19A0A40", Offset = "0x199FA40", VA = "0x1819A0A40", Slot = "20")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003D84 RID: 15748
|
|
// (get) Token: 0x06016463 RID: 91235 RVA: 0x0052B990 File Offset: 0x00529B90
|
|
[Token(Token = "0x17003D84")]
|
|
public override bool CJIMJENNIPE
|
|
{
|
|
[Token(Token = "0x6016463")]
|
|
[Address(RVA = "0x4246A0", Offset = "0x4236A0", VA = "0x1804246A0", Slot = "21")]
|
|
get
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003D85 RID: 15749
|
|
// (get) Token: 0x06016464 RID: 91236 RVA: 0x0052B9A0 File Offset: 0x00529BA0
|
|
// (set) Token: 0x06016465 RID: 91237 RVA: 0x0052B9B4 File Offset: 0x00529BB4
|
|
[Token(Token = "0x17003D85")]
|
|
public bool AELHMFPDAGB
|
|
{
|
|
[Token(Token = "0x6016464")]
|
|
[Address(RVA = "0xCDF840", Offset = "0xCDE840", VA = "0x180CDF840")]
|
|
get;
|
|
[Token(Token = "0x6016465")]
|
|
[Address(RVA = "0xCDDC60", Offset = "0xCDCC60", VA = "0x180CDDC60")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x17003D86 RID: 15750
|
|
// (get) Token: 0x06016466 RID: 91238 RVA: 0x0052B9C8 File Offset: 0x00529BC8
|
|
// (set) Token: 0x06016467 RID: 91239 RVA: 0x0052B9DC File Offset: 0x00529BDC
|
|
[Token(Token = "0x17003D86")]
|
|
public float EPGIIPKANCN
|
|
{
|
|
[Token(Token = "0x6016466")]
|
|
[Address(RVA = "0x15A7A10", Offset = "0x15A6A10", VA = "0x1815A7A10")]
|
|
get;
|
|
[Token(Token = "0x6016467")]
|
|
[Address(RVA = "0x19A0C20", Offset = "0x199FC20", VA = "0x1819A0C20")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x06016468 RID: 91240 RVA: 0x0052B9F0 File Offset: 0x00529BF0
|
|
[Token(Token = "0x6016468")]
|
|
[Address(RVA = "0x19A0520", Offset = "0x199F520", VA = "0x1819A0520")]
|
|
public void UpdateColor()
|
|
{
|
|
MeshRenderer[] componentsInChildren = base.GetComponentsInChildren<MeshRenderer>();
|
|
int num = 0;
|
|
int length = componentsInChildren.Length;
|
|
if (num < length)
|
|
{
|
|
MeshRenderer meshRenderer = componentsInChildren[num];
|
|
this.UpdateRendererColor(meshRenderer, true);
|
|
num++;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016469 RID: 91241 RVA: 0x0052BA2C File Offset: 0x00529C2C
|
|
[Token(Token = "0x6016469")]
|
|
[Address(RVA = "0x19A05C0", Offset = "0x199F5C0", VA = "0x1819A05C0")]
|
|
public void UpdateRendererColor(Renderer CHEJPOIMMCK, bool FLGHMHFNFMO = true)
|
|
{
|
|
Color red = Color.red;
|
|
if (!this.CJIMJENNIPE)
|
|
{
|
|
if (this.MyInputSlot == 0)
|
|
{
|
|
goto IL_29;
|
|
}
|
|
InputSlot? myInputSlot = this.MyInputSlot;
|
|
}
|
|
bool isCircuitPoint = this.CJIMJENNIPE;
|
|
IL_29:
|
|
if (this.POJKKILEGBC == (ulong)0L)
|
|
{
|
|
MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock();
|
|
this.POJKKILEGBC = materialPropertyBlock;
|
|
}
|
|
if (FLGHMHFNFMO)
|
|
{
|
|
Material sharedMaterial = CHEJPOIMMCK.GetSharedMaterial();
|
|
int cchofpafeho = PAMNDKEGFFG.CCHOFPAFEHO;
|
|
if (sharedMaterial.HasProperty(cchofpafeho))
|
|
{
|
|
Material sharedMaterial2 = CHEJPOIMMCK.GetSharedMaterial();
|
|
}
|
|
}
|
|
MaterialPropertyBlock pojkkilegbc = this.POJKKILEGBC;
|
|
CHEJPOIMMCK.Internal_GetPropertyBlock(pojkkilegbc);
|
|
MaterialPropertyBlock pojkkilegbc2 = this.POJKKILEGBC;
|
|
MaterialPropertyBlock pojkkilegbc3 = this.POJKKILEGBC;
|
|
CHEJPOIMMCK.Internal_SetPropertyBlock(pojkkilegbc3);
|
|
}
|
|
|
|
// Token: 0x0601646A RID: 91242 RVA: 0x0052BAD4 File Offset: 0x00529CD4
|
|
[Token(Token = "0x601646A")]
|
|
[Address(RVA = "0x199FBF0", Offset = "0x199EBF0", VA = "0x18199FBF0", Slot = "14")]
|
|
public override void ConnectionStart(ConnectionCreationContext LHOMKMINCHH, [Optional] ConnectionPoint.PGHEPJALOOK CEAGPJIOMJP)
|
|
{
|
|
int num = 0;
|
|
base.ConnectionStart(LHOMKMINCHH, CEAGPJIOMJP);
|
|
bool blocked = this.OODOADMDPCK;
|
|
bool flag;
|
|
if (!flag && this.CJIMJENNIPE)
|
|
{
|
|
Dictionary<InputSlot, CircuitLink> inputs = this.Node.Inputs;
|
|
bool isCircuitPoint = this.CJIMJENNIPE;
|
|
bool flag2;
|
|
if (!flag2)
|
|
{
|
|
List<CircuitGroupInterfaceNode> groupInterfaceConnections = this.GroupInterfaceConnections;
|
|
CircuitConnectionPoint.COGKPLDHHCB lopdlflhhfe = this.LOPDLFLHHFE;
|
|
if (lopdlflhhfe == 0)
|
|
{
|
|
goto IL_B4;
|
|
}
|
|
lopdlflhhfe(this);
|
|
}
|
|
if (num.ToString() != 0)
|
|
{
|
|
}
|
|
CircuitNodeDisplay circuitNodeDisplay = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.VisualFor<CircuitNodeDisplay>(num);
|
|
if (!circuitNodeDisplay.Tool.LBPNBENCCHK)
|
|
{
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CircuitNode node = this.Node;
|
|
bool isCircuitPoint2 = this.CJIMJENNIPE;
|
|
CircuitConnectionPoint.COGKPLDHHCB lopdlflhhfe2 = this.LOPDLFLHHFE;
|
|
if (lopdlflhhfe2 != 0)
|
|
{
|
|
lopdlflhhfe2(this);
|
|
}
|
|
Dictionary<OutputSlot, CircuitOutputConnectionPoint> outputSlotDisplays = circuitNodeDisplay.OutputSlotDisplays;
|
|
}
|
|
}
|
|
IL_B4:
|
|
if (CEAGPJIOMJP != 0)
|
|
{
|
|
int num2 = 0;
|
|
CEAGPJIOMJP((GBDECALBCOP)((uint)3), num2);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601646B RID: 91243 RVA: 0x0052BBAC File Offset: 0x00529DAC
|
|
[Token(Token = "0x601646B")]
|
|
[Address(RVA = "0x199F550", Offset = "0x199E550", VA = "0x18199F550", Slot = "15")]
|
|
public override void ConnectionEnd(ConnectionCreationContext LHOMKMINCHH, ConnectionPoint HDPMJFANOPG, ConnectionPoint GFMAOEPEFKD, [Optional] ConnectionPoint.PGHEPJALOOK CEAGPJIOMJP)
|
|
{
|
|
CircuitConnectionPoint component2;
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
int num2 = 0;
|
|
if (HDPMJFANOPG != num2)
|
|
{
|
|
CircuitConnectionPoint component = HDPMJFANOPG.GetComponent<CircuitConnectionPoint>();
|
|
}
|
|
int num3 = 0;
|
|
if (GFMAOEPEFKD != num3)
|
|
{
|
|
component2 = GFMAOEPEFKD.GetComponent<CircuitConnectionPoint>();
|
|
}
|
|
if (num != this)
|
|
{
|
|
return;
|
|
}
|
|
int num4 = 0;
|
|
if (!(num != num4))
|
|
{
|
|
return;
|
|
}
|
|
int num5 = 0;
|
|
if (!(component2 != num5) || !(HDPMJFANOPG != GFMAOEPEFKD))
|
|
{
|
|
return;
|
|
}
|
|
bool flag;
|
|
if (flag || component2.NodeDisplay.Tool.LBPNBENCCHK)
|
|
{
|
|
goto IL_144;
|
|
}
|
|
object obj;
|
|
if (obj != 0 && component2.CJIMJENNIPE)
|
|
{
|
|
bool isCircuitPoint = component2.CJIMJENNIPE;
|
|
bool flag2;
|
|
if (flag2)
|
|
{
|
|
break;
|
|
}
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CircuitNode node = component2.Node;
|
|
bool isCircuitPoint2 = component2.CJIMJENNIPE;
|
|
}
|
|
string text;
|
|
while (text == 0)
|
|
{
|
|
}
|
|
if (component2.MyInputSlot != 0)
|
|
{
|
|
CircuitNode node2 = component2.Node;
|
|
InputSlot? myInputSlot = component2.MyInputSlot;
|
|
bool flag3;
|
|
if (!flag3)
|
|
{
|
|
goto IL_12B;
|
|
}
|
|
CircuitManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
if (this.LOPDLFLHHFE != 0)
|
|
{
|
|
goto IL_12B;
|
|
}
|
|
}
|
|
}
|
|
CircuitManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CircuitNode node3 = component2.Node;
|
|
bool isCircuitPoint3 = component2.CJIMJENNIPE;
|
|
CircuitConnectionPoint.COGKPLDHHCB lopdlflhhfe = this.LOPDLFLHHFE;
|
|
if (lopdlflhhfe != 0)
|
|
{
|
|
lopdlflhhfe(component2);
|
|
}
|
|
return;
|
|
IL_12B:
|
|
CircuitManager instance4 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CircuitNode node4 = component2.Node;
|
|
InputSlot? myInputSlot2 = component2.MyInputSlot;
|
|
IL_144:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601646C RID: 91244 RVA: 0x0052BD04 File Offset: 0x00529F04
|
|
[Token(Token = "0x601646C")]
|
|
[Address(RVA = "0x19A0460", Offset = "0x199F460", VA = "0x1819A0460")]
|
|
private static bool MEJACKPPPAM(CircuitNode LAEAGPKCAIH, OutputSlot OIPIEKDLDMJ, CircuitNode DFKHHCOHANN, InputSlot DECEAGNPDJL)
|
|
{
|
|
Dictionary<InputSlot, CircuitLink> inputs = DFKHHCOHANN.Inputs;
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
int <NodeId>k__BackingField = LAEAGPKCAIH.<NodeId>k__BackingField;
|
|
return true;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601646D RID: 91245 RVA: 0x0052BD30 File Offset: 0x00529F30
|
|
[Token(Token = "0x601646D")]
|
|
[Address(RVA = "0x19A0380", Offset = "0x199F380", VA = "0x1819A0380", Slot = "25")]
|
|
public override bool IsInputConnected()
|
|
{
|
|
if (this.CJIMJENNIPE)
|
|
{
|
|
CircuitNode node = this.Node;
|
|
if (node != 0)
|
|
{
|
|
List<CircuitGroupInterfaceNode> groupInterfaceConnections = this.GroupInterfaceConnections;
|
|
return true;
|
|
}
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601646E RID: 91246 RVA: 0x0052BD78 File Offset: 0x00529F78
|
|
[Token(Token = "0x601646E")]
|
|
[Address(RVA = "0x19A0170", Offset = "0x199F170", VA = "0x1819A0170", Slot = "24")]
|
|
public override bool GetInputConnection(out CircuitConnectionPointBase OADEJGCDPCD)
|
|
{
|
|
int num = 0;
|
|
if (this.Node != num && this.CJIMJENNIPE)
|
|
{
|
|
int size = this.GroupInterfaceConnections._size;
|
|
Dictionary<InputSlot, CircuitLink> inputs = this.Node.Inputs;
|
|
bool isCircuitPoint = this.CJIMJENNIPE;
|
|
bool flag;
|
|
if (flag && num != 0)
|
|
{
|
|
if (num.ToString() == 0)
|
|
{
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
}
|
|
CircuitOutputConnectionPoint circuitOutputConnectionPoint = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.VisualFor<CircuitNodeDisplay>(num).OutputSlotDisplays[num];
|
|
return true;
|
|
}
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601646F RID: 91247 RVA: 0x0052BE04 File Offset: 0x0052A004
|
|
[Token(Token = "0x601646F")]
|
|
[Address(RVA = "0x199FF40", Offset = "0x199EF40", VA = "0x18199FF40", Slot = "26")]
|
|
public override string GetDescription()
|
|
{
|
|
int num = 0;
|
|
if (this.Node != num)
|
|
{
|
|
if (!this.CJIMJENNIPE)
|
|
{
|
|
if (this.MyInputSlot == 0)
|
|
{
|
|
goto IL_75;
|
|
}
|
|
CircuitNode node = this.Node;
|
|
NodeMetadata <NodeMetadata>k__BackingField = node.<NodeMetadata>k__BackingField;
|
|
int length = node.<NodeMetadata>k__BackingField.OutputMetadata.Length;
|
|
if (num >= length)
|
|
{
|
|
goto IL_75;
|
|
}
|
|
num += 2;
|
|
num += num;
|
|
InputSlot? myInputSlot = this.MyInputSlot;
|
|
num++;
|
|
}
|
|
CircuitNode node2 = this.Node;
|
|
if (num < node2)
|
|
{
|
|
num += 2;
|
|
num += num;
|
|
bool isCircuitPoint = this.CJIMJENNIPE;
|
|
num++;
|
|
}
|
|
IL_75:
|
|
return string.Empty;
|
|
}
|
|
return string.Empty;
|
|
}
|
|
|
|
// Token: 0x06016470 RID: 91248 RVA: 0x0052BE98 File Offset: 0x0052A098
|
|
[Token(Token = "0x6016470")]
|
|
[Address(RVA = "0x19A0930", Offset = "0x199F930", VA = "0x1819A0930")]
|
|
protected CircuitConnectionPoint()
|
|
{
|
|
List<CircuitGroupInterfaceNode> list = new List();
|
|
this.GroupInterfaceConnections = list;
|
|
this.AELHMFPDAGB = true;
|
|
this.EPGIIPKANCN = 1f;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400E947 RID: 59719
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400E947")]
|
|
[OAGJHJAIMMP(FHBJCBPFODN.SelfAndParent, false, false, false)]
|
|
public CircuitNodeDisplay NodeDisplay;
|
|
|
|
// Token: 0x0400E948 RID: 59720
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400E948")]
|
|
public CircuitNode Node;
|
|
|
|
// Token: 0x0400E949 RID: 59721
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400E949")]
|
|
public List<CircuitGroupInterfaceNode> GroupInterfaceConnections;
|
|
|
|
// Token: 0x0400E94D RID: 59725
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x400E94D")]
|
|
private MaterialPropertyBlock POJKKILEGBC;
|
|
|
|
// Token: 0x020032FF RID: 13055
|
|
[Token(Token = "0x20032FF")]
|
|
public sealed class COGKPLDHHCB : MulticastDelegate
|
|
{
|
|
// Token: 0x06016471 RID: 91249 RVA: 0x0052BECC File Offset: 0x0052A0CC
|
|
[Token(Token = "0x6016471")]
|
|
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
|
|
public COGKPLDHHCB(object FEDFKKMABOG, IntPtr APAICGIHAGJ)
|
|
{
|
|
this.method = APAICGIHAGJ;
|
|
this.m_target = FEDFKKMABOG;
|
|
}
|
|
|
|
// Token: 0x06016472 RID: 91250 RVA: 0x0052BEE8 File Offset: 0x0052A0E8
|
|
[Token(Token = "0x6016472")]
|
|
[Address(RVA = "0x6E1530", Offset = "0x6E0530", VA = "0x1806E1530", Slot = "13")]
|
|
public void Invoke(CircuitConnectionPoint BJDBOFJIOBB)
|
|
{
|
|
if (this.delegates != 0)
|
|
{
|
|
}
|
|
uint num;
|
|
if (num != (uint)0)
|
|
{
|
|
throw new ExecutionEngineException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016473 RID: 91251 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6016473")]
|
|
[Address(RVA = "0x5FA200", Offset = "0x5F9200", VA = "0x1805FA200", Slot = "14")]
|
|
public IAsyncResult BeginInvoke(CircuitConnectionPoint BJDBOFJIOBB, AsyncCallback AFLPGGJMPOE, object FEDFKKMABOG)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06016474 RID: 91252 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6016474")]
|
|
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", Slot = "15")]
|
|
public void EndInvoke(IAsyncResult GIAOBLMEMMI)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
}
|
|
}
|
|
}
|