448 lines
13 KiB
C#
448 lines
13 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using Photon.Pun;
|
|
using Photon.Realtime;
|
|
using RecRoom;
|
|
using RecRoom.Core.Creation;
|
|
using RecRoom.Core.Creation.SandboxGizmos;
|
|
|
|
// Token: 0x02002B5A RID: 11098
|
|
[Token(Token = "0x2002B5A")]
|
|
[StructLayout(3)]
|
|
public class LJMLMMHFHIK : IDisposable
|
|
{
|
|
// Token: 0x170033D0 RID: 13264
|
|
// (get) Token: 0x0601369B RID: 79515 RVA: 0x004A7CFC File Offset: 0x004A5EFC
|
|
[Token(Token = "0x170033D0")]
|
|
public Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> ILEJOBCBIOC
|
|
{
|
|
[Token(Token = "0x601369B")]
|
|
[Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")]
|
|
get
|
|
{
|
|
return this.KBCECDIIIAI;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601369C RID: 79516 RVA: 0x004A7D10 File Offset: 0x004A5F10
|
|
[Token(Token = "0x601369C")]
|
|
[Address(RVA = "0x18F9B50", Offset = "0x18F8550", VA = "0x1818F9B50")]
|
|
public LJMLMMHFHIK(CreationContext context)
|
|
{
|
|
Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> dictionary = new Dictionary();
|
|
this.KBCECDIIIAI = dictionary;
|
|
HashSet<MIGCNEPBKDG> hashSet = new HashSet();
|
|
this.IHMGLJEGMPP = hashSet;
|
|
HashSet<SandboxGizmo> hashSet2 = new HashSet();
|
|
this.OJEKPFCMLKC = hashSet2;
|
|
HashSet<MIGCNEPBKDG> hashSet3 = new HashSet();
|
|
this.DNAOIAPLHCJ = hashSet3;
|
|
base..ctor();
|
|
this.LHOMKMINCHH = context;
|
|
}
|
|
|
|
// Token: 0x170033D1 RID: 13265
|
|
// (get) Token: 0x0601369D RID: 79517 RVA: 0x004A7D60 File Offset: 0x004A5F60
|
|
[Token(Token = "0x170033D1")]
|
|
private bool MEBGJGNMIMG
|
|
{
|
|
[Token(Token = "0x601369D")]
|
|
[Address(RVA = "0x18F9450", Offset = "0x18F7E50", VA = "0x1818F9450")]
|
|
get
|
|
{
|
|
return this.KBCECDIIIAI.Count == 0;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601369E RID: 79518 RVA: 0x004A7D84 File Offset: 0x004A5F84
|
|
[Token(Token = "0x601369E")]
|
|
[Address(RVA = "0x18F9740", Offset = "0x18F8140", VA = "0x1818F9740")]
|
|
private void OAIHBKFMECE(SandboxGizmo HJLGBOBFHPO)
|
|
{
|
|
bool flag = this.KBCECDIIIAI.Remove(HJLGBOBFHPO);
|
|
CreationObject creationObject = HJLGBOBFHPO.PBBJCLJPFMI.creationObject;
|
|
ActionEvent<CreationObject> lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent;
|
|
Action<CreationObject> action = new Action(this.BDDBGMIHLPP);
|
|
ActionEvent<CreationObject> actionEvent = lockedStatusChangedEvent - action;
|
|
creationObject.LockedStatusChangedEvent = actionEvent;
|
|
PhotonView photonView = HJLGBOBFHPO.PBBJCLJPFMI.creationObject.photonView;
|
|
Action<int> action2 = new Action(this.ANHIGPEJAOH);
|
|
photonView.OwnerChangedEvent -= action2;
|
|
int num = HJLGBOBFHPO.PBBJCLJPFMI.creationObject.FLLENDBIKGF.BDCCNHBOFGJ;
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
if (num == localPlayer.actorNumber)
|
|
{
|
|
FHJAFBMOIKC fllendbikgf = HJLGBOBFHPO.PBBJCLJPFMI.creationObject.FLLENDBIKGF;
|
|
int num2 = 0;
|
|
fllendbikgf.JBJNADMCBND(this, num2 != 0);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601369F RID: 79519 RVA: 0x004A7E4C File Offset: 0x004A604C
|
|
[Token(Token = "0x601369F")]
|
|
[Address(RVA = "0x18F82B0", Offset = "0x18F6CB0", VA = "0x1818F82B0")]
|
|
public void CDGCNMDFGIM(MIGCNEPBKDG EIBGAMMHGBB)
|
|
{
|
|
int num;
|
|
bool flag;
|
|
do
|
|
{
|
|
num = 0;
|
|
if (!this.DNAOIAPLHCJ.Add(EIBGAMMHGBB))
|
|
{
|
|
return;
|
|
}
|
|
flag = this.KBCECDIIIAI.Count == 0;
|
|
HashSet<SandboxGizmo> ojekpfcmlkc = this.OJEKPFCMLKC;
|
|
HashSet.Enumerator enumerator;
|
|
if (enumerator != 0)
|
|
{
|
|
Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> kbcecdiiiai = this.KBCECDIIIAI;
|
|
bool flag2;
|
|
if (!flag2)
|
|
{
|
|
HashSet<MIGCNEPBKDG> hashSet = new HashSet();
|
|
Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> kbcecdiiiai2 = this.KBCECDIIIAI;
|
|
}
|
|
Tool tool;
|
|
tool.creationObject.FLLENDBIKGF.JBJNADMCBND(this, true);
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
if (flag && this.KBCECDIIIAI.Count != 0)
|
|
{
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action = new Action(this.GIPLJDEGBMO);
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action2 = new Action(this.NCPJLDDPMDF);
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG, MIGCNEPBKDG, bool> action3 = new Action(this.ADNKNENBNPI);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060136A0 RID: 79520 RVA: 0x004A7F2C File Offset: 0x004A612C
|
|
[Token(Token = "0x60136A0")]
|
|
[Address(RVA = "0x18F90F0", Offset = "0x18F7AF0", VA = "0x1818F90F0")]
|
|
public void KCIPHFDLPJC(MIGCNEPBKDG EIBGAMMHGBB)
|
|
{
|
|
int num;
|
|
bool flag;
|
|
do
|
|
{
|
|
num = 0;
|
|
if (!this.DNAOIAPLHCJ.Remove(EIBGAMMHGBB))
|
|
{
|
|
return;
|
|
}
|
|
flag = this.KBCECDIIIAI.Count == 0;
|
|
HashSet<SandboxGizmo> ojekpfcmlkc = this.OJEKPFCMLKC;
|
|
HashSet.Enumerator enumerator;
|
|
if (enumerator != 0)
|
|
{
|
|
Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> kbcecdiiiai = this.KBCECDIIIAI;
|
|
bool flag2;
|
|
while (!flag2)
|
|
{
|
|
}
|
|
bool flag3;
|
|
while (!flag3)
|
|
{
|
|
}
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
if (this.KBCECDIIIAI.Count == 0 && !flag)
|
|
{
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action = new Action(this.GIPLJDEGBMO);
|
|
ActionEvent actionEvent = num - action;
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action2 = new Action(this.NCPJLDDPMDF);
|
|
ActionEvent actionEvent2 = num - action2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060136A1 RID: 79521 RVA: 0x004A7FDC File Offset: 0x004A61DC
|
|
[Token(Token = "0x60136A1")]
|
|
[Address(RVA = "0x18F8160", Offset = "0x18F6B60", VA = "0x1818F8160")]
|
|
private void ADNKNENBNPI(MIGCNEPBKDG GOAFEHIKNJI, MIGCNEPBKDG ICJLNPKIMKH, MIGCNEPBKDG BILNOAONIHA, bool ELDLFHPEIJJ)
|
|
{
|
|
this.HGJCGPIFEPM(GOAFEHIKNJI);
|
|
this.HGJCGPIFEPM(BILNOAONIHA);
|
|
}
|
|
|
|
// Token: 0x060136A2 RID: 79522 RVA: 0x004A7FF8 File Offset: 0x004A61F8
|
|
[Token(Token = "0x60136A2")]
|
|
[Address(RVA = "0x18F9000", Offset = "0x18F7A00", VA = "0x1818F9000")]
|
|
private void GIPLJDEGBMO(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC)
|
|
{
|
|
this.HGJCGPIFEPM(HICENEOPGOF);
|
|
this.HGJCGPIFEPM(MLDKMIGAPEC);
|
|
}
|
|
|
|
// Token: 0x060136A3 RID: 79523 RVA: 0x004A8014 File Offset: 0x004A6214
|
|
[Token(Token = "0x60136A3")]
|
|
[Address(RVA = "0x18F9000", Offset = "0x18F7A00", VA = "0x1818F9000")]
|
|
private void NCPJLDDPMDF(MIGCNEPBKDG HICENEOPGOF, MIGCNEPBKDG MLDKMIGAPEC)
|
|
{
|
|
this.HGJCGPIFEPM(HICENEOPGOF);
|
|
this.HGJCGPIFEPM(MLDKMIGAPEC);
|
|
}
|
|
|
|
// Token: 0x060136A4 RID: 79524 RVA: 0x004A8030 File Offset: 0x004A6230
|
|
[Token(Token = "0x60136A4")]
|
|
[Address(RVA = "0x18F9030", Offset = "0x18F7A30", VA = "0x1818F9030")]
|
|
private void HGJCGPIFEPM(MIGCNEPBKDG EIBGAMMHGBB)
|
|
{
|
|
if (EIBGAMMHGBB != 0)
|
|
{
|
|
HashSet<MIGCNEPBKDG> hashSet = new HashSet(this.IHMGLJEGMPP);
|
|
HashSet<MIGCNEPBKDG> dnaoiaplhcj = this.DNAOIAPLHCJ;
|
|
hashSet.IntersectWith(dnaoiaplhcj);
|
|
HashSet<SandboxGizmo> ojekpfcmlkc = this.OJEKPFCMLKC;
|
|
this.EKNLFAAGGPD(ojekpfcmlkc, hashSet);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060136A5 RID: 79525 RVA: 0x004A8070 File Offset: 0x004A6270
|
|
[Token(Token = "0x60136A5")]
|
|
[Address(RVA = "0x18F8AE0", Offset = "0x18F74E0", VA = "0x1818F8AE0")]
|
|
private void EKNLFAAGGPD(IEnumerable<SandboxGizmo> BDIEKCDCNHG, HashSet<MIGCNEPBKDG> HKKNLAGDMEC)
|
|
{
|
|
int num;
|
|
for (;;)
|
|
{
|
|
num = 0;
|
|
if (num >= HKKNLAGDMEC)
|
|
{
|
|
goto IL_12;
|
|
}
|
|
num += num;
|
|
if (num != HKKNLAGDMEC)
|
|
{
|
|
num++;
|
|
goto IL_12;
|
|
}
|
|
goto IL_3B;
|
|
IL_4D:
|
|
num += num;
|
|
num += 19;
|
|
int num2;
|
|
if (this.KBCECDIIIAI.TryGetValue(num, num2))
|
|
{
|
|
}
|
|
HashSet<MIGCNEPBKDG> hashSet = new HashSet();
|
|
this.KBCECDIIIAI[num] = hashSet;
|
|
Tool tool;
|
|
CreationObject creationObject = tool.creationObject;
|
|
ActionEvent<CreationObject> lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent;
|
|
Action<CreationObject> action = new Action(this.BDDBGMIHLPP);
|
|
ActionEvent<CreationObject> actionEvent = lockedStatusChangedEvent + action;
|
|
creationObject.LockedStatusChangedEvent = actionEvent;
|
|
Tool tool2;
|
|
PhotonView photonView = tool2.creationObject.photonView;
|
|
Action<int> action2 = new Action(this.ANHIGPEJAOH);
|
|
photonView.OwnerChangedEvent += action2;
|
|
Tool tool3;
|
|
ulong num3;
|
|
tool3.creationObject.FLLENDBIKGF.JBJNADMCBND(this, num3 != 0UL);
|
|
int num4 = 0;
|
|
if (num4 < this)
|
|
{
|
|
num4 += num4;
|
|
num4++;
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
if (lockedStatusChangedEvent == 0)
|
|
{
|
|
break;
|
|
}
|
|
continue;
|
|
IL_12:
|
|
int num5 = 0;
|
|
if (num < num5)
|
|
{
|
|
num += num;
|
|
num++;
|
|
}
|
|
int num6 = 0;
|
|
if (num < num6)
|
|
{
|
|
num += num;
|
|
if (num == num6)
|
|
{
|
|
goto IL_4D;
|
|
}
|
|
num++;
|
|
}
|
|
num2 = 0;
|
|
this.OAIHBKFMECE(num);
|
|
IL_3B:
|
|
num += num;
|
|
num += 19;
|
|
num += num;
|
|
num += 19;
|
|
goto IL_4D;
|
|
}
|
|
num += 19;
|
|
num += typeof(IEnumerator<SandboxGizmo>).TypeHandle;
|
|
}
|
|
|
|
// Token: 0x060136A6 RID: 79526 RVA: 0x004A81F4 File Offset: 0x004A63F4
|
|
[Token(Token = "0x60136A6")]
|
|
[Address(RVA = "0x18F94A0", Offset = "0x18F7EA0", VA = "0x1818F94A0")]
|
|
private static void MIIIDDLOOBO(MIGCNEPBKDG EIBGAMMHGBB, ref HashSet<MIGCNEPBKDG> MONOCCGECEL, ref HashSet<SandboxGizmo> BDIEKCDCNHG)
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
HashSet.Enumerator enumerator;
|
|
if (enumerator != 0)
|
|
{
|
|
num += num;
|
|
num++;
|
|
int num2 = 0;
|
|
SandboxGizmo sandboxGizmo;
|
|
if (!(sandboxGizmo != num2))
|
|
{
|
|
continue;
|
|
}
|
|
sandboxGizmo += sandboxGizmo;
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
}
|
|
|
|
// Token: 0x060136A7 RID: 79527 RVA: 0x004A823C File Offset: 0x004A643C
|
|
[Token(Token = "0x60136A7")]
|
|
[Address(RVA = "0x18F8190", Offset = "0x18F6B90", VA = "0x1818F8190")]
|
|
private void ANHIGPEJAOH(int OAPCCBMILAE)
|
|
{
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
if (OAPCCBMILAE != localPlayer.actorNumber)
|
|
{
|
|
this.LHOMKMINCHH.RemoveAllFromSelection();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060136A8 RID: 79528 RVA: 0x004A826C File Offset: 0x004A646C
|
|
[Token(Token = "0x60136A8")]
|
|
[Address(RVA = "0x18F8210", Offset = "0x18F6C10", VA = "0x1818F8210")]
|
|
private void BDDBGMIHLPP(CreationObject NLNHFEEMFBN)
|
|
{
|
|
int num = NLNHFEEMFBN.FLLENDBIKGF.BDCCNHBOFGJ;
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
if (num != localPlayer.actorNumber)
|
|
{
|
|
this.LHOMKMINCHH.RemoveAllFromSelection();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060136A9 RID: 79529 RVA: 0x004A82A8 File Offset: 0x004A64A8
|
|
[Token(Token = "0x60136A9")]
|
|
[Address(RVA = "0x18F9940", Offset = "0x18F8340", VA = "0x1818F9940")]
|
|
public GBDECALBCOP PANGCDDGMLG(CreationObject EOJKOIGNHPJ)
|
|
{
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
ConnectableTool connectableTool = EOJKOIGNHPJ.tool.connectableTool;
|
|
int num2 = 0;
|
|
if (!(connectableTool != num2))
|
|
{
|
|
break;
|
|
}
|
|
HashSet<SandboxGizmo> ojekpfcmlkc = this.OJEKPFCMLKC;
|
|
HashSet.Enumerator enumerator;
|
|
Tool tool;
|
|
if (enumerator == 0 || !tool.NHPPANGAKAP)
|
|
{
|
|
if (num != -1)
|
|
{
|
|
}
|
|
if (num == 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x060136AA RID: 79530 RVA: 0x004A8300 File Offset: 0x004A6500
|
|
[Token(Token = "0x60136AA")]
|
|
[Address(RVA = "0x18F8720", Offset = "0x18F7120", VA = "0x1818F8720", Slot = "4")]
|
|
public void Dispose()
|
|
{
|
|
int num;
|
|
do
|
|
{
|
|
num = 0;
|
|
List<SandboxGizmo> list = Enumerable.ToList<SandboxGizmo>(this.KBCECDIIIAI.Keys);
|
|
List.Enumerator enumerator;
|
|
if (enumerator != 0)
|
|
{
|
|
Tool tool;
|
|
CreationObject creationObject = tool.creationObject;
|
|
ActionEvent<CreationObject> lockedStatusChangedEvent = creationObject.LockedStatusChangedEvent;
|
|
Action<CreationObject> action = new Action(this.BDDBGMIHLPP);
|
|
ActionEvent<CreationObject> actionEvent = lockedStatusChangedEvent - action;
|
|
creationObject.LockedStatusChangedEvent = actionEvent;
|
|
Tool tool2;
|
|
PhotonView photonView = tool2.creationObject.photonView;
|
|
Action<int> action2 = new Action(this.ANHIGPEJAOH);
|
|
photonView.OwnerChangedEvent -= action2;
|
|
Tool tool3;
|
|
FHJAFBMOIKC fllendbikgf = tool3.creationObject.FLLENDBIKGF;
|
|
int num2 = 0;
|
|
fllendbikgf.JBJNADMCBND(this, num2 != 0);
|
|
}
|
|
if (num != -1)
|
|
{
|
|
}
|
|
}
|
|
while (num != 0);
|
|
int num3 = 0;
|
|
if (num != num3)
|
|
{
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action3 = new Action(this.GIPLJDEGBMO);
|
|
Action<MIGCNEPBKDG, MIGCNEPBKDG> action4 = new Action(this.NCPJLDDPMDF);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0400D29D RID: 53917
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x400D29D")]
|
|
private readonly CreationContext LHOMKMINCHH;
|
|
|
|
// Token: 0x0400D29E RID: 53918
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400D29E")]
|
|
private readonly Dictionary<SandboxGizmo, HashSet<MIGCNEPBKDG>> KBCECDIIIAI;
|
|
|
|
// Token: 0x0400D29F RID: 53919
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400D29F")]
|
|
private HashSet<MIGCNEPBKDG> IHMGLJEGMPP;
|
|
|
|
// Token: 0x0400D2A0 RID: 53920
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400D2A0")]
|
|
private HashSet<SandboxGizmo> OJEKPFCMLKC;
|
|
|
|
// Token: 0x0400D2A1 RID: 53921
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400D2A1")]
|
|
private readonly HashSet<MIGCNEPBKDG> DNAOIAPLHCJ;
|
|
}
|