using System; using System.Collections.Generic; using System.Linq; using Cpp2IlInjected; using RecRoom.Core.Creation; using RecRoom.Core.Creation.SandboxGizmos; // Token: 0x02003175 RID: 12661 [Token(Token = "0x2003175")] public class LJMLMMHFHIK : IDisposable { // Token: 0x17003B1D RID: 15133 // (get) Token: 0x06015705 RID: 87813 RVA: 0x004FE4F0 File Offset: 0x004FC6F0 [Token(Token = "0x17003B1D")] public Dictionary> ILEJOBCBIOC { [Token(Token = "0x6015705")] [Address(RVA = "0x4157B0", Offset = "0x4147B0", VA = "0x1804157B0")] get { return this.KBCECDIIIAI; } } // Token: 0x06015706 RID: 87814 RVA: 0x004FE504 File Offset: 0x004FC704 [Token(Token = "0x6015706")] [Address(RVA = "0x1DA5C00", Offset = "0x1DA4C00", VA = "0x181DA5C00")] 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: 0x17003B1E RID: 15134 // (get) Token: 0x06015707 RID: 87815 RVA: 0x004FE554 File Offset: 0x004FC754 [Token(Token = "0x17003B1E")] private bool MEBGJGNMIMG { [Token(Token = "0x6015707")] [Address(RVA = "0x1DA5550", Offset = "0x1DA4550", VA = "0x181DA5550")] get { return this.KBCECDIIIAI.Count == 0; } } // Token: 0x06015708 RID: 87816 RVA: 0x004FE578 File Offset: 0x004FC778 [Token(Token = "0x6015708")] [Address(RVA = "0x1DA5800", Offset = "0x1DA4800", VA = "0x181DA5800")] 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: 0x06015709 RID: 87817 RVA: 0x004FE62C File Offset: 0x004FC82C [Token(Token = "0x6015709")] [Address(RVA = "0x1DA4450", Offset = "0x1DA3450", VA = "0x181DA4450")] 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: 0x0601570A RID: 87818 RVA: 0x004FE774 File Offset: 0x004FC974 [Token(Token = "0x601570A")] [Address(RVA = "0x1DA5210", Offset = "0x1DA4210", VA = "0x181DA5210")] 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: 0x0601570B RID: 87819 RVA: 0x004FE854 File Offset: 0x004FCA54 [Token(Token = "0x601570B")] [Address(RVA = "0x1DA4380", Offset = "0x1DA3380", VA = "0x181DA4380")] private void ADNKNENBNPI(MIGCNEPBKDG GOAFEHIKNJI, MIGCNEPBKDG ICJLNPKIMKH, MIGCNEPBKDG BILNOAONIHA, bool ELDLFHPEIJJ) { this.HGJCGPIFEPM(GOAFEHIKNJI); this.HGJCGPIFEPM(BILNOAONIHA); } // Token: 0x0601570C RID: 87820 RVA: 0x004FE870 File Offset: 0x004FCA70 [Token(Token = "0x601570C")] [Address(RVA = "0x1DA50F0", Offset = "0x1DA40F0", VA = "0x181DA50F0")] private void GIPLJDEGBMO(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC) { this.HGJCGPIFEPM(HICENEOPGOF); this.HGJCGPIFEPM(MLDKMIGAPEC); } // Token: 0x0601570D RID: 87821 RVA: 0x004FE88C File Offset: 0x004FCA8C [Token(Token = "0x601570D")] [Address(RVA = "0x1DA50F0", Offset = "0x1DA40F0", VA = "0x181DA50F0")] private void NCPJLDDPMDF(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC) { this.HGJCGPIFEPM(HICENEOPGOF); this.HGJCGPIFEPM(MLDKMIGAPEC); } // Token: 0x0601570E RID: 87822 RVA: 0x004FE8A8 File Offset: 0x004FCAA8 [Token(Token = "0x601570E")] [Address(RVA = "0x1DA5120", Offset = "0x1DA4120", VA = "0x181DA5120")] 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: 0x0601570F RID: 87823 RVA: 0x004FE8E8 File Offset: 0x004FCAE8 [Token(Token = "0x601570F")] [Address(RVA = "0x1DA4C80", Offset = "0x1DA3C80", VA = "0x181DA4C80")] 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: 0x06015710 RID: 87824 RVA: 0x004FEA18 File Offset: 0x004FCC18 [Token(Token = "0x6015710")] [Address(RVA = "0x1DA55A0", Offset = "0x1DA45A0", VA = "0x181DA55A0")] 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: 0x06015711 RID: 87825 RVA: 0x004FEA68 File Offset: 0x004FCC68 [Token(Token = "0x6015711")] [Address(RVA = "0x1DA51E0", Offset = "0x1DA41E0", VA = "0x181DA51E0")] private void IKHIDEALCLF(AGAJMBPABDL HIBNOIKDDAC) { if (HIBNOIKDDAC != 0 && !HIBNOIKDDAC.DMKCIEPGGAB) { this.LHOMKMINCHH.RemoveAllFromSelection(); return; } } // Token: 0x06015712 RID: 87826 RVA: 0x004FEA94 File Offset: 0x004FCC94 [Token(Token = "0x6015712")] [Address(RVA = "0x1DA43B0", Offset = "0x1DA33B0", VA = "0x181DA43B0")] private void BDDBGMIHLPP(CreationObject NLNHFEEMFBN) { LIMDPCEOFDK fllendbikgf = NLNHFEEMFBN.FLLENDBIKGF; AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF; if (NLNHFEEMFBN != agajmbpabdl.INPOAAAOAHI) { this.LHOMKMINCHH.RemoveAllFromSelection(); } } // Token: 0x06015713 RID: 87827 RVA: 0x004FEACC File Offset: 0x004FCCCC [Token(Token = "0x6015713")] [Address(RVA = "0x1DA5A00", Offset = "0x1DA4A00", VA = "0x181DA5A00")] 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: 0x06015714 RID: 87828 RVA: 0x004FEB24 File Offset: 0x004FCD24 [Token(Token = "0x6015714")] [Address(RVA = "0x1DA48A0", Offset = "0x1DA38A0", VA = "0x181DA48A0", 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: 0x0400E25C RID: 57948 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400E25C")] private readonly CreationContext LHOMKMINCHH; // Token: 0x0400E25D RID: 57949 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400E25D")] private readonly Dictionary> KBCECDIIIAI; // Token: 0x0400E25E RID: 57950 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400E25E")] private HashSet IHMGLJEGMPP; // Token: 0x0400E25F RID: 57951 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400E25F")] private HashSet OJEKPFCMLKC; // Token: 0x0400E260 RID: 57952 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400E260")] private readonly HashSet DNAOIAPLHCJ; }