1416 lines
45 KiB
C#
1416 lines
45 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Reflection;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using Cpp2IlInjected;
|
|
using Pathfinding.RVO;
|
|
using Photon.Pun;
|
|
using RecRoom.Circuits;
|
|
using RecRoom.Core.Rendering;
|
|
using RecRoom.Persistence;
|
|
using UnityEngine;
|
|
using UnityEngine.Experimental.Rendering;
|
|
|
|
namespace RecRoom.Core.Creation.Circuits
|
|
{
|
|
// Token: 0x02003322 RID: 13090
|
|
[Token(Token = "0x2003322")]
|
|
public class CircuitNodeDisplay : MonoBehaviourPun, EOCLMMENCKH, AICKHLGGBBH
|
|
{
|
|
// Token: 0x060165E8 RID: 91624 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x60165E8")]
|
|
[Address(RVA = "0x1CDDAB0", Offset = "0x1CDCAB0", VA = "0x181CDDAB0", Slot = "19")]
|
|
public virtual IEnumerable<ILINODKFHEO> GetEditables()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x060165E9 RID: 91625 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x60165E9")]
|
|
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "20")]
|
|
public virtual void PopulateDynamicEditables()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x17003DBC RID: 15804
|
|
// (get) Token: 0x060165EA RID: 91626 RVA: 0x00532098 File Offset: 0x00530298
|
|
// (set) Token: 0x060165EB RID: 91627 RVA: 0x005320AC File Offset: 0x005302AC
|
|
[Token(Token = "0x17003DBC")]
|
|
public CircuitNode BAAFFCIKDEN
|
|
{
|
|
[Token(Token = "0x60165EA")]
|
|
[Address(RVA = "0x4936E0", Offset = "0x4926E0", VA = "0x1804936E0")]
|
|
get
|
|
{
|
|
return this.MBBJMCDGDMN;
|
|
}
|
|
[Token(Token = "0x60165EB")]
|
|
[Address(RVA = "0x1CDF260", Offset = "0x1CDE260", VA = "0x181CDF260")]
|
|
private set
|
|
{
|
|
Delegate delegate2;
|
|
do
|
|
{
|
|
CircuitNode mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
int num = 0;
|
|
if (mbbjmcdgdmn != 0)
|
|
{
|
|
CircuitNode.NodeMetadataChanged nodeMetadataChanged;
|
|
Delegate @delegate = Delegate.Remove(mbbjmcdgdmn.NodeMetadataChangedEvent, nodeMetadataChanged);
|
|
if (@delegate != 0 && @delegate == 0)
|
|
{
|
|
continue;
|
|
}
|
|
mbbjmcdgdmn.NodeMetadataChangedEvent = num;
|
|
this.GPPNKOGIEOP();
|
|
}
|
|
this.MBBJMCDGDMN = value;
|
|
if (value == 0)
|
|
{
|
|
return;
|
|
}
|
|
CircuitNode.NodeMetadataChanged nodeMetadataChanged2;
|
|
delegate2 = Delegate.Combine(value.NodeMetadataChangedEvent, nodeMetadataChanged2);
|
|
}
|
|
while (delegate2 != 0 && delegate2 == 0);
|
|
value.NodeMetadataChangedEvent = delegate2;
|
|
this.OnCircuitNodeDeserialized();
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DBD RID: 15805
|
|
// (get) Token: 0x060165EC RID: 91628 RVA: 0x0053211C File Offset: 0x0053031C
|
|
[Token(Token = "0x17003DBD")]
|
|
public CircuitNodeGraph AAPJGPHNLID
|
|
{
|
|
[Token(Token = "0x60165EC")]
|
|
[Address(RVA = "0x1CE0420", Offset = "0x1CDF420", VA = "0x181CE0420")]
|
|
get
|
|
{
|
|
CircuitNode mbbjmcdgdmn;
|
|
do
|
|
{
|
|
mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
}
|
|
while (mbbjmcdgdmn == 0);
|
|
return mbbjmcdgdmn._nodeGraph;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DBE RID: 15806
|
|
// (get) Token: 0x060165ED RID: 91629 RVA: 0x0053213C File Offset: 0x0053033C
|
|
[Token(Token = "0x17003DBE")]
|
|
public NodeMetadata GMGJBNFOCKE
|
|
{
|
|
[Token(Token = "0x60165ED")]
|
|
[Address(RVA = "0x1CE0440", Offset = "0x1CDF440", VA = "0x181CE0440")]
|
|
get
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (060165ED)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Circuits.NodeMetadata RecRoom.Core.Creation.Circuits.CircuitNodeDisplay::get_NodeMetadata()
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stfld:native int(Object::m_CachedPtr, ldloc:CircuitNodeDisplay[exp:Object](this), ldc.i4:native int(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: 0x17003DBF RID: 15807
|
|
// (get) Token: 0x060165EE RID: 91630 RVA: 0x00532150 File Offset: 0x00530350
|
|
[Token(Token = "0x17003DBF")]
|
|
public bool HAEAADBHHEE
|
|
{
|
|
[Token(Token = "0x60165EE")]
|
|
[Address(RVA = "0x1CE03D0", Offset = "0x1CDF3D0", VA = "0x181CE03D0")]
|
|
get
|
|
{
|
|
CircuitNode mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
if (mbbjmcdgdmn == 0)
|
|
{
|
|
}
|
|
return mbbjmcdgdmn.HasConnectedInputs || this.MBBJMCDGDMN.HasConnectedOutputs;
|
|
}
|
|
}
|
|
|
|
// Token: 0x140001FE RID: 510
|
|
// (add) Token: 0x060165EF RID: 91631 RVA: 0x00532188 File Offset: 0x00530388
|
|
// (remove) Token: 0x060165F0 RID: 91632 RVA: 0x005321B0 File Offset: 0x005303B0
|
|
[Token(Token = "0x140001FE")]
|
|
public event Action DMKDMKIDPLC
|
|
{
|
|
[Token(Token = "0x60165EF")]
|
|
[Address(RVA = "0x1CE0200", Offset = "0x1CDF200", VA = "0x181CE0200")]
|
|
[CompilerGenerated]
|
|
add
|
|
{
|
|
Action dmkdmkidplc;
|
|
Delegate @delegate;
|
|
do
|
|
{
|
|
dmkdmkidplc = this.DMKDMKIDPLC;
|
|
@delegate = Delegate.Combine(dmkdmkidplc, value);
|
|
}
|
|
while (@delegate != 0 && @delegate == 0);
|
|
while (@delegate != dmkdmkidplc)
|
|
{
|
|
}
|
|
}
|
|
[Token(Token = "0x60165F0")]
|
|
[Address(RVA = "0x1CE04B0", Offset = "0x1CDF4B0", VA = "0x181CE04B0")]
|
|
[CompilerGenerated]
|
|
remove
|
|
{
|
|
Action dmkdmkidplc;
|
|
Delegate @delegate;
|
|
do
|
|
{
|
|
dmkdmkidplc = this.DMKDMKIDPLC;
|
|
@delegate = Delegate.Remove(dmkdmkidplc, value);
|
|
}
|
|
while (@delegate != 0 && @delegate == 0);
|
|
while (@delegate != dmkdmkidplc)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060165F1 RID: 91633 RVA: 0x005321D8 File Offset: 0x005303D8
|
|
[Token(Token = "0x60165F1")]
|
|
[Address(RVA = "0x1CDFF10", Offset = "0x1CDEF10", VA = "0x181CDFF10")]
|
|
public void SetConnectionVisualsHidden(bool ONGBFDACHHG, object PIHIPPPPEBI)
|
|
{
|
|
AOLMGGAPKEH dfaogpcpbbc = this.DFAOGPCPBBC;
|
|
if (!ONGBFDACHHG)
|
|
{
|
|
dfaogpcpbbc.BIHKNNPGGKP(PIHIPPPPEBI);
|
|
}
|
|
dfaogpcpbbc.BPAJKKAGPKB(PIHIPPPPEBI);
|
|
OKNNKFGFODL onConnectionVisibilityChanged = this.OnConnectionVisibilityChanged;
|
|
if (onConnectionVisibilityChanged != 0)
|
|
{
|
|
onConnectionVisibilityChanged.CNFDGDEOPPF();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC0 RID: 15808
|
|
// (get) Token: 0x060165F2 RID: 91634 RVA: 0x00532218 File Offset: 0x00530418
|
|
[Token(Token = "0x17003DC0")]
|
|
public bool KAGPFEMFNBH
|
|
{
|
|
[Token(Token = "0x60165F2")]
|
|
[Address(RVA = "0x18BE540", Offset = "0x18BD540", VA = "0x1818BE540")]
|
|
get
|
|
{
|
|
return this.DFAOGPCPBBC.CFLJGNJLBFG;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060165F3 RID: 91635 RVA: 0x00532238 File Offset: 0x00530438
|
|
[Token(Token = "0x60165F3")]
|
|
[Address(RVA = "0x1CDFFB0", Offset = "0x1CDEFB0", VA = "0x181CDFFB0")]
|
|
public bool TryGetInputConnection(InputSlot POFOFFDCGCB, out CircuitLink OHCCLFNCMMN)
|
|
{
|
|
CircuitNode mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
bool flag;
|
|
if (mbbjmcdgdmn != 0 && mbbjmcdgdmn.Inputs != 0 && flag)
|
|
{
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060165F4 RID: 91636 RVA: 0x00532260 File Offset: 0x00530460
|
|
[Token(Token = "0x60165F4")]
|
|
[Address(RVA = "0x1CDDBA0", Offset = "0x1CDCBA0", VA = "0x181CDDBA0")]
|
|
public bool IsInputConnected(InputSlot POFOFFDCGCB)
|
|
{
|
|
CircuitNode mbbjmcdgdmn;
|
|
do
|
|
{
|
|
mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
}
|
|
while (mbbjmcdgdmn == 0);
|
|
Dictionary<InputSlot, CircuitLink> inputs = mbbjmcdgdmn.Inputs;
|
|
if (inputs != 0)
|
|
{
|
|
throw new NullReferenceException();
|
|
}
|
|
return inputs == (ulong)1L;
|
|
}
|
|
|
|
// Token: 0x060165F5 RID: 91637 RVA: 0x00532294 File Offset: 0x00530494
|
|
[Token(Token = "0x60165F5")]
|
|
[Address(RVA = "0x1CDDCE0", Offset = "0x1CDCCE0", VA = "0x181CDDCE0")]
|
|
public bool IsOutputConnected(OutputSlot POFOFFDCGCB)
|
|
{
|
|
CircuitNode mbbjmcdgdmn;
|
|
do
|
|
{
|
|
mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
}
|
|
while (mbbjmcdgdmn == 0);
|
|
Dictionary<OutputSlot, HashSet<CircuitLink>> outputs = mbbjmcdgdmn.Outputs;
|
|
if (outputs != 0)
|
|
{
|
|
throw new NullReferenceException();
|
|
}
|
|
return outputs == (ulong)1L;
|
|
}
|
|
|
|
// Token: 0x060165F6 RID: 91638 RVA: 0x005322C8 File Offset: 0x005304C8
|
|
[Token(Token = "0x60165F6")]
|
|
[Address(RVA = "0x1CDD400", Offset = "0x1CDC400", VA = "0x181CDD400", Slot = "21")]
|
|
protected virtual void FLLMHFGKDJL(CircuitNode HPKICPNGMDJ, InputSlot DECEAGNPDJL, OutputSlot OIPIEKDLDMJ)
|
|
{
|
|
Action dmkdmkidplc = this.DMKDMKIDPLC;
|
|
if (dmkdmkidplc != 0)
|
|
{
|
|
dmkdmkidplc();
|
|
}
|
|
this.NEANPBHBJKO();
|
|
}
|
|
|
|
// Token: 0x17003DC1 RID: 15809
|
|
// (get) Token: 0x060165F7 RID: 91639 RVA: 0x005322EC File Offset: 0x005304EC
|
|
[Token(Token = "0x17003DC1")]
|
|
public bool JBMFJOBFJHP
|
|
{
|
|
[Token(Token = "0x60165F7")]
|
|
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "15")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC2 RID: 15810
|
|
// (get) Token: 0x060165F8 RID: 91640 RVA: 0x005322FC File Offset: 0x005304FC
|
|
[Token(Token = "0x17003DC2")]
|
|
public bool EFANGJGFDGD
|
|
{
|
|
[Token(Token = "0x60165F8")]
|
|
[Address(RVA = "0x4D9840", Offset = "0x4D8840", VA = "0x1804D9840")]
|
|
get
|
|
{
|
|
return this._isSimpleNode;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC3 RID: 15811
|
|
// (get) Token: 0x060165F9 RID: 91641 RVA: 0x00532310 File Offset: 0x00530510
|
|
[Token(Token = "0x17003DC3")]
|
|
public bool OGAEFFEGAMK
|
|
{
|
|
[Token(Token = "0x60165F9")]
|
|
[Address(RVA = "0x675320", Offset = "0x674320", VA = "0x180675320")]
|
|
get
|
|
{
|
|
return this._disallowedFromCircuitBoards;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC4 RID: 15812
|
|
// (get) Token: 0x060165FA RID: 91642 RVA: 0x00532324 File Offset: 0x00530524
|
|
// (set) Token: 0x060165FB RID: 91643 RVA: 0x00532338 File Offset: 0x00530538
|
|
[Token(Token = "0x17003DC4")]
|
|
public bool JMPJKDAIFPN
|
|
{
|
|
[Token(Token = "0x60165FA")]
|
|
[Address(RVA = "0x1CE02A0", Offset = "0x1CDF2A0", VA = "0x181CE02A0")]
|
|
get;
|
|
[Token(Token = "0x60165FB")]
|
|
[Address(RVA = "0x1CE0550", Offset = "0x1CDF550", VA = "0x181CE0550")]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x17003DC5 RID: 15813
|
|
// (get) Token: 0x060165FC RID: 91644 RVA: 0x0053234C File Offset: 0x0053054C
|
|
[Token(Token = "0x17003DC5")]
|
|
public bool NHCKHELMPNJ
|
|
{
|
|
[Token(Token = "0x60165FC")]
|
|
[Address(RVA = "0x1CE0490", Offset = "0x1CDF490", VA = "0x181CE0490")]
|
|
get
|
|
{
|
|
if (!this._isSimpleNode)
|
|
{
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC6 RID: 15814
|
|
// (get) Token: 0x060165FD RID: 91645 RVA: 0x00532364 File Offset: 0x00530564
|
|
[Token(Token = "0x17003DC6")]
|
|
public int GLGJMHOAGGJ
|
|
{
|
|
[Token(Token = "0x60165FD")]
|
|
[Address(RVA = "0x6A5AE0", Offset = "0x6A4AE0", VA = "0x1806A5AE0")]
|
|
get
|
|
{
|
|
return this.nodeId;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060165FE RID: 91646 RVA: 0x00532378 File Offset: 0x00530578
|
|
[Token(Token = "0x60165FE")]
|
|
[Address(RVA = "0x1C7AC10", Offset = "0x1C79C10", VA = "0x181C7AC10")]
|
|
public void OverrideNodeId(int? JIOPJMIJPLF)
|
|
{
|
|
this.FHCDHDEAPAJ = JIOPJMIJPLF;
|
|
}
|
|
|
|
// Token: 0x17003DC7 RID: 15815
|
|
// (get) Token: 0x060165FF RID: 91647 RVA: 0x0053238C File Offset: 0x0053058C
|
|
[Token(Token = "0x17003DC7")]
|
|
public bool BPDKFEMNBMB
|
|
{
|
|
[Token(Token = "0x60165FF")]
|
|
[Address(RVA = "0x1CE02B0", Offset = "0x1CDF2B0", VA = "0x181CE02B0")]
|
|
get
|
|
{
|
|
Tool tool = this.Tool;
|
|
int num = 0;
|
|
if (tool != num)
|
|
{
|
|
PersistenceView persistenceView = this.Tool.persistenceView;
|
|
int num2 = 0;
|
|
if (persistenceView != num2)
|
|
{
|
|
return this.Tool.persistenceView.NPNNBEHIMHA;
|
|
}
|
|
}
|
|
Debug.LogWarning(string.Format("CircuitNodeDisplay {0} has no accessible PersistenceView. Assuming that it's safe to persist its node.", this));
|
|
return true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17003DC8 RID: 15816
|
|
// (get) Token: 0x06016600 RID: 91648 RVA: 0x005323EC File Offset: 0x005305EC
|
|
[Token(Token = "0x17003DC8")]
|
|
public virtual Sprite CNGNMEHMGAB
|
|
{
|
|
[Token(Token = "0x6016600")]
|
|
[Address(RVA = "0x42B670", Offset = "0x42A670", VA = "0x18042B670", Slot = "22")]
|
|
get
|
|
{
|
|
return this.defaultCircuitLabelSprite;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016601 RID: 91649 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6016601")]
|
|
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "23")]
|
|
protected virtual void OnValidate()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06016602 RID: 91650 RVA: 0x00532400 File Offset: 0x00530600
|
|
[Token(Token = "0x6016602")]
|
|
[Address(RVA = "0x1CDC1D0", Offset = "0x1CDB1D0", VA = "0x181CDC1D0", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
string name2;
|
|
Delegate @delegate;
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
this.PopulateDynamicEditables();
|
|
AGEAHLDEDBO ageahldedbo;
|
|
this.CFHKBOBOFEI = ageahldedbo;
|
|
CircuitNodeDisplay.AllDisplays.Add(this);
|
|
Action<PhotonView> action;
|
|
base.JDHMIOJKLCK.OnDestroying += action;
|
|
this.BGAMJECINOE();
|
|
Tool tool = this.Tool;
|
|
int num2 = 0;
|
|
if (tool == num2)
|
|
{
|
|
Debug.LogError("CircuitNodeObject requires a Tool!");
|
|
}
|
|
if ((this._isSimpleNode ? 1 : 0) == num && (this.KeepOrientationOnPickup ? 1 : 0) == num)
|
|
{
|
|
goto IL_78;
|
|
}
|
|
this.Tool.GravityPickupMode = (Tool.LMJNHJCGDOF)((ulong)1L);
|
|
if ((this._isSimpleNode ? 1 : 0) == num)
|
|
{
|
|
goto IL_78;
|
|
}
|
|
goto IL_81;
|
|
IL_9D:
|
|
CircuitNodeDisplay.InputSlotDisplayConfig[] array = this.inputSlotConfigs;
|
|
int length = array.Length;
|
|
if (num < length)
|
|
{
|
|
CircuitNodeDisplay.InputSlotDisplayConfig inputSlotDisplayConfig = array[num];
|
|
Dictionary<InputSlot, CircuitInputConnectionPoint> inputSlotDisplays = this.InputSlotDisplays;
|
|
CircuitInputConnectionPoint ioslot = inputSlotDisplayConfig.IOSlot;
|
|
InputSlot inputSlot = inputSlotDisplayConfig.InputSlot;
|
|
inputSlotDisplays[inputSlot] = ioslot;
|
|
num++;
|
|
}
|
|
CircuitNodeDisplay.OutputSlotDisplayConfig[] array2 = this.outputSlotConfigs;
|
|
int length2 = array2.Length;
|
|
if (num < length2)
|
|
{
|
|
CircuitNodeDisplay.OutputSlotDisplayConfig outputSlotDisplayConfig = array2[num];
|
|
Dictionary<OutputSlot, CircuitOutputConnectionPoint> outputSlotDisplays = this.OutputSlotDisplays;
|
|
CircuitOutputConnectionPoint ioslot2 = outputSlotDisplayConfig.IOSlot;
|
|
OutputSlot outputSlot = outputSlotDisplayConfig.OutputSlot;
|
|
outputSlotDisplays[outputSlot] = ioslot2;
|
|
num++;
|
|
}
|
|
Dictionary<string, object> instantiationParameters = this.Tool.InstantiationParameters;
|
|
int num3;
|
|
if (instantiationParameters != 0 && instantiationParameters.TryGetValue("CO_CN", num))
|
|
{
|
|
num3 = num;
|
|
}
|
|
if (this.nodeId == num)
|
|
{
|
|
if (num3 == 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
GameObject gameObject;
|
|
string name = gameObject.name;
|
|
GameObject gameObject2;
|
|
Debug.LogError("CircuitNodeObject " + name + " has a serialized NodeID AND a Tool Instantiation Param NodeID!", gameObject2);
|
|
}
|
|
CircuitNode.NodeLifecycleEvent onNodeInstantiatedEvent = CircuitNode.OnNodeInstantiatedEvent;
|
|
CircuitNode.NodeLifecycleEvent nodeLifecycleEvent = new CircuitNode.NodeLifecycleEvent(name2.OEIGNGEAMMB);
|
|
@delegate = Delegate.Combine(onNodeInstantiatedEvent, nodeLifecycleEvent);
|
|
if (@delegate == 0 || @delegate != 0)
|
|
{
|
|
goto IL_22C;
|
|
}
|
|
continue;
|
|
IL_78:
|
|
if ((this._useCustomCircuitRendering ? 1 : 0) == num)
|
|
{
|
|
goto IL_9D;
|
|
}
|
|
IL_81:
|
|
this.Tool.OutlineType = (OutlineRendererEffect.HLEDHCIGMPJ)((ulong)4L);
|
|
this.Tool.SelectionType = (SelectionRendererEffect.KOOAFIGMBBP)((ulong)1L);
|
|
goto IL_9D;
|
|
}
|
|
SpawnableTool component = base.GetComponent<SpawnableTool>();
|
|
int num4 = 0;
|
|
if (component != num4)
|
|
{
|
|
Guid guid;
|
|
string text = "Prefab Guid:" + guid;
|
|
}
|
|
GameObject gameObject3 = base.gameObject;
|
|
object[] array3 = new object[2];
|
|
name2 = base.gameObject.name;
|
|
if (name2 != 0)
|
|
{
|
|
}
|
|
array3[0] = name2;
|
|
if ("" != 0)
|
|
{
|
|
}
|
|
array3[1] = "";
|
|
Debug.LogErrorFormat(gameObject3, "CircuitNodeObject {0} with prefab GUID {1} does not have configured circuit node type. Check SpawnableToolBuildConfig to make sure one is defined.", array3);
|
|
return;
|
|
IL_22C:
|
|
CircuitNode.OnNodeInstantiatedEvent = @delegate;
|
|
CircuitNode circuitNode;
|
|
while (circuitNode == 0)
|
|
{
|
|
}
|
|
IEnumerator<char> enumerator = name2.System.Collections.Generic.IEnumerable<System.Char>.GetEnumerator();
|
|
}
|
|
|
|
// Token: 0x06016603 RID: 91651 RVA: 0x00532654 File Offset: 0x00530854
|
|
[Token(Token = "0x6016603")]
|
|
[Address(RVA = "0x1CDFF70", Offset = "0x1CDEF70", VA = "0x181CDFF70", Slot = "24")]
|
|
protected virtual void Start()
|
|
{
|
|
int num = 0;
|
|
this.PDLMODBGKJK(num != 0);
|
|
this.NHLPHMPFNIL();
|
|
this.MFBIIAEFGPM = true;
|
|
this.NEANPBHBJKO();
|
|
}
|
|
|
|
// Token: 0x06016604 RID: 91652 RVA: 0x00532680 File Offset: 0x00530880
|
|
[Token(Token = "0x6016604")]
|
|
[Address(RVA = "0x1CDC8B0", Offset = "0x1CDB8B0", VA = "0x181CDC8B0")]
|
|
private void BGAMJECINOE()
|
|
{
|
|
MeshRenderer meshRenderer = this.circuitMeshRenderer;
|
|
int num = 0;
|
|
if (meshRenderer != num)
|
|
{
|
|
MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock();
|
|
this.IGGDFHEGPHP = materialPropertyBlock;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016605 RID: 91653 RVA: 0x005326B0 File Offset: 0x005308B0
|
|
[Token(Token = "0x6016605")]
|
|
[Address(RVA = "0x1CDEAD0", Offset = "0x1CDDAD0", VA = "0x181CDEAD0")]
|
|
protected void NHLPHMPFNIL()
|
|
{
|
|
int num = 0;
|
|
MeshRenderer meshRenderer = this.circuitMeshRenderer;
|
|
int num2 = 0;
|
|
if (meshRenderer != num2)
|
|
{
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
Texture2D texture2D;
|
|
GraphicsFormat graphicsFormat = texture2D.graphicsFormat;
|
|
}
|
|
MaterialPropertyBlock iggdfhegphp = this.IGGDFHEGPHP;
|
|
int iconTexScaleOffsetPropertyId = CircuitNodeDisplay.IconTexScaleOffsetPropertyId;
|
|
iggdfhegphp.SetVector(iconTexScaleOffsetPropertyId, num);
|
|
MeshRenderer meshRenderer2 = this.circuitMeshRenderer;
|
|
MaterialPropertyBlock iggdfhegphp2 = this.IGGDFHEGPHP;
|
|
meshRenderer2.Internal_SetPropertyBlock(iggdfhegphp2);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016606 RID: 91654 RVA: 0x0053271C File Offset: 0x0053091C
|
|
[Token(Token = "0x6016606")]
|
|
[Address(RVA = "0x1CDEDD0", Offset = "0x1CDDDD0", VA = "0x181CDEDD0")]
|
|
private void OEIGNGEAMMB(CircuitNode IKFLAODDALD)
|
|
{
|
|
int num = this.nodeId;
|
|
if (IKFLAODDALD.<NodeId>k__BackingField == num)
|
|
{
|
|
float height = ((IAgent)this).Height;
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016607 RID: 91655 RVA: 0x00532748 File Offset: 0x00530948
|
|
[Token(Token = "0x6016607")]
|
|
[Address(RVA = "0x1CDF950", Offset = "0x1CDE950", VA = "0x181CDF950", Slot = "14")]
|
|
protected sealed override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
bool flag = CircuitNodeDisplay.AllDisplays.Remove(this);
|
|
}
|
|
|
|
// Token: 0x06016608 RID: 91656 RVA: 0x00532770 File Offset: 0x00530970
|
|
[Token(Token = "0x6016608")]
|
|
[Address(RVA = "0x1CDE230", Offset = "0x1CDD230", VA = "0x181CDE230", Slot = "25")]
|
|
protected virtual void NDMHFAFLLOH(PhotonView KFONGPOFCDH)
|
|
{
|
|
CircuitNode mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
if (mbbjmcdgdmn != 0)
|
|
{
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged;
|
|
Delegate @delegate = Delegate.Remove(mbbjmcdgdmn.OnConnectedEvent, thisNodeConnectionChanged);
|
|
if (@delegate != 0 && @delegate == 0)
|
|
{
|
|
goto IL_13D;
|
|
}
|
|
mbbjmcdgdmn.OnConnectedEvent = @delegate;
|
|
CircuitNode mbbjmcdgdmn2 = this.MBBJMCDGDMN;
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged2;
|
|
Delegate delegate2 = Delegate.Remove(mbbjmcdgdmn2.OnDisconnectedEvent, thisNodeConnectionChanged2);
|
|
if (delegate2 != 0 && delegate2 == 0)
|
|
{
|
|
goto IL_13D;
|
|
}
|
|
mbbjmcdgdmn2.OnDisconnectedEvent = delegate2;
|
|
}
|
|
CircuitNode.NodeLifecycleEvent onNodeInstantiatedEvent = CircuitNode.OnNodeInstantiatedEvent;
|
|
CircuitNode.NodeLifecycleEvent nodeLifecycleEvent = new CircuitNode.NodeLifecycleEvent(this.OEIGNGEAMMB);
|
|
Delegate delegate3 = Delegate.Remove(onNodeInstantiatedEvent, nodeLifecycleEvent);
|
|
if (delegate3 == 0 || delegate3 != 0)
|
|
{
|
|
CircuitNode.OnNodeInstantiatedEvent = delegate3;
|
|
CircuitNode mbbjmcdgdmn3 = this.MBBJMCDGDMN;
|
|
CircuitNode mbbjmcdgdmn4 = this.MBBJMCDGDMN;
|
|
if (mbbjmcdgdmn4 != 0)
|
|
{
|
|
CircuitNode.NodeMetadataChanged nodeMetadataChanged;
|
|
Delegate delegate4 = Delegate.Remove(mbbjmcdgdmn4.NodeMetadataChangedEvent, nodeMetadataChanged);
|
|
if (delegate4 != 0 && delegate4 == 0)
|
|
{
|
|
goto IL_13D;
|
|
}
|
|
mbbjmcdgdmn4.NodeMetadataChangedEvent = delegate4;
|
|
this.GPPNKOGIEOP();
|
|
}
|
|
this.MBBJMCDGDMN = (ulong)0L;
|
|
PhotonView photonView = base.JDHMIOJKLCK;
|
|
int num = 0;
|
|
if (photonView != num)
|
|
{
|
|
Action<PhotonView> action;
|
|
base.JDHMIOJKLCK.OnDestroying -= action;
|
|
}
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int num2 = 0;
|
|
if (instance != num2)
|
|
{
|
|
NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.RemoveVisualFor(mbbjmcdgdmn3);
|
|
if (KKPBCOOONNK.BNNCCCFFALC)
|
|
{
|
|
CircuitManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int num3 = this.nodeId;
|
|
instance2.RequestMasterDestroyNode(num3);
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
IL_13D:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06016609 RID: 91657 RVA: 0x005328CC File Offset: 0x00530ACC
|
|
[Token(Token = "0x6016609")]
|
|
[Address(RVA = "0x1CDF3B0", Offset = "0x1CDE3B0", VA = "0x181CDF3B0", Slot = "26")]
|
|
public virtual void OnCircuitNodeInitialized(CircuitNode IKFLAODDALD)
|
|
{
|
|
CircuitNode mbbjmcdgdmn5;
|
|
Delegate delegate4;
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
if (this.MBBJMCDGDMN != num)
|
|
{
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
CircuitNode mbbjmcdgdmn = this.MBBJMCDGDMN;
|
|
instance.RemoveVisualFor(mbbjmcdgdmn);
|
|
CircuitNode mbbjmcdgdmn2 = this.MBBJMCDGDMN;
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged;
|
|
Delegate @delegate = Delegate.Remove(mbbjmcdgdmn2.OnConnectedEvent, thisNodeConnectionChanged);
|
|
if (@delegate != 0 && @delegate == 0)
|
|
{
|
|
continue;
|
|
}
|
|
mbbjmcdgdmn2.OnConnectedEvent = num;
|
|
CircuitNode mbbjmcdgdmn3 = this.MBBJMCDGDMN;
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged2;
|
|
Delegate delegate2 = Delegate.Remove(mbbjmcdgdmn3.OnDisconnectedEvent, thisNodeConnectionChanged2);
|
|
if (delegate2 != 0 && delegate2 == 0)
|
|
{
|
|
continue;
|
|
}
|
|
mbbjmcdgdmn3.OnDisconnectedEvent = delegate2;
|
|
}
|
|
GameObject gameObject = base.gameObject;
|
|
string[] array = new string[5];
|
|
string text = base.gameObject.name.Replace("(Clone)", "");
|
|
if (text != 0)
|
|
{
|
|
}
|
|
array[0] = text;
|
|
if ("_" != 0)
|
|
{
|
|
}
|
|
array[1] = "_";
|
|
MemberTypes memberType = IKFLAODDALD.GetType().MemberType;
|
|
if (memberType != (MemberTypes)0)
|
|
{
|
|
}
|
|
array[2] = memberType;
|
|
if ("_" != 0)
|
|
{
|
|
}
|
|
array[3] = "_";
|
|
string text2;
|
|
if (text2 != 0)
|
|
{
|
|
}
|
|
array[4] = text2;
|
|
string text3 = string.Concat(array);
|
|
gameObject.name = text3;
|
|
this.BAAFFCIKDEN = IKFLAODDALD;
|
|
int num2 = 0;
|
|
this.OKCJFCCNHNM(num2 != 0);
|
|
if (this.MBBJMCDGDMN != 0)
|
|
{
|
|
}
|
|
this.GFNOFLIIKHO();
|
|
NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.SetVisualFor(IKFLAODDALD, this);
|
|
int num3 = 0;
|
|
this.PDLMODBGKJK(num3 != 0);
|
|
CircuitNode mbbjmcdgdmn4 = this.MBBJMCDGDMN;
|
|
if (mbbjmcdgdmn4 == 0)
|
|
{
|
|
return;
|
|
}
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged3;
|
|
Delegate delegate3 = Delegate.Combine(mbbjmcdgdmn4.OnConnectedEvent, thisNodeConnectionChanged3);
|
|
if (delegate3 == 0 || delegate3 != 0)
|
|
{
|
|
mbbjmcdgdmn4.OnConnectedEvent = delegate3;
|
|
mbbjmcdgdmn5 = this.MBBJMCDGDMN;
|
|
CircuitNode.ThisNodeConnectionChanged thisNodeConnectionChanged4;
|
|
delegate4 = Delegate.Combine(mbbjmcdgdmn5.OnDisconnectedEvent, thisNodeConnectionChanged4);
|
|
if (delegate4 == 0 || delegate4 != 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
mbbjmcdgdmn5.OnDisconnectedEvent = delegate4;
|
|
}
|
|
|
|
// Token: 0x0601660A RID: 91658 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x601660A")]
|
|
[Address(RVA = "0x4242D0", Offset = "0x4232D0", VA = "0x1804242D0", Slot = "27")]
|
|
public virtual void OnCircuitNodeDeserialized()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x0601660B RID: 91659 RVA: 0x00532A8C File Offset: 0x00530C8C
|
|
[Token(Token = "0x601660B")]
|
|
[Address(RVA = "0x1CDD6A0", Offset = "0x1CDC6A0", VA = "0x181CDD6A0", Slot = "28")]
|
|
protected virtual void GPPNKOGIEOP()
|
|
{
|
|
CreationObject component = base.GetComponent<CreationObject>();
|
|
int num = 0;
|
|
if (component != num)
|
|
{
|
|
Func<CostInfo> func = new Func(this.POJLHNCAKAO);
|
|
component.AddResourceCostModifier(func, this);
|
|
}
|
|
CircuitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action = new Action(this.HNOLGHDKGBO);
|
|
instance.JCEAGHCOPHB += action;
|
|
if (NetworkedSingletonMonoBehaviour.ONCPNMDGGKG)
|
|
{
|
|
RoomPersistenceManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action2 = new Action(this.NEANPBHBJKO);
|
|
instance2.OPIHPFLNNMH += action2;
|
|
RoomPersistenceManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action3 = new Action(this.NEANPBHBJKO);
|
|
instance3.NPCNGKGEKMB += action3;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601660C RID: 91660 RVA: 0x00532B2C File Offset: 0x00530D2C
|
|
[Token(Token = "0x601660C")]
|
|
[Address(RVA = "0x1CDD430", Offset = "0x1CDC430", VA = "0x181CDD430", Slot = "29")]
|
|
protected virtual void GFNOFLIIKHO()
|
|
{
|
|
RoomPersistenceManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int num = 0;
|
|
if (instance != num)
|
|
{
|
|
RoomPersistenceManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action = new Action(this.NEANPBHBJKO);
|
|
instance2.NPCNGKGEKMB -= action;
|
|
RoomPersistenceManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action2 = new Action(this.NEANPBHBJKO);
|
|
instance3.OPIHPFLNNMH -= action2;
|
|
}
|
|
CircuitManager instance4 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
int num2 = 0;
|
|
if (instance4 != num2)
|
|
{
|
|
CircuitManager instance5 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
|
|
Action action3 = new Action(this.HNOLGHDKGBO);
|
|
instance5.JCEAGHCOPHB -= action3;
|
|
}
|
|
CreationObject component = base.GetComponent<CreationObject>();
|
|
int num3 = 0;
|
|
if (component != num3)
|
|
{
|
|
component.RemoveResourceCostModifier(this);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601660D RID: 91661 RVA: 0x00532BDC File Offset: 0x00530DDC
|
|
[Token(Token = "0x601660D")]
|
|
[Address(RVA = "0x1CDDAF0", Offset = "0x1CDCAF0", VA = "0x181CDDAF0")]
|
|
private void HNOLGHDKGBO()
|
|
{
|
|
this.NEANPBHBJKO();
|
|
}
|
|
|
|
// Token: 0x0601660E RID: 91662 RVA: 0x00532BF0 File Offset: 0x00530DF0
|
|
[Token(Token = "0x601660E")]
|
|
[Address(RVA = "0x1CDFB00", Offset = "0x1CDEB00", VA = "0x181CDFB00")]
|
|
private CostInfo POJLHNCAKAO()
|
|
{
|
|
int num = 0;
|
|
CreationObject creationObject;
|
|
if (creationObject != num)
|
|
{
|
|
ObjectGroup <JOPKLANPAKD>k__BackingField = creationObject.<JOPKLANPAKD>k__BackingField;
|
|
int num2 = 0;
|
|
if (<JOPKLANPAKD>k__BackingField != num2)
|
|
{
|
|
ObjectGroup <JOPKLANPAKD>k__BackingField2 = creationObject.<JOPKLANPAKD>k__BackingField;
|
|
if (<JOPKLANPAKD>k__BackingField2 == 0)
|
|
{
|
|
}
|
|
if (<JOPKLANPAKD>k__BackingField2)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
if (RecRoomSceneManager.<OCDLBPHJMOP>k__BackingField.sceneRenderingSettings.ShowGadgetsToEveryone)
|
|
{
|
|
int num3 = 0;
|
|
int num4 = 0;
|
|
CircuitNodeDisplay[] array;
|
|
int length = array.Length;
|
|
if (num4 < length)
|
|
{
|
|
if (!array[num3]._isSimpleNode)
|
|
{
|
|
num3++;
|
|
}
|
|
if (!DLMCJADFCKK.GKGKJNBGPOC(num3))
|
|
{
|
|
}
|
|
}
|
|
}
|
|
int num5 = 0;
|
|
this.m_CachedPtr = (IntPtr)num5;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601660F RID: 91663 RVA: 0x00532C9C File Offset: 0x00530E9C
|
|
[Token(Token = "0x601660F")]
|
|
[Address(RVA = "0x1CDF9D0", Offset = "0x1CDE9D0", VA = "0x181CDF9D0")]
|
|
protected void PDLMODBGKJK(bool CDFHDACBFKN = false)
|
|
{
|
|
CreationObject component = base.GetComponent<CreationObject>();
|
|
int num = 0;
|
|
bool flag = component != num;
|
|
if (flag && (uint)1 != 0U)
|
|
{
|
|
if (CDFHDACBFKN)
|
|
{
|
|
component.ClearConfigurableSettings();
|
|
component.ClearDynamicUIElements();
|
|
}
|
|
IEnumerable<ILINODKFHEO> editables = this.GetEditables();
|
|
this.JKAJHDIFAEG = true;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016610 RID: 91664 RVA: 0x0000220F File Offset: 0x0000040F
|
|
[Token(Token = "0x6016610")]
|
|
[Address(RVA = "0x1CDCD30", Offset = "0x1CDBD30", VA = "0x181CDCD30", Slot = "30")]
|
|
protected virtual void EHDLIFMMAJJ(NodeMetadata KBNMDHBAHGO)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06016611 RID: 91665 RVA: 0x00532CEC File Offset: 0x00530EEC
|
|
[Token(Token = "0x6016611")]
|
|
[Address(RVA = "0x1CDE6B0", Offset = "0x1CDD6B0", VA = "0x181CDE6B0")]
|
|
private void NEANPBHBJKO()
|
|
{
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
if ((this.MFBIIAEFGPM ? 1 : 0) == num || NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.HOIEIPLONFI || this.MBBJMCDGDMN == num)
|
|
{
|
|
return;
|
|
}
|
|
if (CircuitVisibilityBehaviour.ShouldBeVisible(this.CFHKBOBOFEI))
|
|
{
|
|
Dictionary<InputSlot, CircuitInputConnectionPoint> inputSlotDisplays = this.InputSlotDisplays;
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
GameObject gameObject;
|
|
bool flag2;
|
|
if (gameObject.activeSelf && !flag2)
|
|
{
|
|
break;
|
|
}
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> liopaockago = this.LIOPAOCKAGO;
|
|
bool flag3;
|
|
while (!flag3)
|
|
{
|
|
}
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> liopaockago2 = this.LIOPAOCKAGO;
|
|
}
|
|
if (num != 0)
|
|
{
|
|
continue;
|
|
}
|
|
}
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> liopaockago3 = this.LIOPAOCKAGO;
|
|
bool flag4;
|
|
if (flag4)
|
|
{
|
|
}
|
|
if (num == 0)
|
|
{
|
|
goto Block_8;
|
|
}
|
|
}
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> liopaockago4 = this.LIOPAOCKAGO;
|
|
throw new NullReferenceException();
|
|
Block_8:
|
|
this.LIOPAOCKAGO.Clear();
|
|
}
|
|
|
|
// Token: 0x06016612 RID: 91666 RVA: 0x00532DE4 File Offset: 0x00530FE4
|
|
[Token(Token = "0x6016612")]
|
|
[Address(RVA = "0x1CDDA40", Offset = "0x1CDCA40", VA = "0x181CDDA40")]
|
|
public CircuitDefaultPinDisplay GetDefaultPinForInput(InputSlot DBFBLNILIGL)
|
|
{
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> liopaockago = this.LIOPAOCKAGO;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06016613 RID: 91667 RVA: 0x00532E00 File Offset: 0x00531000
|
|
[Token(Token = "0x6016613")]
|
|
[Address(RVA = "0x1CDDF60", Offset = "0x1CDCF60", VA = "0x181CDDF60")]
|
|
private Tooltip KFOEOEKBBIG(CircuitConnectionPoint POFOFFDCGCB, string LJIGOCDPEJF)
|
|
{
|
|
Tooltip component = POFOFFDCGCB.GetComponent<Tooltip>();
|
|
int num = 0;
|
|
if (component == num)
|
|
{
|
|
Tooltip tooltip = POFOFFDCGCB.gameObject.AddComponent<Tooltip>();
|
|
}
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
if (stringBuilder == 0)
|
|
{
|
|
StringBuilder stringBuilder2 = stringBuilder.AppendLine(LJIGOCDPEJF);
|
|
}
|
|
if (POFOFFDCGCB.MyInputSlot != 0 && this.MBBJMCDGDMN != 0)
|
|
{
|
|
InputSlot? myInputSlot = POFOFFDCGCB.MyInputSlot;
|
|
int num3;
|
|
int num2 = num3;
|
|
StringBuilder stringBuilder3 = stringBuilder.Append(num2);
|
|
}
|
|
int hashCode = stringBuilder.GetHashCode();
|
|
component.Message = hashCode;
|
|
return component;
|
|
}
|
|
|
|
// Token: 0x06016614 RID: 91668 RVA: 0x00532E88 File Offset: 0x00531088
|
|
[Token(Token = "0x6016614")]
|
|
[Address(RVA = "0x1CDC940", Offset = "0x1CDB940", VA = "0x181CDC940", Slot = "31")]
|
|
public virtual void DeserializeFrom(KPNDFONGDGF HFBJGCHOANH)
|
|
{
|
|
if (HFBJGCHOANH.FAGKDKEFPKO != (ulong)0L)
|
|
{
|
|
Dictionary<int, int> fagkdkefpko = HFBJGCHOANH.FAGKDKEFPKO;
|
|
}
|
|
CircuitNode circuitNode;
|
|
if (circuitNode != 0)
|
|
{
|
|
if (this._isSimpleNode || this._useCustomCircuitRendering)
|
|
{
|
|
Transform transform = base.transform;
|
|
Transform transform2 = base.transform;
|
|
Transform transform3 = base.transform;
|
|
Transform transform4 = base.transform;
|
|
}
|
|
return;
|
|
}
|
|
object[] array = new object[2];
|
|
if (array != 0)
|
|
{
|
|
}
|
|
array[0] = array;
|
|
if (array != 0)
|
|
{
|
|
}
|
|
array[1] = array;
|
|
Debug.LogErrorFormat("Found null circuit node for CircuitNodeDisplay data:\nOld ID: {0} New Id: {1}", array);
|
|
Debug.LogError("Expected a circuit node id for CircuitNodeDisplay data");
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06016615 RID: 91669 RVA: 0x00532F20 File Offset: 0x00531120
|
|
[Token(Token = "0x6016615")]
|
|
[Address(RVA = "0x1CDFE40", Offset = "0x1CDEE40", VA = "0x181CDFE40", Slot = "32")]
|
|
public virtual void SerializeTo(ref PDEKIHFJKHJ IABNDBNHMKF, ref MKNCHKCCIHK NHFINJNIPGK, StringBuilder BIPOIFGEMGB)
|
|
{
|
|
this.OKCJFCCNHNM(true);
|
|
int <NodeId>k__BackingField = this.MBBJMCDGDMN.<NodeId>k__BackingField;
|
|
new GGMKKGHBBBP().GCDKKNMBLPH = <NodeId>k__BackingField;
|
|
int num = 0;
|
|
this.FHCDHDEAPAJ = num;
|
|
}
|
|
|
|
// Token: 0x06016616 RID: 91670 RVA: 0x00532F5C File Offset: 0x0053115C
|
|
[Token(Token = "0x6016616")]
|
|
[Address(RVA = "0x1CDEE10", Offset = "0x1CDDE10", VA = "0x181CDEE10")]
|
|
private void OKCJFCCNHNM(bool KHJKDAPJNHB)
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
if (this.nodeId == num)
|
|
{
|
|
return;
|
|
}
|
|
}
|
|
while (this.MBBJMCDGDMN == num);
|
|
SpawnableTool component = base.GetComponent<SpawnableTool>();
|
|
int num2 = 0;
|
|
if (component != num2)
|
|
{
|
|
int type = (int)component.OPLHMKFCNOL;
|
|
RuntimeSpawnableToolConfig runtimeSpawnableToolConfig;
|
|
if (runtimeSpawnableToolConfig != 0)
|
|
{
|
|
CircuitNodeType circuitNodeType = runtimeSpawnableToolConfig.CircuitNodeType;
|
|
if (circuitNodeType != 0 && !string.IsNullOrEmpty(circuitNodeType.uuid))
|
|
{
|
|
string uuid = runtimeSpawnableToolConfig.CircuitNodeType.uuid;
|
|
}
|
|
}
|
|
}
|
|
bool flag;
|
|
bool flag2;
|
|
if (flag && flag2)
|
|
{
|
|
object[] array = new object[5];
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016617 RID: 91671 RVA: 0x00533054 File Offset: 0x00531254
|
|
[Token(Token = "0x6016617")]
|
|
[Address(RVA = "0x1CDD8E0", Offset = "0x1CDC8E0", VA = "0x181CDD8E0")]
|
|
public Guid GetCircuitNodeType()
|
|
{
|
|
int num = 0;
|
|
SpawnableTool spawnableTool;
|
|
if (spawnableTool != num)
|
|
{
|
|
int type = (int)spawnableTool.OPLHMKFCNOL;
|
|
RuntimeSpawnableToolConfig runtimeSpawnableToolConfig;
|
|
if (runtimeSpawnableToolConfig != 0)
|
|
{
|
|
CircuitNodeType circuitNodeType = runtimeSpawnableToolConfig.CircuitNodeType;
|
|
if (circuitNodeType != 0 && !string.IsNullOrEmpty(circuitNodeType.uuid))
|
|
{
|
|
string uuid = runtimeSpawnableToolConfig.CircuitNodeType.uuid;
|
|
}
|
|
}
|
|
}
|
|
Guid empty = Guid.Empty;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06016618 RID: 91672 RVA: 0x005330B0 File Offset: 0x005312B0
|
|
[Token(Token = "0x6016618")]
|
|
[Address(RVA = "0x1CDE100", Offset = "0x1CDD100", VA = "0x181CDE100", Slot = "18")]
|
|
private void LBLKKLJMGMM(DDOCLDALHON KDMGDPJLIBN)
|
|
{
|
|
this.BGAMJECINOE();
|
|
this.NHLPHMPFNIL();
|
|
MeshRenderer meshRenderer = this.circuitMeshRenderer;
|
|
int num = 0;
|
|
if (meshRenderer != num)
|
|
{
|
|
MaterialPropertyBlock iggdfhegphp = this.IGGDFHEGPHP;
|
|
Vector4 zero = Vector4.zero;
|
|
MeshRenderer meshRenderer2 = this.circuitMeshRenderer;
|
|
MaterialPropertyBlock iggdfhegphp2 = this.IGGDFHEGPHP;
|
|
meshRenderer2.Internal_SetPropertyBlock(iggdfhegphp2);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06016619 RID: 91673 RVA: 0x00533108 File Offset: 0x00531308
|
|
[Token(Token = "0x6016619")]
|
|
[Address(RVA = "0x1CDDC50", Offset = "0x1CDCC50", VA = "0x181CDDC50")]
|
|
public bool IsInputVisualSuppressed(InputSlot POFOFFDCGCB)
|
|
{
|
|
Dictionary<InputSlot, CircuitInputConnectionPoint> inputSlotDisplays = this.InputSlotDisplays;
|
|
bool flag;
|
|
if (!flag)
|
|
{
|
|
return flag;
|
|
}
|
|
bool flag2;
|
|
return flag2;
|
|
}
|
|
|
|
// Token: 0x0601661A RID: 91674 RVA: 0x0053312C File Offset: 0x0053132C
|
|
[Token(Token = "0x601661A")]
|
|
[Address(RVA = "0x1CDDD90", Offset = "0x1CDCD90", VA = "0x181CDDD90")]
|
|
public bool IsOutputVisualSuppressed(OutputSlot OIPIEKDLDMJ, CircuitNodeDisplay PLKNIAGDEEM, InputSlot DECEAGNPDJL)
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
Dictionary<OutputSlot, CircuitOutputConnectionPoint> outputSlotDisplays = this.OutputSlotDisplays;
|
|
bool flag;
|
|
if (!flag)
|
|
{
|
|
goto IL_24;
|
|
}
|
|
bool flag2;
|
|
if (flag2)
|
|
{
|
|
bool flag3;
|
|
while (!flag3)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
while (num != 0);
|
|
if (num != -1)
|
|
{
|
|
}
|
|
IL_24:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0601661B RID: 91675 RVA: 0x00533168 File Offset: 0x00531368
|
|
[Token(Token = "0x601661B")]
|
|
[Address(RVA = "0x1CDDB00", Offset = "0x1CDCB00", VA = "0x181CDDB00")]
|
|
public static bool IsGameObjectSimpleNode(Component CKCMODJNCNF)
|
|
{
|
|
CircuitNodeDisplay[] componentsInChildren = CKCMODJNCNF.GetComponentsInChildren<CircuitNodeDisplay>(true);
|
|
int num = 0;
|
|
int length = componentsInChildren.Length;
|
|
if (num < length && !componentsInChildren[num]._isSimpleNode)
|
|
{
|
|
num++;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x0601661C RID: 91676 RVA: 0x005331A4 File Offset: 0x005313A4
|
|
[Token(Token = "0x601661C")]
|
|
[Address(RVA = "0x1CE00E0", Offset = "0x1CDF0E0", VA = "0x181CE00E0")]
|
|
public CircuitNodeDisplay()
|
|
{
|
|
List<DOPNALIMPNA> list = new List();
|
|
this.OPPMKLPOGFB = list;
|
|
int num;
|
|
int num2;
|
|
OKNNKFGFODL oknnkfgfodl = new OKNNKFGFODL(32, num != 0, num2 != 0);
|
|
num2 = 0;
|
|
num = 0;
|
|
this.OnConnectionVisibilityChanged = oknnkfgfodl;
|
|
AOLMGGAPKEH aolmggapkeh = new AOLMGGAPKEH();
|
|
this.DFAOGPCPBBC = aolmggapkeh;
|
|
Dictionary<InputSlot, CircuitInputConnectionPoint> dictionary = new Dictionary();
|
|
this.InputSlotDisplays = dictionary;
|
|
Dictionary<OutputSlot, CircuitOutputConnectionPoint> dictionary2 = new Dictionary();
|
|
this.OutputSlotDisplays = dictionary2;
|
|
Dictionary<InputSlot, CircuitDefaultPinDisplay> dictionary3 = new Dictionary();
|
|
this.LIOPAOCKAGO = dictionary3;
|
|
this.JMPJKDAIFPN = true;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400EA14 RID: 59924
|
|
[Token(Token = "0x400EA14")]
|
|
public static readonly List<CircuitNodeDisplay> AllDisplays = new List();
|
|
|
|
// Token: 0x0400EA15 RID: 59925
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400EA15")]
|
|
private AGEAHLDEDBO CFHKBOBOFEI;
|
|
|
|
// Token: 0x0400EA16 RID: 59926
|
|
[Token(Token = "0x400EA16")]
|
|
public static readonly int IconTexScaleOffsetPropertyId = Shader.PropertyToID("_IconTexScaleOffset");
|
|
|
|
// Token: 0x0400EA17 RID: 59927
|
|
[Token(Token = "0x400EA17")]
|
|
public static readonly int PinMaskPropertyId = Shader.PropertyToID("_PinMask");
|
|
|
|
// Token: 0x0400EA18 RID: 59928
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400EA18")]
|
|
protected readonly List<DOPNALIMPNA> OPPMKLPOGFB;
|
|
|
|
// Token: 0x0400EA19 RID: 59929
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400EA19")]
|
|
private CircuitNode MBBJMCDGDMN;
|
|
|
|
// Token: 0x0400EA1B RID: 59931
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400EA1B")]
|
|
public OKNNKFGFODL OnConnectionVisibilityChanged;
|
|
|
|
// Token: 0x0400EA1C RID: 59932
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400EA1C")]
|
|
private AOLMGGAPKEH DFAOGPCPBBC;
|
|
|
|
// Token: 0x0400EA1D RID: 59933
|
|
[FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400EA1D")]
|
|
public Dictionary<InputSlot, CircuitInputConnectionPoint> InputSlotDisplays;
|
|
|
|
// Token: 0x0400EA1E RID: 59934
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x400EA1E")]
|
|
public Dictionary<OutputSlot, CircuitOutputConnectionPoint> OutputSlotDisplays;
|
|
|
|
// Token: 0x0400EA1F RID: 59935
|
|
[FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x400EA1F")]
|
|
private Dictionary<InputSlot, CircuitDefaultPinDisplay> LIOPAOCKAGO;
|
|
|
|
// Token: 0x0400EA20 RID: 59936
|
|
[FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x400EA20")]
|
|
[SerializeField]
|
|
[Tooltip("Returns whether this is a \"simple\" node that represents a single circuit operation and nothing else. Simple nodes always use the circuit-specific instanced material.")]
|
|
private bool _isSimpleNode;
|
|
|
|
// Token: 0x0400EA21 RID: 59937
|
|
[FieldOffset(Offset = "0x89")]
|
|
[Token(Token = "0x400EA21")]
|
|
[SerializeField]
|
|
[Tooltip("Returns whether this simple node should be disallowed from circuit boards")]
|
|
[JEAMMEGEDDJ("IsSimpleNode", true)]
|
|
private bool _disallowedFromCircuitBoards;
|
|
|
|
// Token: 0x0400EA23 RID: 59939
|
|
[FieldOffset(Offset = "0x8B")]
|
|
[Token(Token = "0x400EA23")]
|
|
[SerializeField]
|
|
[Tooltip("Returns whether this node should configure the circuit-specific instanced material")]
|
|
[JEAMMEGEDDJ("IsSimpleNode", false)]
|
|
private bool _useCustomCircuitRendering;
|
|
|
|
// Token: 0x0400EA24 RID: 59940
|
|
[FieldOffset(Offset = "0x8C")]
|
|
[Token(Token = "0x400EA24")]
|
|
[SerializeField]
|
|
private bool KeepOrientationOnPickup;
|
|
|
|
// Token: 0x0400EA25 RID: 59941
|
|
[FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x400EA25")]
|
|
[SerializeField]
|
|
public CircuitNodeDisplay.InputSlotDisplayConfig[] inputSlotConfigs;
|
|
|
|
// Token: 0x0400EA26 RID: 59942
|
|
[FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x400EA26")]
|
|
[SerializeField]
|
|
public CircuitNodeDisplay.OutputSlotDisplayConfig[] outputSlotConfigs;
|
|
|
|
// Token: 0x0400EA27 RID: 59943
|
|
[FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x400EA27")]
|
|
[HideInInspector]
|
|
[SerializeField]
|
|
private int nodeId;
|
|
|
|
// Token: 0x0400EA28 RID: 59944
|
|
[FieldOffset(Offset = "0xA4")]
|
|
[Token(Token = "0x400EA28")]
|
|
private int? FHCDHDEAPAJ;
|
|
|
|
// Token: 0x0400EA29 RID: 59945
|
|
[FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x400EA29")]
|
|
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
|
|
public Tool Tool;
|
|
|
|
// Token: 0x0400EA2A RID: 59946
|
|
[FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x400EA2A")]
|
|
[SerializeField]
|
|
[HideInInspector]
|
|
private MeshRenderer circuitMeshRenderer;
|
|
|
|
// Token: 0x0400EA2B RID: 59947
|
|
[FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x400EA2B")]
|
|
[SerializeField]
|
|
protected Sprite defaultCircuitLabelSprite;
|
|
|
|
// Token: 0x0400EA2C RID: 59948
|
|
[FieldOffset(Offset = "0xC8")]
|
|
[Token(Token = "0x400EA2C")]
|
|
private MaterialPropertyBlock IGGDFHEGPHP;
|
|
|
|
// Token: 0x0400EA2D RID: 59949
|
|
[FieldOffset(Offset = "0xD0")]
|
|
[Token(Token = "0x400EA2D")]
|
|
private bool MFBIIAEFGPM;
|
|
|
|
// Token: 0x0400EA2E RID: 59950
|
|
[FieldOffset(Offset = "0xD1")]
|
|
[Token(Token = "0x400EA2E")]
|
|
private bool JKAJHDIFAEG;
|
|
|
|
// Token: 0x02003323 RID: 13091
|
|
[Token(Token = "0x2003323")]
|
|
[Serializable]
|
|
public class InputSlotDisplayConfig
|
|
{
|
|
// Token: 0x0601661E RID: 91678 RVA: 0x00533258 File Offset: 0x00531458
|
|
[Token(Token = "0x601661E")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
public InputSlotDisplayConfig()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400EA2F RID: 59951
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400EA2F")]
|
|
public InputSlot InputSlot;
|
|
|
|
// Token: 0x0400EA30 RID: 59952
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400EA30")]
|
|
public CircuitInputConnectionPoint IOSlot;
|
|
}
|
|
|
|
// Token: 0x02003324 RID: 13092
|
|
[Token(Token = "0x2003324")]
|
|
[Serializable]
|
|
public class OutputSlotDisplayConfig
|
|
{
|
|
// Token: 0x0601661F RID: 91679 RVA: 0x0053326C File Offset: 0x0053146C
|
|
[Token(Token = "0x601661F")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
public OutputSlotDisplayConfig()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400EA31 RID: 59953
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400EA31")]
|
|
public OutputSlot OutputSlot;
|
|
|
|
// Token: 0x0400EA32 RID: 59954
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400EA32")]
|
|
public CircuitOutputConnectionPoint IOSlot;
|
|
}
|
|
}
|
|
}
|