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(); 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(); this.HEBEMFJJEAA = componentsInChildren; DynamicTeleportRestriction[] componentsInChildren2 = base.GetComponentsInChildren(); 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; }