Files
Jan2021-Cpp2Il-Dump/Assembly-CSharp/RecRoom/Core/Creation/Circuits/CircuitConnectionScaleController.cs
T
2026-04-08 23:40:05 +02:00

364 lines
14 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Core.Creation.Circuits
{
// Token: 0x02002C56 RID: 11350
[Token(Token = "0x2002C56")]
[StructLayout(3)]
public class CircuitConnectionScaleController : MonoBehaviour
{
// Token: 0x06013FAB RID: 81835 RVA: 0x004CAFE4 File Offset: 0x004C91E4
[Token(Token = "0x6013FAB")]
[Address(RVA = "0x176D090", Offset = "0x176BA90", VA = "0x18176D090")]
private void OnEnable()
{
this.OHAGFAAMIBM();
}
// Token: 0x06013FAC RID: 81836 RVA: 0x004CAFF8 File Offset: 0x004C91F8
[Token(Token = "0x6013FAC")]
[Address(RVA = "0x176C150", Offset = "0x176AB50", VA = "0x18176C150")]
private void Awake()
{
Tool tool = this.tool;
ActionEvent objectDeformed = tool.creationObject.ObjectDeformed;
if (objectDeformed != 0)
{
Action action = new Action(this.OHAGFAAMIBM);
int num = 0;
objectDeformed.Add(action, num != 0);
}
ActionEvent objectScaled = tool.creationObject.ObjectScaled;
if (objectScaled != 0)
{
Action action2 = new Action(this.OHAGFAAMIBM);
int num2 = 0;
objectScaled.Add(action2, num2 != 0);
}
Collider collider = this.connectedBounds;
int num3 = 0;
if (!(collider != num3))
{
SimpleVolume simpleVolume = this.connectedBoundsSimple;
int num4 = 0;
if (!(simpleVolume != num4))
{
goto IL_9F;
}
}
Transform transform = this.connectedBounds.transform;
this.AMLMCPBIEEP = transform;
IL_9F:
Collider collider2 = this.connectedBounds;
int num5 = 0;
if (collider2 == 0 || collider2 != 0)
{
}
Vector3 one = Vector3.one;
Collider collider3 = this.connectedBounds;
int num6 = 0;
if (!(collider3 != num6))
{
SimpleVolume simpleVolume2 = this.connectedBoundsSimple;
int num7 = 0;
if (!(simpleVolume2 != num7))
{
goto IL_FC;
}
SimpleVolume simpleVolume3 = this.connectedBoundsSimple;
}
Collider collider4 = this.connectedBounds;
IL_FC:
Transform amlmcpbieep = this.AMLMCPBIEEP;
Vector3 vector;
float z = vector.z;
this.GJLENLBIICM.z = z;
CircuitConnectionPoint[] componentsInChildren = base.transform.GetComponentsInChildren<CircuitConnectionPoint>(true);
this.CNPNIJHKMDP = componentsInChildren;
int length = componentsInChildren.Length;
if (num5 < length)
{
CircuitConnectionPoint circuitConnectionPoint = componentsInChildren[num5];
num5++;
circuitConnectionPoint.<EIDKPLEAFCJ>k__BackingField = false;
circuitConnectionPoint.<OIKKFPEMFJJ>k__BackingField = 3.1f;
}
Transform amlmcpbieep2 = this.AMLMCPBIEEP;
Vector3 vector2;
float z2 = vector2.z;
this.NNFCCHEDEBN.z = z2;
float lossyUniformScale = base.transform.GetLossyUniformScale();
this.MEFNJEOHGCN = lossyUniformScale;
CircuitConnectionScaleController.AGAGPLFEPLO agagplfeplo = this.HKNBKOEPHKI();
this.JEEFOBCMMJC = agagplfeplo;
Transform transform2 = base.transform;
CircuitConnectionScaleController.CAINCCMGIJB cainccmgijb;
this.ANLFJLAJHGG = cainccmgijb;
Transform transform3 = base.transform;
CircuitConnectionScaleController.CAINCCMGIJB cainccmgijb2;
this.ABFMNNMHOMG = cainccmgijb2;
this.OHAGFAAMIBM();
}
// Token: 0x06013FAD RID: 81837 RVA: 0x004CB1D8 File Offset: 0x004C93D8
[Token(Token = "0x6013FAD")]
[Address(RVA = "0x176C880", Offset = "0x176B280", VA = "0x18176C880")]
private CircuitConnectionScaleController.AGAGPLFEPLO HKNBKOEPHKI()
{
CircuitConnectionPoint[] cnpnijhkmdp = this.CNPNIJHKMDP;
int length = cnpnijhkmdp.Length;
Transform transform = cnpnijhkmdp[1].transform;
Vector3 vector;
float z = vector.z;
Transform transform2 = this.CNPNIJHKMDP[0].transform;
Vector3 vector2;
float z2 = vector2.z;
Vector3 vector3;
float z3 = vector3.z;
Transform transform3 = this.CNPNIJHKMDP[0].transform;
Vector3 vector4;
float z4 = vector4.z;
throw new NullReferenceException();
}
// Token: 0x06013FAE RID: 81838 RVA: 0x004CB258 File Offset: 0x004C9458
[Token(Token = "0x6013FAE")]
[Address(RVA = "0x176C6C0", Offset = "0x176B0C0", VA = "0x18176C6C0")]
private void CFLALAPHNOH()
{
Transform transform = base.transform;
Vector3 vector;
float z = vector.z;
CircuitConnectionScaleController.CAINCCMGIJB cainccmgijb;
this.ANLFJLAJHGG = cainccmgijb;
Transform transform2 = base.transform;
Vector3 vector2;
float z2 = vector2.z;
CircuitConnectionScaleController.CAINCCMGIJB cainccmgijb2;
this.ABFMNNMHOMG = cainccmgijb2;
}
// Token: 0x06013FAF RID: 81839 RVA: 0x004CB29C File Offset: 0x004C949C
[Token(Token = "0x6013FAF")]
[Address(RVA = "0x176BF10", Offset = "0x176A910", VA = "0x18176BF10")]
private CircuitConnectionScaleController.CAINCCMGIJB AAPBKMDHMMO(Vector3 MJGHDCCDCDF, Transform LJFLOJFOHLA)
{
/*
An exception occurred when decompiling this method (06013FAF)
ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Core.Creation.Circuits.CircuitConnectionScaleController/CAINCCMGIJB RecRoom.Core.Creation.Circuits.CircuitConnectionScaleController::AAPBKMDHMMO(UnityEngine.Vector3,UnityEngine.Transform)
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_2D:
stloc:ArgumentOutOfRangeException(var_10_3B, newobj:ArgumentOutOfRangeException(ArgumentOutOfRangeException::.ctor, ldstr:string("axis"), ldloc:CAINCCMGIJB[exp:object](var_9), ldloc:int32[exp:string](var_11)))
stloc:int32(var_11, ldc.i4:int32(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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x06013FB0 RID: 81840 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6013FB0")]
[Address(RVA = "0x176CB00", Offset = "0x176B500", VA = "0x18176CB00")]
private float NOGJEJIGLJO(Vector3 OJJOHDIFMEG, CircuitConnectionScaleController.CAINCCMGIJB GLHHBDHELAO)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06013FB1 RID: 81841 RVA: 0x004CB2E8 File Offset: 0x004C94E8
[Token(Token = "0x6013FB1")]
[Address(RVA = "0x176C770", Offset = "0x176B170", VA = "0x18176C770")]
private Vector3 DAIMLDAHBNF(Transform NOJPOHPCCNG, CircuitConnectionScaleController.CAINCCMGIJB GLHHBDHELAO)
{
Vector3 vector;
float z = vector.z;
throw new NullReferenceException();
}
// Token: 0x06013FB2 RID: 81842 RVA: 0x004CB314 File Offset: 0x004C9514
[Token(Token = "0x6013FB2")]
[Address(RVA = "0x176CD30", Offset = "0x176B730", VA = "0x18176CD30")]
private void OHAGFAAMIBM()
{
Transform amlmcpbieep = this.AMLMCPBIEEP;
int num = 0;
if (!(amlmcpbieep == num))
{
Transform amlmcpbieep2 = this.AMLMCPBIEEP;
float z = this.GJLENLBIICM.z;
Vector3 vector;
float z2 = vector.z;
CircuitConnectionPoint[] cnpnijhkmdp = this.CNPNIJHKMDP;
Vector3 vector2;
float z3 = vector2.z;
int num2 = Mathf.Max(cnpnijhkmdp.Length, 1);
Transform transform = base.transform;
float z4 = this.NNFCCHEDEBN.z;
float z5 = this.NNFCCHEDEBN.z;
CircuitConnectionScaleController.AGAGPLFEPLO jeefobcmmjc = this.JEEFOBCMMJC;
}
}
// Token: 0x06013FB3 RID: 81843 RVA: 0x004CB3A0 File Offset: 0x004C95A0
[Token(Token = "0x6013FB3")]
[Address(RVA = "0x176CB20", Offset = "0x176B520", VA = "0x18176CB20")]
private void OEOCMIGCCEG(Transform JADEFNMNPJA, int PFBGBGMHKIK, float ABOALLDKCFJ, float LHJMLPEJMII, float IIKKBMIKMHF, float AFBPHNDNOKL, CircuitConnectionScaleController.AGAGPLFEPLO FNJKNLMCJNO = CircuitConnectionScaleController.AGAGPLFEPLO.Horizontal)
{
int num = 0;
if (!(JADEFNMNPJA == num))
{
float num2 = Mathf.Clamp(Mathf.Lerp(ABOALLDKCFJ, ABOALLDKCFJ, 0.4f), 0.2f, 3.5f);
JADEFNMNPJA.SetLossyUniformScale(ABOALLDKCFJ);
}
}
// Token: 0x06013FB4 RID: 81844 RVA: 0x004CB3E0 File Offset: 0x004C95E0
[Token(Token = "0x6013FB4")]
[Address(RVA = "0x176CF90", Offset = "0x176B990", VA = "0x18176CF90")]
private void OnDestroy()
{
Tool tool = this.tool;
ActionEvent objectDeformed = tool.creationObject.ObjectDeformed;
if (objectDeformed != 0)
{
Action action = new Action(this.OHAGFAAMIBM);
objectDeformed.Remove(action);
}
ActionEvent objectScaled = tool.creationObject.ObjectScaled;
if (objectScaled != 0)
{
Action action2 = new Action(this.OHAGFAAMIBM);
objectScaled.Remove(action2);
}
}
// Token: 0x06013FB5 RID: 81845 RVA: 0x004CB444 File Offset: 0x004C9644
[Token(Token = "0x6013FB5")]
[Address(RVA = "0x3C1210", Offset = "0x3BFC10", VA = "0x1803C1210")]
public CircuitConnectionScaleController()
{
}
// Token: 0x0400D6F8 RID: 55032
[Token(Token = "0x400D6F8")]
private const float GJMMHGLGLIO = 0.2f;
// Token: 0x0400D6F9 RID: 55033
[Token(Token = "0x400D6F9")]
private const float JEKIMDJLBAE = 3.5f;
// Token: 0x0400D6FA RID: 55034
[Token(Token = "0x400D6FA")]
private const float EPGIIPKANCN = 3.1f;
// Token: 0x0400D6FB RID: 55035
[Token(Token = "0x400D6FB")]
private const float NNLABCNMABN = 0.4f;
// Token: 0x0400D6FC RID: 55036
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400D6FC")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.SelfAndParent, false, false)]
private Tool tool;
// Token: 0x0400D6FD RID: 55037
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400D6FD")]
[SerializeField]
[Tooltip("Collider used to determine circuit connection bounds. Either this field OR the 'connectedBoundsSimple' must be set.")]
private Collider connectedBounds;
// Token: 0x0400D6FE RID: 55038
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400D6FE")]
[SerializeField]
[Tooltip("Simple Volume used to determine circuit connection bounds. Either this field OR the 'connectedBounds' must be set.")]
private SimpleVolume connectedBoundsSimple;
// Token: 0x0400D6FF RID: 55039
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x400D6FF")]
private CircuitConnectionPoint[] CNPNIJHKMDP;
// Token: 0x0400D700 RID: 55040
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x400D700")]
private CircuitConnectionScaleController.CAINCCMGIJB ANLFJLAJHGG;
// Token: 0x0400D701 RID: 55041
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
[Token(Token = "0x400D701")]
private CircuitConnectionScaleController.CAINCCMGIJB ABFMNNMHOMG;
// Token: 0x0400D702 RID: 55042
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x400D702")]
private CircuitConnectionScaleController.AGAGPLFEPLO JEEFOBCMMJC;
// Token: 0x0400D703 RID: 55043
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x400D703")]
private Vector3 GJLENLBIICM;
// Token: 0x0400D704 RID: 55044
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x400D704")]
private Transform AMLMCPBIEEP;
// Token: 0x0400D705 RID: 55045
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x400D705")]
private Vector3 NNFCCHEDEBN;
// Token: 0x0400D706 RID: 55046
[global::Cpp2IlInjected.FieldOffset(Offset = "0x64")]
[Token(Token = "0x400D706")]
private float MEFNJEOHGCN;
// Token: 0x02002C57 RID: 11351
[Token(Token = "0x2002C57")]
private enum CAINCCMGIJB
{
// Token: 0x0400D708 RID: 55048
[Token(Token = "0x400D708")]
X,
// Token: 0x0400D709 RID: 55049
[Token(Token = "0x400D709")]
Y,
// Token: 0x0400D70A RID: 55050
[Token(Token = "0x400D70A")]
Z,
// Token: 0x0400D70B RID: 55051
[Token(Token = "0x400D70B")]
Num
}
// Token: 0x02002C58 RID: 11352
[Token(Token = "0x2002C58")]
private enum AGAGPLFEPLO
{
// Token: 0x0400D70D RID: 55053
[Token(Token = "0x400D70D")]
Vertical,
// Token: 0x0400D70E RID: 55054
[Token(Token = "0x400D70E")]
Horizontal
}
}
}