using System; using System.Collections.Generic; using System.Linq; using Cpp2IlInjected; using RecRoom.Core.Creation; using RecRoom.Core.Creation.SandboxGizmos; // Token: 0x0200308A RID: 12426 [Token(Token = "0x200308A")] public class LJMLMMHFHIK : IDisposable { // Token: 0x17003A63 RID: 14947 // (get) Token: 0x060152AF RID: 86703 RVA: 0x004F4218 File Offset: 0x004F2418 [Token(Token = "0x17003A63")] public Dictionary> ILEJOBCBIOC { [Token(Token = "0x60152AF")] [Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")] get { return this.KBCECDIIIAI; } } // Token: 0x060152B0 RID: 86704 RVA: 0x004F422C File Offset: 0x004F242C [Token(Token = "0x60152B0")] [Address(RVA = "0x121C760", Offset = "0x121B560", VA = "0x18121C760")] public LJMLMMHFHIK(CreationContext LHOMKMINCHH) { Dictionary> dictionary = new Dictionary(); this.KBCECDIIIAI = dictionary; HashSet hashSet = new HashSet(); this.IHMGLJEGMPP = hashSet; HashSet hashSet2 = new HashSet(); this.OJEKPFCMLKC = hashSet2; HashSet hashSet3 = new HashSet(); this.DNAOIAPLHCJ = hashSet3; base..ctor(); this.LHOMKMINCHH = LHOMKMINCHH; } // Token: 0x17003A64 RID: 14948 // (get) Token: 0x060152B1 RID: 86705 RVA: 0x004F427C File Offset: 0x004F247C [Token(Token = "0x17003A64")] private bool MEBGJGNMIMG { [Token(Token = "0x60152B1")] [Address(RVA = "0x121C0B0", Offset = "0x121AEB0", VA = "0x18121C0B0")] get { return this.KBCECDIIIAI.Count == 0; } } // Token: 0x060152B2 RID: 86706 RVA: 0x004F42A0 File Offset: 0x004F24A0 [Token(Token = "0x60152B2")] [Address(RVA = "0x121C360", Offset = "0x121B160", VA = "0x18121C360")] private void OAIHBKFMECE(SandboxGizmo HJLGBOBFHPO) { bool flag = this.KBCECDIIIAI.Remove(HJLGBOBFHPO); CreationObject creationObject = HJLGBOBFHPO.PBBJCLJPFMI.creationObject; MFBGLIHGCGO lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent; Action action = new Action(this.BDDBGMIHLPP); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(lockedStatusChangedEvent, action); creationObject.LockedStatusChangedEvent = mfbglihgcgo; CreationObject creationObject2 = HJLGBOBFHPO.PBBJCLJPFMI.creationObject; Action action2 = new Action(this.IKHIDEALCLF); creationObject2.AuthorityChangedEvent -= action2; CreationObject creationObject3 = HJLGBOBFHPO.PBBJCLJPFMI.creationObject; LIMDPCEOFDK fllendbikgf = creationObject3.FLLENDBIKGF; AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF; if (creationObject3 == agajmbpabdl.INPOAAAOAHI) { LIMDPCEOFDK fllendbikgf2 = HJLGBOBFHPO.PBBJCLJPFMI.creationObject.FLLENDBIKGF; } } // Token: 0x060152B3 RID: 86707 RVA: 0x004F4354 File Offset: 0x004F2554 [Token(Token = "0x60152B3")] [Address(RVA = "0x121AFB0", Offset = "0x1219DB0", VA = "0x18121AFB0")] public void CDGCNMDFGIM(MIGCNEPBKDG EIBGAMMHGBB) { int num; bool flag; do { num = 0; if (!this.DNAOIAPLHCJ.Add(EIBGAMMHGBB)) { return; } flag = this.KBCECDIIIAI.Count == 0; HashSet ojekpfcmlkc = this.OJEKPFCMLKC; bool flag2; if (flag2) { Dictionary> kbcecdiiiai = this.KBCECDIIIAI; bool flag3; if (!flag3) { HashSet hashSet = new HashSet(); Dictionary> kbcecdiiiai2 = this.KBCECDIIIAI; } Tool tool; LIMDPCEOFDK fllendbikgf = tool.creationObject.FLLENDBIKGF; } } while (num != 0); if (flag && this.KBCECDIIIAI.Count != 0) { SandboxConnectableManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; IILCGFIHJLP onConnectionAdded = instance.OnConnectionAdded; Action action = new Action(this.GIPLJDEGBMO); IILCGFIHJLP iilcgfihjlp = IILCGFIHJLP.BPJDFPACLMK(onConnectionAdded, action); instance.OnConnectionAdded = iilcgfihjlp; SandboxConnectableManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; IILCGFIHJLP onConnectionRemoved = instance2.OnConnectionRemoved; Action action2 = new Action(this.NCPJLDDPMDF); IILCGFIHJLP iilcgfihjlp2 = IILCGFIHJLP.BPJDFPACLMK(onConnectionRemoved, action2); instance2.OnConnectionRemoved = iilcgfihjlp2; SandboxConnectableManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; AAPEGDHKHJI onConnectableReparented = instance3.OnConnectableReparented; Action action3 = new Action(this.ADNKNENBNPI); AAPEGDHKHJI aapegdhkhji = AAPEGDHKHJI.BPJDFPACLMK(onConnectableReparented, action3); instance3.OnConnectableReparented = aapegdhkhji; } } // Token: 0x060152B4 RID: 86708 RVA: 0x004F449C File Offset: 0x004F269C [Token(Token = "0x60152B4")] [Address(RVA = "0x121BD70", Offset = "0x121AB70", VA = "0x18121BD70")] public void KCIPHFDLPJC(MIGCNEPBKDG EIBGAMMHGBB) { int num; bool flag; do { num = 0; if (!this.DNAOIAPLHCJ.Remove(EIBGAMMHGBB)) { return; } flag = this.KBCECDIIIAI.Count == 0; HashSet ojekpfcmlkc = this.OJEKPFCMLKC; bool flag2; if (flag2) { Dictionary> kbcecdiiiai = this.KBCECDIIIAI; bool flag3; while (!flag3) { } bool flag4; while (!flag4) { } } } while (num != 0); if (this.KBCECDIIIAI.Count == 0 && !flag) { SandboxConnectableManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; IILCGFIHJLP onConnectionAdded = instance.OnConnectionAdded; Action action = new Action(this.GIPLJDEGBMO); IILCGFIHJLP iilcgfihjlp = IILCGFIHJLP.GMNMHGMFGOL(onConnectionAdded, action); instance.OnConnectionAdded = iilcgfihjlp; SandboxConnectableManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; IILCGFIHJLP onConnectionRemoved = instance2.OnConnectionRemoved; Action action2 = new Action(this.NCPJLDDPMDF); IILCGFIHJLP iilcgfihjlp2 = IILCGFIHJLP.GMNMHGMFGOL(onConnectionRemoved, action2); instance2.OnConnectionRemoved = iilcgfihjlp2; } } // Token: 0x060152B5 RID: 86709 RVA: 0x004F457C File Offset: 0x004F277C [Token(Token = "0x60152B5")] [Address(RVA = "0x121AEE0", Offset = "0x1219CE0", VA = "0x18121AEE0")] private void ADNKNENBNPI(MIGCNEPBKDG GOAFEHIKNJI, MIGCNEPBKDG ICJLNPKIMKH, MIGCNEPBKDG BILNOAONIHA, bool ELDLFHPEIJJ) { this.HGJCGPIFEPM(GOAFEHIKNJI); this.HGJCGPIFEPM(BILNOAONIHA); } // Token: 0x060152B6 RID: 86710 RVA: 0x004F4598 File Offset: 0x004F2798 [Token(Token = "0x60152B6")] [Address(RVA = "0x121BC50", Offset = "0x121AA50", VA = "0x18121BC50")] private void GIPLJDEGBMO(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC) { this.HGJCGPIFEPM(HICENEOPGOF); this.HGJCGPIFEPM(MLDKMIGAPEC); } // Token: 0x060152B7 RID: 86711 RVA: 0x004F45B4 File Offset: 0x004F27B4 [Token(Token = "0x60152B7")] [Address(RVA = "0x121BC50", Offset = "0x121AA50", VA = "0x18121BC50")] private void NCPJLDDPMDF(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC) { this.HGJCGPIFEPM(HICENEOPGOF); this.HGJCGPIFEPM(MLDKMIGAPEC); } // Token: 0x060152B8 RID: 86712 RVA: 0x004F45D0 File Offset: 0x004F27D0 [Token(Token = "0x60152B8")] [Address(RVA = "0x121BC80", Offset = "0x121AA80", VA = "0x18121BC80")] private void HGJCGPIFEPM(MIGCNEPBKDG EIBGAMMHGBB) { if (EIBGAMMHGBB != 0) { HashSet hashSet = new HashSet(this.IHMGLJEGMPP); HashSet dnaoiaplhcj = this.DNAOIAPLHCJ; hashSet.IntersectWith(dnaoiaplhcj); HashSet ojekpfcmlkc = this.OJEKPFCMLKC; this.EKNLFAAGGPD(ojekpfcmlkc, hashSet); } } // Token: 0x060152B9 RID: 86713 RVA: 0x004F4610 File Offset: 0x004F2810 [Token(Token = "0x60152B9")] [Address(RVA = "0x121B7E0", Offset = "0x121A5E0", VA = "0x18121B7E0")] private void EKNLFAAGGPD(IEnumerable BDIEKCDCNHG, HashSet HKKNLAGDMEC) { int num2; for (;;) { int num = 0; if (num >= HKKNLAGDMEC) { goto IL_12; } num += num; if (num != HKKNLAGDMEC) { num++; goto IL_12; } IL_1A: Dictionary> kbcecdiiiai = this.KBCECDIIIAI; bool flag; if (flag) { } HashSet hashSet = new HashSet(); Dictionary> kbcecdiiiai2 = this.KBCECDIIIAI; Tool tool; CreationObject creationObject = tool.creationObject; MFBGLIHGCGO lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent; Action action = new Action(this.BDDBGMIHLPP); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(lockedStatusChangedEvent, action); creationObject.LockedStatusChangedEvent = mfbglihgcgo; Tool tool2; CreationObject creationObject2 = tool2.creationObject; Action action2 = new Action(this.IKHIDEALCLF); creationObject2.AuthorityChangedEvent += action2; Tool tool3; LIMDPCEOFDK fllendbikgf = tool3.creationObject.FLLENDBIKGF; num2 = 0; if (num2 < typeof(LIMDPCEOFDK).TypeHandle) { num2 += num2; num2++; } if (action2 == 0) { break; } continue; IL_12: num += num; num++; goto IL_1A; } num2 += 19; num2 += typeof(IEnumerator).TypeHandle; } // Token: 0x060152BA RID: 86714 RVA: 0x004F4740 File Offset: 0x004F2940 [Token(Token = "0x60152BA")] [Address(RVA = "0x121C100", Offset = "0x121AF00", VA = "0x18121C100")] private static void MIIIDDLOOBO(MIGCNEPBKDG EIBGAMMHGBB, ref HashSet MONOCCGECEL, ref HashSet BDIEKCDCNHG) { int num; do { num = 0; NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.FindAllConnectablesConnectedTo(EIBGAMMHGBB, ref MONOCCGECEL); bool flag; if (flag) { num += num; num++; int num2 = 0; SandboxGizmo sandboxGizmo; if (!(sandboxGizmo != num2)) { continue; } sandboxGizmo += sandboxGizmo; } } while (num != 0); } // Token: 0x060152BB RID: 86715 RVA: 0x004F4790 File Offset: 0x004F2990 [Token(Token = "0x60152BB")] [Address(RVA = "0x121BD40", Offset = "0x121AB40", VA = "0x18121BD40")] private void IKHIDEALCLF(AGAJMBPABDL HIBNOIKDDAC) { if (HIBNOIKDDAC != 0 && !HIBNOIKDDAC.DMKCIEPGGAB) { this.LHOMKMINCHH.RemoveAllFromSelection(); return; } } // Token: 0x060152BC RID: 86716 RVA: 0x004F47BC File Offset: 0x004F29BC [Token(Token = "0x60152BC")] [Address(RVA = "0x121AF10", Offset = "0x1219D10", VA = "0x18121AF10")] private void BDDBGMIHLPP(CreationObject NLNHFEEMFBN) { LIMDPCEOFDK fllendbikgf = NLNHFEEMFBN.FLLENDBIKGF; AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF; if (NLNHFEEMFBN != agajmbpabdl.INPOAAAOAHI) { this.LHOMKMINCHH.RemoveAllFromSelection(); } } // Token: 0x060152BD RID: 86717 RVA: 0x004F47F4 File Offset: 0x004F29F4 [Token(Token = "0x60152BD")] [Address(RVA = "0x121C560", Offset = "0x121B360", VA = "0x18121C560")] public GBDECALBCOP PANGCDDGMLG(CreationObject EOJKOIGNHPJ) { int num; bool flag; Tool tool; do { num = 0; ConnectableTool connectableTool = EOJKOIGNHPJ.tool.connectableTool; int num2 = 0; if (!(connectableTool != num2)) { goto IL_38; } HashSet ojekpfcmlkc = this.OJEKPFCMLKC; } while ((flag && tool.NHPPANGAKAP) || num != 0); if (num != -1) { } IL_38: throw new NullReferenceException(); } // Token: 0x060152BE RID: 86718 RVA: 0x004F484C File Offset: 0x004F2A4C [Token(Token = "0x60152BE")] [Address(RVA = "0x121B400", Offset = "0x121A200", VA = "0x18121B400", Slot = "4")] public void Dispose() { int num; do { num = 0; List list = Enumerable.ToList(this.KBCECDIIIAI.Keys); bool flag; if (flag) { Tool tool; CreationObject creationObject = tool.creationObject; MFBGLIHGCGO lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent; Action action = new Action(this.BDDBGMIHLPP); MFBGLIHGCGO mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(lockedStatusChangedEvent, action); creationObject.LockedStatusChangedEvent = mfbglihgcgo; Tool tool2; CreationObject creationObject2 = tool2.creationObject; Action action2 = new Action(this.IKHIDEALCLF); int num2 = 0; creationObject2.AuthorityChangedEvent -= action2; Tool tool3; LIMDPCEOFDK fllendbikgf = tool3.creationObject.FLLENDBIKGF; if (num < num2) { num += num; num++; } num += 6; num += 19; } } while (num != 0); SandboxConnectableManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; int num3 = 0; if (instance != num3) { IILCGFIHJLP onConnectionAdded = instance.OnConnectionAdded; Action action3 = new Action(this.GIPLJDEGBMO); IILCGFIHJLP iilcgfihjlp = IILCGFIHJLP.GMNMHGMFGOL(onConnectionAdded, action3); instance.OnConnectionAdded = iilcgfihjlp; IILCGFIHJLP onConnectionRemoved = instance.OnConnectionRemoved; Action action4 = new Action(this.NCPJLDDPMDF); IILCGFIHJLP iilcgfihjlp2 = IILCGFIHJLP.GMNMHGMFGOL(onConnectionRemoved, action4); instance.OnConnectionRemoved = iilcgfihjlp2; } } // Token: 0x0400E029 RID: 57385 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400E029")] private readonly CreationContext LHOMKMINCHH; // Token: 0x0400E02A RID: 57386 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400E02A")] private readonly Dictionary> KBCECDIIIAI; // Token: 0x0400E02B RID: 57387 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400E02B")] private HashSet IHMGLJEGMPP; // Token: 0x0400E02C RID: 57388 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400E02C")] private HashSet OJEKPFCMLKC; // Token: 0x0400E02D RID: 57389 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400E02D")] private readonly HashSet DNAOIAPLHCJ; }