using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using CircuitsV2.Utilities; using Cpp2IlInjected; using RecRoom.CircuitsV2.Adapter; using RecRoom.CircuitsV2.Config; using TMPro; using UnityEngine; namespace RecRoom.CircuitsV2.Experience { // Token: 0x0200235B RID: 9051 [Token(Token = "0x200235B")] [Serializable] [StructLayout(3)] public sealed class PortView { // Token: 0x17002A2A RID: 10794 // (get) Token: 0x0600FA84 RID: 64132 RVA: 0x003AF77C File Offset: 0x003AD97C [Token(Token = "0x17002A2A")] public TextMeshPro Text { [Token(Token = "0x600FA84")] [Address(RVA = "0x3C39A0", Offset = "0x3C23A0", VA = "0x1803C39A0")] get { return this.text; } } // Token: 0x17002A2B RID: 10795 // (get) Token: 0x0600FA85 RID: 64133 RVA: 0x003AF790 File Offset: 0x003AD990 [Token(Token = "0x17002A2B")] public TextMeshPro DefaultValueText { [Token(Token = "0x600FA85")] [Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")] get { return this.defaultValueText; } } // Token: 0x17002A2C RID: 10796 // (get) Token: 0x0600FA86 RID: 64134 RVA: 0x003AF7A4 File Offset: 0x003AD9A4 // (set) Token: 0x0600FA87 RID: 64135 RVA: 0x003AF7B8 File Offset: 0x003AD9B8 [Token(Token = "0x17002A2C")] public float LayoutWidth { [Token(Token = "0x600FA86")] [Address(RVA = "0x12005C0", Offset = "0x11FEFC0", VA = "0x1812005C0")] get; [Token(Token = "0x600FA87")] [Address(RVA = "0xF61A90", Offset = "0xF60490", VA = "0x180F61A90")] private set; } // Token: 0x17002A2D RID: 10797 // (get) Token: 0x0600FA88 RID: 64136 RVA: 0x003AF7CC File Offset: 0x003AD9CC [Token(Token = "0x17002A2D")] private MaterialPropertyBlock DefaultValueMaterialPropertyBlock { [Token(Token = "0x600FA88")] [Address(RVA = "0x16768E0", Offset = "0x16752E0", VA = "0x1816768E0")] get { MaterialPropertyBlock defaultValueMaterialPropertyBlock = this._defaultValueMaterialPropertyBlock; if (defaultValueMaterialPropertyBlock == 0) { MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock; } return defaultValueMaterialPropertyBlock; } } // Token: 0x17002A2E RID: 10798 // (get) Token: 0x0600FA89 RID: 64137 RVA: 0x003AF7F4 File Offset: 0x003AD9F4 [Token(Token = "0x17002A2E")] private MaterialPropertyBlock PortMaterialPropertyBlock { [Token(Token = "0x600FA89")] [Address(RVA = "0x1676940", Offset = "0x1675340", VA = "0x181676940")] get { MaterialPropertyBlock portMaterialPropertyBlock = this._portMaterialPropertyBlock; if (portMaterialPropertyBlock == 0) { MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock(); this._portMaterialPropertyBlock = materialPropertyBlock; } return portMaterialPropertyBlock; } } // Token: 0x0600FA8A RID: 64138 RVA: 0x003AF81C File Offset: 0x003ADA1C [Token(Token = "0x600FA8A")] [Address(RVA = "0x16751A0", Offset = "0x1673BA0", VA = "0x1816751A0")] public void GFBIJNLKLCM(CircuitsV2Config OJAIGECECGI, ChipConfig JNDKCJKANCC, KPJGIJKKILH HHJDJHPGAIK, Port DMGBJCPEJFI, IOKind BIKMGAPACLK) { if (this.IDOBFNPFBDI()) { this.portGameObject = 0; TypeConfig typeConfig; this.NAKOLNBLHMG(OJAIGECECGI, HHJDJHPGAIK, typeConfig); bool flag; this.KPMIOKDMFMO(HHJDJHPGAIK, typeConfig, flag); this.GOAIJALKJAD(HHJDJHPGAIK, flag); this.FABCHIFFIDI(OJAIGECECGI, HHJDJHPGAIK); } } // Token: 0x0600FA8B RID: 64139 RVA: 0x003AF864 File Offset: 0x003ADA64 [Token(Token = "0x600FA8B")] [Address(RVA = "0x1675500", Offset = "0x1673F00", VA = "0x181675500")] private bool IDOBFNPFBDI() { TextMeshPro textMeshPro = this.text; int num = 0; bool flag = textMeshPro != num; if (DebugTool.AssertDbg(flag, "Null text found in PortView.", LogFlag.All, LogLevel.Error)) { TextMeshPro textMeshPro2 = this.defaultValueText; int num2 = 0; int num3 = 0; if (DebugTool.AssertDbg(textMeshPro2 != num3, "Null defaultValueText found in PortView.", (LogFlag)num2, (LogLevel)((uint)2))) { GameObject gameObject = this.meshParent; int num4 = 0; int num5 = 0; if (DebugTool.AssertDbg(gameObject != num5, "Null meshParent found in PortView.", (LogFlag)num4, (LogLevel)((uint)2))) { IEnumerable[] array = new IEnumerable[3]; MeshFilterAndRenderer[] array2 = this.portComponents; if (array2 != 0) { } array[0] = array2; MeshFilterAndRenderer[] array3 = this.plugComponents; if (array3 != 0) { } array[1] = array3; MeshFilterAndRenderer[] array4 = this.defaultValueComponents; if (array4 != 0) { } array[2] = array4; IEnumerable enumerable = EnumerableExtensions.Concat(array); if (PortView.<>c.<>9__24_0 == 0) { PortView.<>c.<>9__24_0 = delegate(bool acc, MeshFilterAndRenderer curr) { if (!acc) { } bool flag2; if (!flag2) { } int num6 = 0; bool flag3; return DebugTool.AssertDbg(flag3, "Null MeshFilter or MeshRenderer found in PortView.", (LogFlag)num6, (LogLevel)((uint)2)); }; } } } } throw new ArrayTypeMismatchException(); } // Token: 0x0600FA8C RID: 64140 RVA: 0x003AF968 File Offset: 0x003ADB68 [Token(Token = "0x600FA8C")] [Address(RVA = "0x1676440", Offset = "0x1674E40", VA = "0x181676440")] private void NAKOLNBLHMG(CircuitsV2Config OJAIGECECGI, KPJGIJKKILH FEGCHFPGAGN, TypeConfig OBEDJMDEFKA) { int num; do { num = 0; if (Enumerable.Any(OBEDJMDEFKA.valueMeshOverrides)) { } if (Enumerable.Any(OBEDJMDEFKA.valuePlugMeshOverrides)) { } if (Enumerable.Any(OBEDJMDEFKA.referenceMeshOverrides)) { } Mesh[] referencePlugMeshOverrides = OBEDJMDEFKA.referencePlugMeshOverrides; if (Enumerable.Any(referencePlugMeshOverrides)) { } MeshFilterAndRenderer[] array = this.portComponents; IEnumerable enumerable = referencePlugMeshOverrides.APOIPHCBOOM(array); MeshFilterAndRenderer[] array2 = this.plugComponents; IEnumerable enumerable2 = referencePlugMeshOverrides.APOIPHCBOOM(array2); IEnumerable> enumerable3 = Enumerable.Concat>(enumerable, enumerable2); Func, ValueTuple> func; if (PortView.<>c.<>9__25_0 == 0) { func = delegate(ValueTuple i) { }; PortView.<>c.<>9__25_0 = func; } IEnumerable> enumerable4 = Enumerable.Select, ValueTuple>(enumerable3, func); if (enumerable4 != 0) { if (num < enumerable4) { num += num; if (num == enumerable4) { goto IL_B4; } num++; } bool flag; while (flag) { } bool flag2; while (flag2) { } IL_B4: enumerable3 += enumerable3; } if (enumerable4 != 0) { } if (num != -1) { } } while (num != 0); DebugTool.FailDbg("Unknown ReadWriteKind when setting PortView meshes.", LogFlag.All, LogLevel.Error); } // Token: 0x0600FA8D RID: 64141 RVA: 0x003AFA54 File Offset: 0x003ADC54 [Token(Token = "0x600FA8D")] [Address(RVA = "0x1675AC0", Offset = "0x16744C0", VA = "0x181675AC0")] private void KPMIOKDMFMO(KPJGIJKKILH FEGCHFPGAGN, TypeConfig OBEDJMDEFKA, bool CIIHCCEABFG) { for (;;) { int num = 0; if (FEGCHFPGAGN == 0) { MaterialPropertyBlock portMaterialPropertyBlock = this._portMaterialPropertyBlock; if (portMaterialPropertyBlock == 0) { MaterialPropertyBlock materialPropertyBlock = new MaterialPropertyBlock(); this._portMaterialPropertyBlock = materialPropertyBlock; } GKNLAPDADHL.EGDIIHLOHGA(OBEDJMDEFKA, portMaterialPropertyBlock); MaterialPropertyBlock materialPropertyBlock2; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock2 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock2; } GKNLAPDADHL.EGDIIHLOHGA(OBEDJMDEFKA, materialPropertyBlock2); } MaterialPropertyBlock portMaterialPropertyBlock2 = this._portMaterialPropertyBlock; if (portMaterialPropertyBlock2 == 0) { MaterialPropertyBlock materialPropertyBlock3 = new MaterialPropertyBlock(); this._portMaterialPropertyBlock = materialPropertyBlock3; } GKNLAPDADHL.ICKKHEBJALL(OBEDJMDEFKA, portMaterialPropertyBlock2); MaterialPropertyBlock materialPropertyBlock4; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock4 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock4; } GKNLAPDADHL.ICKKHEBJALL(OBEDJMDEFKA, materialPropertyBlock4); IEnumerable[] array = new IEnumerable[2]; MeshFilterAndRenderer[] array2 = this.portComponents; if (array2 != 0) { } array[0] = array2; MeshFilterAndRenderer[] array3 = this.plugComponents; if (array3 != 0) { } array[1] = array3; IEnumerable enumerable = EnumerableExtensions.Concat(array); Func func; if (PortView.<>c.<>9__26_0 == 0) { func = delegate(MeshFilterAndRenderer i) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); }; PortView.<>c.<>9__26_0 = func; } IEnumerable enumerable2 = Enumerable.Select(enumerable, func); MeshFilterAndRenderer[] array4 = this.defaultValueComponents; Func func2; if (PortView.<>c.<>9__26_1 == 0) { func2 = delegate(MeshFilterAndRenderer i) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); }; PortView.<>c.<>9__26_1 = func2; } IEnumerable enumerable3 = Enumerable.Select(array4, func2); if (enumerable3 != 0) { if (num >= enumerable3) { goto IL_13C; } num += num; if (num != enumerable3) { num++; goto IL_13C; } IL_154: MaterialPropertyBlock materialPropertyBlock5; materialPropertyBlock5 += materialPropertyBlock5; goto IL_15B; IL_13C: if (this._portMaterialPropertyBlock == 0) { materialPropertyBlock5 = new MaterialPropertyBlock(); this._portMaterialPropertyBlock = materialPropertyBlock5; goto IL_154; } goto IL_154; } IL_15B: int num2 = 0; if (enumerable3 != 0) { } MaterialPropertyBlock materialPropertyBlock6; if (num != -1) { if (num2 < enumerable3) { num2 += num2; num2++; } int num3 = 0; if (num == 0) { goto IL_1C8; } if (num2 < num3) { num2 += num2; if (num2 == num3) { goto IL_1C1; } num2++; } if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock6 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock6; } } if (num2 == 0) { materialPropertyBlock6 += materialPropertyBlock6; goto IL_1C1; } continue; IL_1C8: num++; if (num != 0) { } if (num != -1) { } if (num2 == 0) { break; } continue; IL_1C1: materialPropertyBlock6 += materialPropertyBlock6; goto IL_1C8; } } // Token: 0x0600FA8E RID: 64142 RVA: 0x003AFC44 File Offset: 0x003ADE44 [Token(Token = "0x600FA8E")] [Address(RVA = "0x16745B0", Offset = "0x1672FB0", VA = "0x1816745B0")] private void BNEDNOBNEHK(PODGPJPDGJK GEDCEIDOKJL) { GameObject gameObject = this.arrayIcon; } // Token: 0x0600FA8F RID: 64143 RVA: 0x003AFC60 File Offset: 0x003ADE60 [Token(Token = "0x600FA8F")] [Address(RVA = "0x1675340", Offset = "0x1673D40", VA = "0x181675340")] private void GOAIJALKJAD(KPJGIJKKILH FEGCHFPGAGN, bool CIIHCCEABFG) { this.defaultValueText.gameObject.SetActive(CIIHCCEABFG); this.portGameObject.connectionPoint.defaultValueCollider.SetEnabled(CIIHCCEABFG); MeshFilterAndRenderer[] array = this.defaultValueComponents; int num = 0; int length = array.Length; if (num < length) { num += 2; num += num; GameObject gameObject; gameObject.SetActive(CIIHCCEABFG); num++; } int length2 = this.plugComponents.Length; if (num < length2) { num += 2; num += num; GameObject gameObject2; gameObject2.SetActive(length != 0); num++; } } // Token: 0x0600FA90 RID: 64144 RVA: 0x003AFCE8 File Offset: 0x003ADEE8 [Token(Token = "0x600FA90")] [Address(RVA = "0x1674620", Offset = "0x1673020", VA = "0x181674620")] private void FABCHIFFIDI(CircuitsV2Config OJAIGECECGI, KPJGIJKKILH FEGCHFPGAGN) { int num; do { num = 0; if (num < FEGCHFPGAGN) { num += num; num++; } bool flag; if (!flag) { break; } TextMeshPro textMeshPro = this.defaultValueText; Mesh[] defaultValueMeshes = OJAIGECECGI.defaultValueMeshes; Mesh mesh = Enumerable.First(defaultValueMeshes); Bounds bounds = defaultValueMeshes.bounds; float num2 = this.defaultValueText.CCOFEOGJKLF(); int num3 = 0; float num4 = Math.Max(num2, (float)num3); MeshFilterAndRenderer[] array = this.defaultValueComponents; IEnumerable enumerable = OJAIGECECGI.defaultValueMeshes.APOIPHCBOOM(array); Func, ValueTuple> func; if (PortView.<>c.<>9__29_0 == 0) { func = delegate(ValueTuple i) { }; PortView.<>c.<>9__29_0 = func; } IEnumerable> enumerable2 = Enumerable.Select, ValueTuple>(enumerable, func); BoxCollider defaultValueCollider = this.portGameObject.connectionPoint.defaultValueCollider; BoxCollider defaultValueCollider2 = this.portGameObject.connectionPoint.defaultValueCollider; Transform transform = this.meshParent.transform; ChipConnectionPoint connectionPoint = this.portGameObject.connectionPoint; Vector3 zero = Vector3.zero; MaterialPropertyBlock materialPropertyBlock; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock; } int dkkijbdpkig = PAMNDKEGFFG.DKKIJBDPKIG; int num5 = 0; materialPropertyBlock.SetVector(dkkijbdpkig, num5); MaterialPropertyBlock materialPropertyBlock2; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock2 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock2; } int hkjnfikdcph = PAMNDKEGFFG.HKJNFIKDCPH; int num6 = 0; materialPropertyBlock2.SetVector(hkjnfikdcph, num6); MaterialPropertyBlock materialPropertyBlock3; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock3 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock3; } int llkodmjmekf = PAMNDKEGFFG.LLKODMJMEKF; int num7 = 0; materialPropertyBlock3.SetVector(llkodmjmekf, num7); MaterialPropertyBlock materialPropertyBlock4; if (this._defaultValueMaterialPropertyBlock == 0) { materialPropertyBlock4 = new MaterialPropertyBlock(); this._defaultValueMaterialPropertyBlock = materialPropertyBlock4; } int jlahcmbeghn = PAMNDKEGFFG.JLAHCMBEGHN; int num8 = 0; materialPropertyBlock4.SetVector(jlahcmbeghn, num8); Vector4 vector; if (vector != 0) { if (num >= vector) { goto IL_1A1; } num += num; if (num != vector) { num++; goto IL_1A1; } IL_1DA: Transform transform2; transform2 += transform2; float num9; num9 += 2.7E-44f; goto IL_1EB; IL_1A1: MaterialPropertyBlock defaultValueMaterialPropertyBlock = this.DefaultValueMaterialPropertyBlock; transform2 = this.meshParent.transform; Vector3 vector2; num9 = vector2.z; transform2 += transform2; num9 += 2.5E-44f; num9 += 2.7E-44f; goto IL_1DA; } IL_1EB: if (vector != 0) { } if (num != -1) { } } while (num != 0); } // Token: 0x0600FA91 RID: 64145 RVA: 0x003AFF10 File Offset: 0x003AE110 [Token(Token = "0x600FA91")] [Address(RVA = "0x1674280", Offset = "0x1672C80", VA = "0x181674280")] private void AFOOOFNLNNA(CircuitsV2Config OJAIGECECGI, ChipConfig JNDKCJKANCC, KPJGIJKKILH HHJDJHPGAIK, Port DMGBJCPEJFI, IOKind BIKMGAPACLK, TypeConfig OBEDJMDEFKA) { Transform transform = this.meshParent.transform; int num = 0; Vector3 up = Vector3.up; transform.localRotation = num; TextMeshPro textMeshPro = this.text; float num2 = this.text.CCOFEOGJKLF(); Transform transform2 = this.text.transform; TextMeshPro textMeshPro2 = this.text; this.k__BackingField = num2; RectTransform rectTransform = textMeshPro2.rectTransform; TextMeshPro textMeshPro3 = this.text; int num3 = 0; textMeshPro3.rectTransform.localPosition = num3; } // Token: 0x0600FA92 RID: 64146 RVA: 0x003AFF94 File Offset: 0x003AE194 [Token(Token = "0x600FA92")] [Address(RVA = "0x16759B0", Offset = "0x16743B0", VA = "0x1816759B0")] public void KFOIOAKJKHH(CircuitsV2Config OJAIGECECGI, KPJGIJKKILH FEGCHFPGAGN, IOKind BIKMGAPACLK) { TypeConfig typeConfig; this.NAKOLNBLHMG(OJAIGECECGI, FEGCHFPGAGN, typeConfig); bool flag; this.KPMIOKDMFMO(FEGCHFPGAGN, typeConfig, flag); this.GOAIJALKJAD(FEGCHFPGAGN, flag); } // Token: 0x0600FA93 RID: 64147 RVA: 0x003AFFC4 File Offset: 0x003AE1C4 [Token(Token = "0x600FA93")] [Address(RVA = "0x16762B0", Offset = "0x1674CB0", VA = "0x1816762B0")] public void MDKFCBPFJEJ(CircuitsV2Config OJAIGECECGI, KPJGIJKKILH FEGCHFPGAGN, IOKind BIKMGAPACLK) { TypeConfig typeConfig; this.NAKOLNBLHMG(OJAIGECECGI, FEGCHFPGAGN, typeConfig); bool flag; this.arrayIcon.SetActive(flag); this.KPMIOKDMFMO(FEGCHFPGAGN, typeConfig, flag); this.GOAIJALKJAD(FEGCHFPGAGN, flag); this.FABCHIFFIDI(OJAIGECECGI, FEGCHFPGAGN); } // Token: 0x0600FA94 RID: 64148 RVA: 0x003B0008 File Offset: 0x003AE208 [Token(Token = "0x600FA94")] [Address(RVA = "0x1674270", Offset = "0x1672C70", VA = "0x181674270")] public void AENNHPAONCL(CircuitsV2Config OJAIGECECGI, KPJGIJKKILH FEGCHFPGAGN) { this.FABCHIFFIDI(OJAIGECECGI, FEGCHFPGAGN); } // Token: 0x0600FA95 RID: 64149 RVA: 0x003B0020 File Offset: 0x003AE220 [Token(Token = "0x600FA95")] [Address(RVA = "0x1675880", Offset = "0x1674280", VA = "0x181675880")] public Renderer[] INHJALEHCBK() { Renderer[] array = new Renderer[2]; MeshFilterAndRenderer meshFilterAndRenderer = this.portComponents[1]; if (meshFilterAndRenderer != 0) { } array[0] = meshFilterAndRenderer; MeshFilterAndRenderer meshFilterAndRenderer2 = this.plugComponents[1]; if (meshFilterAndRenderer2 != 0) { } array[1] = meshFilterAndRenderer2; return array; } // Token: 0x0600FA96 RID: 64150 RVA: 0x003B0070 File Offset: 0x003AE270 [Token(Token = "0x600FA96")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public PortView() { } // Token: 0x0400A6EC RID: 42732 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400A6EC")] [SerializeField] private TextMeshPro text; // Token: 0x0400A6ED RID: 42733 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400A6ED")] [SerializeField] private TextMeshPro defaultValueText; // Token: 0x0400A6EE RID: 42734 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400A6EE")] [SerializeField] private GameObject meshParent; // Token: 0x0400A6EF RID: 42735 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400A6EF")] [SerializeField] private MeshFilterAndRenderer[] portComponents; // Token: 0x0400A6F0 RID: 42736 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x400A6F0")] [SerializeField] private MeshFilterAndRenderer[] plugComponents; // Token: 0x0400A6F1 RID: 42737 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x400A6F1")] [SerializeField] private MeshFilterAndRenderer[] defaultValueComponents; // Token: 0x0400A6F2 RID: 42738 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x400A6F2")] [SerializeField] private GameObject arrayIcon; // Token: 0x0400A6F3 RID: 42739 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x400A6F3")] private string lastDefaultValueText; // Token: 0x0400A6F5 RID: 42741 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x400A6F5")] private MaterialPropertyBlock _defaultValueMaterialPropertyBlock; // Token: 0x0400A6F6 RID: 42742 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x400A6F6")] private MaterialPropertyBlock _portMaterialPropertyBlock; // Token: 0x0400A6F7 RID: 42743 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x400A6F7")] private Port portGameObject; } }