333 lines
12 KiB
C#
333 lines
12 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using Photon.Pun;
|
|
using Photon.Realtime;
|
|
using RecRoom.Core.Comfort;
|
|
using RecRoom.Core.ImageEffects;
|
|
using RecRoom.Core.Locomotion;
|
|
using RecRoom.Networking.SynchronizedFields;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Core.Vehicles
|
|
{
|
|
// Token: 0x02002DB0 RID: 11696
|
|
[Token(Token = "0x2002DB0")]
|
|
[RequireComponent(typeof(RigidbodyEx))]
|
|
[StructLayout(3)]
|
|
public abstract class BaseVehicle : MonoBehaviourPun
|
|
{
|
|
// Token: 0x170037E9 RID: 14313
|
|
// (get) Token: 0x06014CDF RID: 85215 RVA: 0x004FDEB4 File Offset: 0x004FC0B4
|
|
[Token(Token = "0x170037E9")]
|
|
public RigidbodyEx PNDEPIILPKD
|
|
{
|
|
[Token(Token = "0x6014CDF")]
|
|
[Address(RVA = "0x3D32F0", Offset = "0x3D1CF0", VA = "0x1803D32F0")]
|
|
get
|
|
{
|
|
return this.rigidbodyEx;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170037EA RID: 14314
|
|
// (get) Token: 0x06014CE0 RID: 85216 RVA: 0x004FDEC8 File Offset: 0x004FC0C8
|
|
// (set) Token: 0x06014CE1 RID: 85217 RVA: 0x004FDEDC File Offset: 0x004FC0DC
|
|
[Token(Token = "0x170037EA")]
|
|
public Photon.Realtime.Player IKAJMHDOILN
|
|
{
|
|
[Token(Token = "0x6014CE0")]
|
|
[Address(RVA = "0x4B81A0", Offset = "0x4B6BA0", VA = "0x1804B81A0")]
|
|
get
|
|
{
|
|
return this.GGAFBJILNJB;
|
|
}
|
|
[Token(Token = "0x6014CE1")]
|
|
[Address(RVA = "0x135A940", Offset = "0x1359340", VA = "0x18135A940")]
|
|
private set
|
|
{
|
|
SynchronizedField<int> jibkoohboek = this.JIBKOOHBOEK;
|
|
if (value != 0)
|
|
{
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CE2 RID: 85218 RVA: 0x004FDEFC File Offset: 0x004FC0FC
|
|
[Token(Token = "0x6014CE2")]
|
|
[Address(RVA = "0x135A710", Offset = "0x1359110", VA = "0x18135A710", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base..ctor();
|
|
int num;
|
|
Action action;
|
|
SynchronizedField<int> synchronizedField = new SynchronizedField(this, "VEHICLE.RID", -1, (SetterPermissionMode)num, action, num);
|
|
num = 0;
|
|
RigidbodyEx rigidbodyEx = this.rigidbodyEx;
|
|
this.JIBKOOHBOEK = synchronizedField;
|
|
rigidbodyEx.AddKinematic(this);
|
|
this.rigidbodyEx.EnableProxyMovement(this);
|
|
RigidbodyEx rigidbodyEx2 = this.rigidbodyEx;
|
|
int num2 = 0;
|
|
rigidbodyEx2.AddUpdateLodOverride(this, (EEDONNAHMFK)num2);
|
|
}
|
|
|
|
// Token: 0x06014CE3 RID: 85219 RVA: 0x004FDF60 File Offset: 0x004FC160
|
|
[Token(Token = "0x6014CE3")]
|
|
[Address(RVA = "0xAFCE20", Offset = "0xAFB820", VA = "0x180AFCE20", Slot = "15")]
|
|
protected virtual void Start()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06014CE4 RID: 85220 RVA: 0x004FDF70 File Offset: 0x004FC170
|
|
[Token(Token = "0x6014CE4")]
|
|
[Address(RVA = "0x135B030", Offset = "0x1359A30", VA = "0x18135B030", Slot = "14")]
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
RigidbodyEx rigidbodyEx = this.rigidbodyEx;
|
|
int num = 0;
|
|
if (rigidbodyEx != num)
|
|
{
|
|
this.rigidbodyEx.RemoveUpdateLodOverride(this);
|
|
}
|
|
Photon.Realtime.Player ggafbjilnjb = this.GGAFBJILNJB;
|
|
if (ggafbjilnjb != 0 && ggafbjilnjb.IsLocal)
|
|
{
|
|
CameraRig instance = SingletonMonoBehaviour.Instance;
|
|
int num2 = 0;
|
|
if (instance != num2)
|
|
{
|
|
PostProcessingEffectStack <PIIODFOEOFG>k__BackingField = SingletonMonoBehaviour.Instance.<PIIODFOEOFG>k__BackingField;
|
|
int num3 = 0;
|
|
<PIIODFOEOFG>k__BackingField.StopVehicleVignette((float)num3);
|
|
}
|
|
VRLocomotionComfortMode vrLocomotionComfortMode = SingletonMonoBehaviour.Instance.vrLocomotionComfortMode;
|
|
int num4 = 0;
|
|
vrLocomotionComfortMode.GPKJAKEJDPJ = num4 != 0;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CE5 RID: 85221 RVA: 0x004FE000 File Offset: 0x004FC200
|
|
[Token(Token = "0x6014CE5")]
|
|
[Address(RVA = "0x135AEB0", Offset = "0x13598B0", VA = "0x18135AEB0")]
|
|
public void LocalPlayerBoard()
|
|
{
|
|
bool flag;
|
|
if (this.GGAFBJILNJB == (ulong)0L && !flag)
|
|
{
|
|
if (!base.hasAuthority)
|
|
{
|
|
PhotonView photonView = base.photonView;
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
photonView.TransferOwnership(localPlayer);
|
|
}
|
|
Photon.Realtime.Player localPlayer2 = PhotonNetwork.LocalPlayer;
|
|
this.IKAJMHDOILN = localPlayer2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CE6 RID: 85222 RVA: 0x004FE054 File Offset: 0x004FC254
|
|
[Token(Token = "0x6014CE6")]
|
|
[Address(RVA = "0x3EDEA0", Offset = "0x3EC8A0", VA = "0x1803EDEA0")]
|
|
public ScreenVehicleController GetScreenController()
|
|
{
|
|
return this.screenController;
|
|
}
|
|
|
|
// Token: 0x06014CE7 RID: 85223
|
|
[Token(Token = "0x6014CE7")]
|
|
[Address(Slot = "16")]
|
|
protected abstract void HENCDABNPCK(global::Player IEKDDPPNFPF, out Vector3 DDHPAFKBMON, out Quaternion IGPENJBJADK);
|
|
|
|
// Token: 0x06014CE8 RID: 85224 RVA: 0x004FE068 File Offset: 0x004FC268
|
|
[Token(Token = "0x6014CE8")]
|
|
[Address(RVA = "0x135A870", Offset = "0x1359270", VA = "0x18135A870", Slot = "17")]
|
|
protected virtual void EPADDAIKCFF()
|
|
{
|
|
Photon.Realtime.Player localPlayer = PhotonNetwork.LocalPlayer;
|
|
int num = this.JIBKOOHBOEK.Get();
|
|
Photon.Realtime.Player player = localPlayer.Get(num);
|
|
Photon.Realtime.Player ggafbjilnjb = this.GGAFBJILNJB;
|
|
if (ggafbjilnjb != player)
|
|
{
|
|
if (ggafbjilnjb != 0)
|
|
{
|
|
this.JNDFDMCLKFI(ggafbjilnjb);
|
|
}
|
|
this.GGAFBJILNJB = player;
|
|
if (player != 0)
|
|
{
|
|
this.EPADDAIKCFF();
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CE9 RID: 85225 RVA: 0x004FE0C4 File Offset: 0x004FC2C4
|
|
[Token(Token = "0x6014CE9")]
|
|
[Address(RVA = "0x135A9A0", Offset = "0x13593A0", VA = "0x18135A9A0", Slot = "18")]
|
|
protected virtual void JNDFDMCLKFI(Photon.Realtime.Player DHCFIEABFFL)
|
|
{
|
|
int num = 0;
|
|
float time = Time.time;
|
|
this.PIADEBNKNGP = time;
|
|
if (DHCFIEABFFL.IsLocal)
|
|
{
|
|
global::Player <EGKJPJKLEAI>k__BackingField = global::Player.<EGKJPJKLEAI>k__BackingField;
|
|
this.Start();
|
|
RigidbodyEx rigidbodyEx = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx;
|
|
RigidbodyEx rigidbodyEx2 = this.rigidbodyEx;
|
|
rigidbodyEx.HICENEOPGOF = rigidbodyEx2;
|
|
RigidbodyEx rigidbodyEx3 = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx;
|
|
<EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx.PANKPLBABFB = num;
|
|
Transform physicsTransform = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx.ONHPOMOACHE;
|
|
RigidbodyEx rigidbodyEx4 = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Transform physicsTransform2 = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx.ONHPOMOACHE;
|
|
RigidbodyEx rigidbodyEx5 = <EGKJPJKLEAI>k__BackingField.trackingSpace._rigidbodyEx;
|
|
<EGKJPJKLEAI>k__BackingField.DJPBJNBCALE = this;
|
|
<EGKJPJKLEAI>k__BackingField.playerMovement.AddStationaryRestriction(this);
|
|
<EGKJPJKLEAI>k__BackingField.playerMovement.AddCollisionParentingRestriction(this);
|
|
bool flag;
|
|
if (flag)
|
|
{
|
|
}
|
|
ActionEvent localPlayerStartedTeleportEvent = PlayerMovementFeedback.LocalPlayerStartedTeleportEvent;
|
|
Action action = new Action(this.KAJIBDJIDCH);
|
|
PlayerMovementFeedback.LocalPlayerStartedTeleportEvent = localPlayerStartedTeleportEvent + action;
|
|
ActionEvent localPlayerSpawnEvent = global::Player.LocalPlayerSpawnEvent;
|
|
Action action2 = new Action(this.CFNNJOHMGON);
|
|
global::Player.LocalPlayerSpawnEvent = localPlayerSpawnEvent + action2;
|
|
PostProcessingEffectStack <PIIODFOEOFG>k__BackingField = SingletonMonoBehaviour.Instance.<PIIODFOEOFG>k__BackingField;
|
|
int num2 = 0;
|
|
<PIIODFOEOFG>k__BackingField.StartVehicleVignette((float)num2);
|
|
SingletonMonoBehaviour.Instance.vrLocomotionComfortMode.GPKJAKEJDPJ = true;
|
|
}
|
|
Action<BaseVehicle, Photon.Realtime.Player> playerBoardEvent = this.PlayerBoardEvent;
|
|
if (playerBoardEvent != 0)
|
|
{
|
|
playerBoardEvent(this, DHCFIEABFFL);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CEA RID: 85226 RVA: 0x004FE22C File Offset: 0x004FC42C
|
|
[Token(Token = "0x6014CEA")]
|
|
[Address(RVA = "0x135B1C0", Offset = "0x1359BC0", VA = "0x18135B1C0", Slot = "19")]
|
|
protected virtual void PGGHGJGDHGN(Photon.Realtime.Player OOGAOMKKPPL)
|
|
{
|
|
if (OOGAOMKKPPL.IsLocal)
|
|
{
|
|
global::Player <EGKJPJKLEAI>k__BackingField = global::Player.<EGKJPJKLEAI>k__BackingField;
|
|
PlayerTrackingSpace trackingSpace = <EGKJPJKLEAI>k__BackingField.trackingSpace;
|
|
RigidbodyEx rigidbodyEx = trackingSpace._rigidbodyEx;
|
|
int num = 0;
|
|
rigidbodyEx.HICENEOPGOF = num;
|
|
int num2 = 0;
|
|
<EGKJPJKLEAI>k__BackingField.DJPBJNBCALE = num2;
|
|
<EGKJPJKLEAI>k__BackingField.playerMovement.RemoveStationaryRestriction(this);
|
|
<EGKJPJKLEAI>k__BackingField.playerMovement.RemoveCollisionParentingRestriction(this);
|
|
int num3 = 0;
|
|
if (trackingSpace != num3)
|
|
{
|
|
}
|
|
ActionEvent localPlayerStartedTeleportEvent = PlayerMovementFeedback.LocalPlayerStartedTeleportEvent;
|
|
Action action = new Action(this.KAJIBDJIDCH);
|
|
PlayerMovementFeedback.LocalPlayerStartedTeleportEvent = localPlayerStartedTeleportEvent - action;
|
|
ActionEvent localPlayerSpawnEvent = global::Player.LocalPlayerSpawnEvent;
|
|
Action action2 = new Action(this.CFNNJOHMGON);
|
|
global::Player.LocalPlayerSpawnEvent = localPlayerSpawnEvent - action2;
|
|
SingletonMonoBehaviour.Instance.<PIIODFOEOFG>k__BackingField.StopVehicleVignette(0.2f);
|
|
VRLocomotionComfortMode vrLocomotionComfortMode = SingletonMonoBehaviour.Instance.vrLocomotionComfortMode;
|
|
int num4 = 0;
|
|
vrLocomotionComfortMode.GPKJAKEJDPJ = num4 != 0;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CEB RID: 85227 RVA: 0x004FE30C File Offset: 0x004FC50C
|
|
[Token(Token = "0x6014CEB")]
|
|
[Address(RVA = "0x135A810", Offset = "0x1359210", VA = "0x18135A810")]
|
|
private void KAJIBDJIDCH()
|
|
{
|
|
Photon.Realtime.Player ggafbjilnjb = this.GGAFBJILNJB;
|
|
if (ggafbjilnjb != 0 && ggafbjilnjb.IsLocal)
|
|
{
|
|
SynchronizedField<int> jibkoohboek = this.JIBKOOHBOEK;
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CEC RID: 85228 RVA: 0x004FE33C File Offset: 0x004FC53C
|
|
[Token(Token = "0x6014CEC")]
|
|
[Address(RVA = "0x135A810", Offset = "0x1359210", VA = "0x18135A810")]
|
|
private void CFNNJOHMGON()
|
|
{
|
|
Photon.Realtime.Player ggafbjilnjb = this.GGAFBJILNJB;
|
|
if (ggafbjilnjb != 0 && ggafbjilnjb.IsLocal)
|
|
{
|
|
SynchronizedField<int> jibkoohboek = this.JIBKOOHBOEK;
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06014CED RID: 85229 RVA: 0x004FE36C File Offset: 0x004FC56C
|
|
[Token(Token = "0x6014CED")]
|
|
[Address(RVA = "0x135B510", Offset = "0x1359F10", VA = "0x18135B510")]
|
|
protected BaseVehicle()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400DE0D RID: 56845
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400DE0D")]
|
|
[SerializeField]
|
|
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
|
|
protected RigidbodyEx rigidbodyEx;
|
|
|
|
// Token: 0x0400DE0E RID: 56846
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400DE0E")]
|
|
[SerializeField]
|
|
[Header("Screen Controls")]
|
|
private ScreenVehicleController screenController;
|
|
|
|
// Token: 0x0400DE0F RID: 56847
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400DE0F")]
|
|
protected float PIADEBNKNGP = float.MinValue;
|
|
|
|
// Token: 0x0400DE10 RID: 56848
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x400DE10")]
|
|
protected float BANOPMCKOCO = float.MinValue;
|
|
|
|
// Token: 0x0400DE11 RID: 56849
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x400DE11")]
|
|
private Photon.Realtime.Player GGAFBJILNJB;
|
|
|
|
// Token: 0x0400DE12 RID: 56850
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400DE12")]
|
|
private SynchronizedField<int> JIBKOOHBOEK;
|
|
|
|
// Token: 0x0400DE13 RID: 56851
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400DE13")]
|
|
public Action<BaseVehicle, Photon.Realtime.Player> PlayerBoardEvent;
|
|
|
|
// Token: 0x0400DE14 RID: 56852
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400DE14")]
|
|
public Action<BaseVehicle, Photon.Realtime.Player> PlayerExitEvent;
|
|
|
|
// Token: 0x0400DE15 RID: 56853
|
|
[Token(Token = "0x400DE15")]
|
|
private const float FDFMGHNBPLM = 0f;
|
|
|
|
// Token: 0x0400DE16 RID: 56854
|
|
[Token(Token = "0x400DE16")]
|
|
private const float MGEBKLAFIEH = 0.2f;
|
|
}
|
|
}
|