400 lines
12 KiB
C#
400 lines
12 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Collections.ObjectModel;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Text;
|
|
using AGUI.StackedUI;
|
|
using Cpp2IlInjected;
|
|
using Photon.Pun;
|
|
using RecRoom.AGUI.ToolUIs;
|
|
using RecRoom.Core.Creation;
|
|
using UnityEngine;
|
|
using UnityEngine.Serialization;
|
|
|
|
namespace RecRoom.Tools
|
|
{
|
|
// Token: 0x02002B23 RID: 11043
|
|
[Token(Token = "0x2002B23")]
|
|
public class MoveableProp : MonoBehaviourPun, EOCLMMENCKH
|
|
{
|
|
// Token: 0x17003391 RID: 13201
|
|
// (get) Token: 0x060126C3 RID: 75459 RVA: 0x00430140 File Offset: 0x0042E340
|
|
// (set) Token: 0x060126C4 RID: 75460 RVA: 0x00430160 File Offset: 0x0042E360
|
|
[Token(Token = "0x17003391")]
|
|
private bool LEOMFGDBDIE
|
|
{
|
|
[Token(Token = "0x60126C3")]
|
|
[Address(RVA = "0x14C0690", Offset = "0x14BF690", VA = "0x1814C0690")]
|
|
get
|
|
{
|
|
return this.CLDBCFMMOIE.IAHDANBDAAM() != null;
|
|
}
|
|
[Token(Token = "0x60126C4")]
|
|
[Address(RVA = "0x14C0250", Offset = "0x14BF250", VA = "0x1814C0250")]
|
|
set
|
|
{
|
|
KLLMCPFPIIE<bool> cldbcfmmoie = this.CLDBCFMMOIE;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060126C5 RID: 75461 RVA: 0x0043017C File Offset: 0x0042E37C
|
|
[Token(Token = "0x60126C5")]
|
|
[Address(RVA = "0x14BFF20", Offset = "0x14BEF20", VA = "0x1814BFF20", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base..ctor();
|
|
Action action = new Action(this.JEFOHMJFONB);
|
|
Tool tool = this.tool;
|
|
KLLMCPFPIIE<bool> kllmcpfpiie;
|
|
this.CLDBCFMMOIE = kllmcpfpiie;
|
|
tool.AlwaysPhysicalPickupOffCenter = true;
|
|
this.tool.SleepOnStart = true;
|
|
this.tool.KinematicOnSleep = true;
|
|
this.tool.IgnorePickupDirection = true;
|
|
}
|
|
|
|
// Token: 0x060126C6 RID: 75462 RVA: 0x004301E0 File Offset: 0x0042E3E0
|
|
[Token(Token = "0x60126C6")]
|
|
[Address(RVA = "0x14C0D10", Offset = "0x14BFD10", VA = "0x1814C0D10")]
|
|
private void Start()
|
|
{
|
|
Tool tool = this.tool;
|
|
MFBGLIHGCGO<Tool> postPickupEvent = tool.PostPickupEvent;
|
|
Action<Tool> action = new Action(this.EOEEJHHPNNO);
|
|
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action);
|
|
tool.PostPickupEvent = mfbglihgcgo;
|
|
RigidbodyEx rigidbodyEx = this.rigidbodyEx;
|
|
RigidbodyEx.FPLEDOKDLCC fpledokdlcc = new RigidbodyEx.FPLEDOKDLCC(this.KDBBEJMIACD);
|
|
rigidbodyEx.JMHDMBMIEPP += fpledokdlcc;
|
|
this.MHBIPADBGKA();
|
|
RigidbodyEx rigidbodyEx2 = this.rigidbodyEx;
|
|
this.KDBBEJMIACD(rigidbodyEx2);
|
|
}
|
|
|
|
// Token: 0x060126C7 RID: 75463 RVA: 0x00430254 File Offset: 0x0042E454
|
|
[Token(Token = "0x60126C7")]
|
|
[Address(RVA = "0x14C0A20", Offset = "0x14BFA20", VA = "0x1814C0A20", Slot = "14")]
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
Tool tool = this.tool;
|
|
int num = 0;
|
|
if (tool != num)
|
|
{
|
|
Tool tool2 = this.tool;
|
|
MFBGLIHGCGO<Tool> postPickupEvent = tool2.PostPickupEvent;
|
|
Action<Tool> action = new Action(this.EOEEJHHPNNO);
|
|
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action);
|
|
tool2.PostPickupEvent = mfbglihgcgo;
|
|
}
|
|
RigidbodyEx rigidbodyEx = this.rigidbodyEx;
|
|
int num2 = 0;
|
|
if (rigidbodyEx != num2)
|
|
{
|
|
RigidbodyEx rigidbodyEx2 = this.rigidbodyEx;
|
|
RigidbodyEx.FPLEDOKDLCC fpledokdlcc = new RigidbodyEx.FPLEDOKDLCC(this.KDBBEJMIACD);
|
|
rigidbodyEx2.JMHDMBMIEPP -= fpledokdlcc;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060126C8 RID: 75464 RVA: 0x004302E4 File Offset: 0x0042E4E4
|
|
[Token(Token = "0x60126C8")]
|
|
[Address(RVA = "0x14C0240", Offset = "0x14BF240", VA = "0x1814C0240")]
|
|
private void EOEEJHHPNNO(Tool NBHJPDBHDHB)
|
|
{
|
|
int num = 0;
|
|
this.DHJGDLKAMGH(num != 0);
|
|
}
|
|
|
|
// Token: 0x060126C9 RID: 75465 RVA: 0x004302FC File Offset: 0x0042E4FC
|
|
[Token(Token = "0x60126C9")]
|
|
[Address(RVA = "0x14C06E0", Offset = "0x14BF6E0", VA = "0x1814C06E0")]
|
|
private void KDBBEJMIACD(RigidbodyEx AFEBLJOIBBC)
|
|
{
|
|
bool isKinematic = AFEBLJOIBBC.JEGGMAKBGEK;
|
|
Tool tool = this.tool;
|
|
if (!isKinematic)
|
|
{
|
|
tool.GravityPickupMode = (Tool.LMJNHJCGDOF)((ulong)1L);
|
|
}
|
|
tool.GravityPickupMode = (Tool.LMJNHJCGDOF)((ulong)4294967295L);
|
|
bool flag = !this.tool.FNFNLDBILFE;
|
|
this.DHJGDLKAMGH(flag);
|
|
this.HOLKNCMHJMG(flag);
|
|
}
|
|
|
|
// Token: 0x060126CA RID: 75466 RVA: 0x00430358 File Offset: 0x0042E558
|
|
[Token(Token = "0x60126CA")]
|
|
[Address(RVA = "0x14C0020", Offset = "0x14BF020", VA = "0x1814C0020")]
|
|
private void DHJGDLKAMGH(bool HFENFPJDMOD)
|
|
{
|
|
if (this.hasDetailedColliders)
|
|
{
|
|
if (HFENFPJDMOD)
|
|
{
|
|
}
|
|
Collider[] array = this.detailedColliders;
|
|
Collider[] array2 = this.defaultColliders;
|
|
int num = 0;
|
|
int length = array.Length;
|
|
if (num < length)
|
|
{
|
|
Collider collider = array[num];
|
|
int num2 = 0;
|
|
collider.enabled = num2 != 0;
|
|
num++;
|
|
}
|
|
int length2 = array2.Length;
|
|
if (num < length2)
|
|
{
|
|
array2[num].enabled = true;
|
|
num++;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060126CB RID: 75467 RVA: 0x004303CC File Offset: 0x0042E5CC
|
|
[Token(Token = "0x60126CB")]
|
|
[Address(RVA = "0x14C02B0", Offset = "0x14BF2B0", VA = "0x1814C02B0")]
|
|
private void HOLKNCMHJMG(bool MHLAJCEGEKB)
|
|
{
|
|
for (;;)
|
|
{
|
|
int num = 0;
|
|
if ((this.supportsLocomotionCollisionConfiguration ? 1 : 0) == num)
|
|
{
|
|
break;
|
|
}
|
|
if (!MHLAJCEGEKB)
|
|
{
|
|
List<ToolCollider> nnbalfkkndo = this.tool.NNBALFKKNDO;
|
|
if ("MovementCollisionAlwaysAllowed" == 0)
|
|
{
|
|
goto IL_8B;
|
|
}
|
|
int num2 = 0;
|
|
if (num2 < "MovementCollisionAlwaysAllowed")
|
|
{
|
|
num2 += num2;
|
|
num2++;
|
|
}
|
|
ReadOnlyCollection<Collider> readOnlyCollection;
|
|
if (readOnlyCollection.GetEnumerator() == 0)
|
|
{
|
|
goto IL_79;
|
|
}
|
|
bool flag;
|
|
while (flag)
|
|
{
|
|
}
|
|
GameObject gameObject;
|
|
if (!gameObject.CompareTag("MovementCollisionAlwaysAllowed"))
|
|
{
|
|
continue;
|
|
}
|
|
GameObject gameObject2;
|
|
gameObject2.tag = "MovementCollisionAlwaysAllowed";
|
|
}
|
|
if (this.CLDBCFMMOIE.IAHDANBDAAM() != 0)
|
|
{
|
|
goto IL_79;
|
|
}
|
|
continue;
|
|
IL_8B:
|
|
if (num == 0)
|
|
{
|
|
break;
|
|
}
|
|
continue;
|
|
IL_79:
|
|
uint num3;
|
|
num3 += (uint)1;
|
|
if (MHLAJCEGEKB)
|
|
{
|
|
}
|
|
if (num == 0)
|
|
{
|
|
while (num3 == (uint)(-1))
|
|
{
|
|
}
|
|
goto IL_8B;
|
|
}
|
|
goto IL_AB;
|
|
}
|
|
return;
|
|
IL_AB:
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x060126CC RID: 75468 RVA: 0x00430498 File Offset: 0x0042E698
|
|
[Token(Token = "0x60126CC")]
|
|
[Address(RVA = "0x14C0770", Offset = "0x14BF770", VA = "0x1814C0770")]
|
|
private void MHBIPADBGKA()
|
|
{
|
|
if (this.supportsLocomotionCollisionConfiguration)
|
|
{
|
|
CreationObject creationObject = this.tool.creationObject;
|
|
OMKPHDBNLKH<CreationObjectSettingBooleanUIControl, bool>.DEDABHKCIBG <>9__18_ = MoveableProp.<>c.<>9__18_0;
|
|
if (<>9__18_ == 0)
|
|
{
|
|
MoveableProp.<>c.<>9__18_0 = (MakerPenPaletteConfigScreen editableUIFlow) => editableUIFlow.DefaultBoolUIControlPrefab;
|
|
}
|
|
OMKPHDBNLKH<CreationObjectSettingBooleanUIControl, bool>.OHINDOLFNMP ohindolfnmp = new OMKPHDBNLKH.OHINDOLFNMP(this.EBLBLJCNPMD);
|
|
CPNMFOKDBKM cpnmfokdbkm = new CPNMFOKDBKM(<>9__18_, ohindolfnmp, 99);
|
|
int num = 0;
|
|
ILINODKFHEO ilinodkfheo = creationObject.AddConfigurableSetting(cpnmfokdbkm);
|
|
CreationObject creationObject2 = this.tool.creationObject;
|
|
DOPNALIMPNA[] array = new DOPNALIMPNA[0];
|
|
Func<bool> func = new Func(this.OFJDKGNNPDE);
|
|
Action<bool> action = new Action(this.HOJHNOGCLPH);
|
|
int num2 = 0;
|
|
int num3 = 0;
|
|
string text;
|
|
string text2;
|
|
ulong num4;
|
|
DHCINNFLBBA dhcinnflbba = ONOKJPIMIIP.LBJPOFMMGGP(func, action, num3, num2, text, text2, (int)num4, num);
|
|
if (dhcinnflbba != 0)
|
|
{
|
|
}
|
|
array[0] = dhcinnflbba;
|
|
ECJBHJOCKHL ecjbhjockhl = creationObject2.AddFoldoutMenu("Locomotion Collision", 99, array);
|
|
}
|
|
}
|
|
|
|
// Token: 0x060126CD RID: 75469 RVA: 0x00430574 File Offset: 0x0042E774
|
|
[Token(Token = "0x60126CD")]
|
|
[Address(RVA = "0x14C0690", Offset = "0x14BF690", VA = "0x1814C0690")]
|
|
private bool OFJDKGNNPDE()
|
|
{
|
|
return this.CLDBCFMMOIE.IAHDANBDAAM() != null;
|
|
}
|
|
|
|
// Token: 0x060126CE RID: 75470 RVA: 0x00430594 File Offset: 0x0042E794
|
|
[Token(Token = "0x60126CE")]
|
|
[Address(RVA = "0x14C0250", Offset = "0x14BF250", VA = "0x1814C0250")]
|
|
private void HOJHNOGCLPH(bool BCEFAKDFEMM)
|
|
{
|
|
KLLMCPFPIIE<bool> cldbcfmmoie = this.CLDBCFMMOIE;
|
|
}
|
|
|
|
// Token: 0x060126CF RID: 75471 RVA: 0x004305B0 File Offset: 0x0042E7B0
|
|
[Token(Token = "0x60126CF")]
|
|
[Address(RVA = "0x14C0680", Offset = "0x14BF680", VA = "0x1814C0680")]
|
|
private void JEFOHMJFONB()
|
|
{
|
|
RigidbodyEx rigidbodyEx = this.rigidbodyEx;
|
|
this.KDBBEJMIACD(rigidbodyEx);
|
|
}
|
|
|
|
// Token: 0x17003392 RID: 13202
|
|
// (get) Token: 0x060126D0 RID: 75472 RVA: 0x004305CC File Offset: 0x0042E7CC
|
|
[Token(Token = "0x17003392")]
|
|
public bool JBMFJOBFJHP
|
|
{
|
|
[Token(Token = "0x60126D0")]
|
|
[Address(RVA = "0x424690", Offset = "0x423690", VA = "0x180424690", Slot = "15")]
|
|
get
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x060126D1 RID: 75473 RVA: 0x004305DC File Offset: 0x0042E7DC
|
|
[Token(Token = "0x60126D1")]
|
|
[Address(RVA = "0x14C0100", Offset = "0x14BF100", VA = "0x1814C0100", Slot = "16")]
|
|
public void DeserializeFrom(KPNDFONGDGF HFBJGCHOANH)
|
|
{
|
|
if (!base.OGIBLNIIHDK)
|
|
{
|
|
return;
|
|
}
|
|
if (this != 0)
|
|
{
|
|
bool flag;
|
|
this.LEOMFGDBDIE = flag;
|
|
return;
|
|
}
|
|
bool flag2 = this.grandfatheredValueLocomotionCollisionEnabled;
|
|
this.LEOMFGDBDIE = flag2;
|
|
}
|
|
|
|
// Token: 0x060126D2 RID: 75474 RVA: 0x00430610 File Offset: 0x0042E810
|
|
[Token(Token = "0x60126D2")]
|
|
[Address(RVA = "0x14C0B70", Offset = "0x14BFB70", VA = "0x1814C0B70", Slot = "17")]
|
|
public void SerializeTo(ref PDEKIHFJKHJ IABNDBNHMKF, ref MKNCHKCCIHK NHFINJNIPGK, StringBuilder BIPOIFGEMGB)
|
|
{
|
|
MOFMNEDKCJP mofmnedkcjp = new MOFMNEDKCJP();
|
|
bool flag = this.CLDBCFMMOIE.IAHDANBDAAM() == 0;
|
|
}
|
|
|
|
// Token: 0x060126D3 RID: 75475 RVA: 0x00430658 File Offset: 0x0042E858
|
|
[Token(Token = "0x60126D3")]
|
|
[Address(RVA = "0x14C0E10", Offset = "0x14BFE10", VA = "0x1814C0E10")]
|
|
public MoveableProp()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060126D4 RID: 75476 RVA: 0x00430674 File Offset: 0x0042E874
|
|
[Token(Token = "0x60126D4")]
|
|
[Address(RVA = "0x14C0170", Offset = "0x14BF170", VA = "0x1814C0170")]
|
|
[CompilerGenerated]
|
|
private void EBLBLJCNPMD(CreationObjectSettingBooleanUIControl GCCLEJOGCCE)
|
|
{
|
|
string text = GCCLEJOGCCE.PropertyDescription.text;
|
|
Func<bool> func = new Func(this.OFJDKGNNPDE);
|
|
Action<bool> action = new Action(this.HOJHNOGCLPH);
|
|
}
|
|
|
|
// Token: 0x0400BD9F RID: 48543
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400BD9F")]
|
|
[SerializeField]
|
|
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
|
|
private Tool tool;
|
|
|
|
// Token: 0x0400BDA0 RID: 48544
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400BDA0")]
|
|
[SerializeField]
|
|
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
|
|
private RigidbodyEx rigidbodyEx;
|
|
|
|
// Token: 0x0400BDA1 RID: 48545
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400BDA1")]
|
|
[SerializeField]
|
|
[FormerlySerializedAs("useMovementCollision")]
|
|
private bool supportsLocomotionCollisionConfiguration = true;
|
|
|
|
// Token: 0x0400BDA2 RID: 48546
|
|
[FieldOffset(Offset = "0x51")]
|
|
[Token(Token = "0x400BDA2")]
|
|
[SerializeField]
|
|
private bool grandfatheredValueLocomotionCollisionEnabled;
|
|
|
|
// Token: 0x0400BDA3 RID: 48547
|
|
[FieldOffset(Offset = "0x52")]
|
|
[Token(Token = "0x400BDA3")]
|
|
[SerializeField]
|
|
private bool hasDetailedColliders;
|
|
|
|
// Token: 0x0400BDA4 RID: 48548
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x400BDA4")]
|
|
[SerializeField]
|
|
[JEAMMEGEDDJ("hasDetailedColliders")]
|
|
private Collider[] detailedColliders;
|
|
|
|
// Token: 0x0400BDA5 RID: 48549
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400BDA5")]
|
|
[SerializeField]
|
|
[JEAMMEGEDDJ("hasDetailedColliders")]
|
|
private Collider[] defaultColliders;
|
|
|
|
// Token: 0x0400BDA6 RID: 48550
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400BDA6")]
|
|
private KLLMCPFPIIE<bool> CLDBCFMMOIE;
|
|
}
|
|
}
|