Files
2026-04-08 23:40:05 +02:00

222 lines
6.9 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
// Token: 0x02000503 RID: 1283
[Token(Token = "0x2000503")]
[StructLayout(3)]
public class MoveableSeating : MonoBehaviour
{
// Token: 0x060025D8 RID: 9688 RVA: 0x0009CAFC File Offset: 0x0009ACFC
[Token(Token = "0x60025D8")]
[Address(RVA = "0x142D8D0", Offset = "0x142C2D0", VA = "0x18142D8D0")]
private void Awake()
{
Tool component = base.GetComponent<Tool>();
this.EGFEJGHDNAI = component;
int num = 0;
bool flag = component == num;
this.IBEACGCJANK = flag;
if (!flag)
{
Tool egfejghdnai = this.EGFEJGHDNAI;
Tool.OGLAJAFKBMN oglajafkbmn = new Tool.OGLAJAFKBMN(this.MCFJIPLLGMH);
egfejghdnai.AddCustomPickupCondition(oglajafkbmn);
this.EGFEJGHDNAI.GravityPickupMode = (Tool.LMJNHJCGDOF)((ulong)1L);
this.EGFEJGHDNAI.AlwaysPhysicalPickupOffCenter = true;
this.EGFEJGHDNAI.IgnorePickupDirection = true;
}
TeleportationPortal[] componentsInChildren = base.GetComponentsInChildren<TeleportationPortal>();
this.HEBEMFJJEAA = componentsInChildren;
DynamicTeleportRestriction[] componentsInChildren2 = base.GetComponentsInChildren<DynamicTeleportRestriction>();
TeleportationPortal[] hebemfjjeaa = this.HEBEMFJJEAA;
this.KOOMLEKMFHH = componentsInChildren2;
if ((hebemfjjeaa == 0 || hebemfjjeaa.Length == 0) && (componentsInChildren2 == 0 || componentsInChildren2.Length == 0))
{
Debug.LogError(base.name + " is missing teleportation portal or teleport restriction components.");
}
}
// Token: 0x060025D9 RID: 9689 RVA: 0x0009CBD0 File Offset: 0x0009ADD0
[Token(Token = "0x60025D9")]
[Address(RVA = "0x142DF30", Offset = "0x142C930", VA = "0x18142DF30")]
private void Update()
{
bool flag = this.LPOBKBEBAPP();
if (!this.IBEACGCJANK && !this.EGFEJGHDNAI.FNFNLDBILFE)
{
if (flag)
{
}
bool flag2 = this.EGFEJGHDNAI.rigidbodyEx.IsSleeping();
if (this.makeToolKinematicWhileSleeping && this.KFHOHKDLDHP != flag2)
{
Tool egfejghdnai = this.EGFEJGHDNAI;
this.KFHOHKDLDHP = flag2;
egfejghdnai.rigidbodyEx.SetKinematic(this, flag2);
}
if (this.disableGravityPickupWhileSleeping)
{
this.EGFEJGHDNAI.GravityPickupMode = (flag2 ? Tool.LMJNHJCGDOF.SNAP_POSITION_MAINTAIN_ORIENTATION : Tool.LMJNHJCGDOF.SNAP_POSITION_SNAP_ORIENTATION);
}
}
TeleportationPortal[] hebemfjjeaa = this.HEBEMFJJEAA;
int num = 0;
if (hebemfjjeaa != 0 && num < hebemfjjeaa.Length)
{
hebemfjjeaa[num].enabled = flag;
TeleportationPortal[] hebemfjjeaa2 = this.HEBEMFJJEAA;
num++;
}
DynamicTeleportRestriction[] koomlekmfhh = this.KOOMLEKMFHH;
if (koomlekmfhh != 0 && num < koomlekmfhh.Length)
{
DynamicTeleportRestriction dynamicTeleportRestriction = koomlekmfhh[num];
bool flag3 = !flag;
dynamicTeleportRestriction.LDKMKCMBAJC = flag3;
DynamicTeleportRestriction[] koomlekmfhh2 = this.KOOMLEKMFHH;
num++;
while (koomlekmfhh2 != 0)
{
}
}
}
// Token: 0x060025DA RID: 9690 RVA: 0x0009CCD4 File Offset: 0x0009AED4
[Token(Token = "0x60025DA")]
[Address(RVA = "0x142DA70", Offset = "0x142C470", VA = "0x18142DA70")]
private bool LPOBKBEBAPP()
{
int num = 0;
if ((this.IBEACGCJANK ? 1 : 0) != num || !this.EGFEJGHDNAI.FNFNLDBILFE)
{
if (!this.IBEACGCJANK && !this.EGFEJGHDNAI.rigidbodyEx.JEGGMAKBGEK)
{
RigidbodyEx rigidbodyEx = this.EGFEJGHDNAI.rigidbodyEx;
Vector3 vector;
float z = vector.z;
}
if (this.mustBeRightSideUp)
{
Transform transform = base.transform;
Vector3 vector2;
float z2 = vector2.z;
float z3 = Vector3.up.z;
}
}
return true;
}
// Token: 0x060025DB RID: 9691 RVA: 0x0009CD5C File Offset: 0x0009AF5C
[Token(Token = "0x60025DB")]
[Address(RVA = "0x142DC00", Offset = "0x142C600", VA = "0x18142DC00")]
private bool MCFJIPLLGMH(Tool NBHJPDBHDHB, Player NHCEBNBEEBE, Vector3 JEDLNAEEMEN, bool GEJJBENPHJG)
{
Transform transform = this.occupiedCollisionCapsuleStart;
Vector3 vector;
float z = vector.z;
float z2 = Vector3.up.z;
Vector3 vector2;
float z3 = vector2.z;
Vector3 vector3;
float z4 = vector3.z;
if (!this.LPOBKBEBAPP())
{
return true;
}
throw new NullReferenceException();
}
// Token: 0x060025DC RID: 9692 RVA: 0x0009CDA4 File Offset: 0x0009AFA4
[Token(Token = "0x60025DC")]
[Address(RVA = "0x142DD70", Offset = "0x142C770", VA = "0x18142DD70")]
private void OnDrawGizmosSelected()
{
Transform transform = this.occupiedCollisionCapsuleStart;
int num = 0;
if (transform != num)
{
Color green = Color.green;
Transform transform2 = this.occupiedCollisionCapsuleStart;
Vector3 position = transform.position;
Vector3 up = Vector3.up;
}
}
// Token: 0x060025DD RID: 9693 RVA: 0x0009CDE8 File Offset: 0x0009AFE8
[Token(Token = "0x60025DD")]
[Address(RVA = "0x142E0F0", Offset = "0x142CAF0", VA = "0x18142E0F0")]
public MoveableSeating()
{
}
// Token: 0x04002099 RID: 8345
[Token(Token = "0x4002099")]
private const Tool.LMJNHJCGDOF HJJEONIJBKI = Tool.LMJNHJCGDOF.SNAP_POSITION_MAINTAIN_ORIENTATION;
// Token: 0x0400209A RID: 8346
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x400209A")]
[SerializeField]
[Header("Sit Requirements")]
private bool mustBeRightSideUp = true;
// Token: 0x0400209B RID: 8347
[global::Cpp2IlInjected.FieldOffset(Offset = "0x19")]
[Token(Token = "0x400209B")]
[SerializeField]
[Header("Tool side effects")]
private bool makeToolKinematicWhileSleeping;
// Token: 0x0400209C RID: 8348
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1A")]
[Token(Token = "0x400209C")]
[SerializeField]
private bool disableGravityPickupWhileSleeping = true;
// Token: 0x0400209D RID: 8349
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x400209D")]
[SerializeField]
[Header("Occupied settings")]
private Transform occupiedCollisionCapsuleStart;
// Token: 0x0400209E RID: 8350
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x400209E")]
[SerializeField]
private float occupiedCollisionCapsuleHeight = 2f;
// Token: 0x0400209F RID: 8351
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x400209F")]
[SerializeField]
private float occupiedCollisionCapsuleRadius = 0.25f;
// Token: 0x040020A0 RID: 8352
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x40020A0")]
private Tool EGFEJGHDNAI;
// Token: 0x040020A1 RID: 8353
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x40020A1")]
private bool IBEACGCJANK = true;
// Token: 0x040020A2 RID: 8354
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x40020A2")]
private TeleportationPortal[] HEBEMFJJEAA;
// Token: 0x040020A3 RID: 8355
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x40020A3")]
private DynamicTeleportRestriction[] KOOMLEKMFHH;
// Token: 0x040020A4 RID: 8356
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x40020A4")]
private bool KFHOHKDLDHP;
}