358 lines
12 KiB
C#
358 lines
12 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Core.DataStructures.Tokens;
|
|
using RecRoom.Core.Locomotion;
|
|
using RecRoom.Utils.OverridableFields;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Activities.StuntRunner
|
|
{
|
|
// Token: 0x0200269D RID: 9885
|
|
[Token(Token = "0x200269D")]
|
|
[StructLayout(3)]
|
|
public class PlayerLauncher : MonoBehaviour
|
|
{
|
|
// Token: 0x17002E8D RID: 11917
|
|
// (get) Token: 0x0601128C RID: 70284 RVA: 0x0040E0C8 File Offset: 0x0040C2C8
|
|
[Token(Token = "0x17002E8D")]
|
|
private bool AGMPOBIHFNF
|
|
{
|
|
[Token(Token = "0x601128C")]
|
|
[Address(RVA = "0x12F4540", Offset = "0x12F2F40", VA = "0x1812F4540")]
|
|
get
|
|
{
|
|
return this.IDOPKGFECHD.HasTokens;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601128D RID: 70285 RVA: 0x0040E0E8 File Offset: 0x0040C2E8
|
|
[Token(Token = "0x601128D")]
|
|
[Address(RVA = "0x1832D90", Offset = "0x1831790", VA = "0x181832D90")]
|
|
private void Awake()
|
|
{
|
|
float z = this.impulseDirectionOverride.value.z;
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger = this.locomotionCollider;
|
|
int num = 0;
|
|
if (locomotionCollisionTrigger != num)
|
|
{
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger2 = this.locomotionCollider;
|
|
LocomotionCollisionTrigger.AGJIHAOBCON agjihaobcon = new LocomotionCollisionTrigger.AGJIHAOBCON(this.APCAIAADDIM);
|
|
locomotionCollisionTrigger2.NCMJJBMBDHK += agjihaobcon;
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger3 = this.locomotionCollider;
|
|
LocomotionCollisionTrigger.AGJIHAOBCON agjihaobcon2 = new LocomotionCollisionTrigger.AGJIHAOBCON(this.CNJIDGPMCKA);
|
|
locomotionCollisionTrigger3.FFNEANOFKKI += agjihaobcon2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601128E RID: 70286 RVA: 0x0040E15C File Offset: 0x0040C35C
|
|
[Token(Token = "0x601128E")]
|
|
[Address(RVA = "0x18330D0", Offset = "0x1831AD0", VA = "0x1818330D0")]
|
|
private void OnDestroy()
|
|
{
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger = this.locomotionCollider;
|
|
int num = 0;
|
|
if (locomotionCollisionTrigger != num)
|
|
{
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger2 = this.locomotionCollider;
|
|
LocomotionCollisionTrigger.AGJIHAOBCON agjihaobcon = new LocomotionCollisionTrigger.AGJIHAOBCON(this.APCAIAADDIM);
|
|
locomotionCollisionTrigger2.NCMJJBMBDHK -= agjihaobcon;
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger3 = this.locomotionCollider;
|
|
LocomotionCollisionTrigger.AGJIHAOBCON agjihaobcon2 = new LocomotionCollisionTrigger.AGJIHAOBCON(this.CNJIDGPMCKA);
|
|
locomotionCollisionTrigger3.FFNEANOFKKI -= agjihaobcon2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0601128F RID: 70287 RVA: 0x0040E1BC File Offset: 0x0040C3BC
|
|
[Token(Token = "0x601128F")]
|
|
[Address(RVA = "0x1833820", Offset = "0x1832220", VA = "0x181833820")]
|
|
public void SetSandboxSettings(float IFGIPHAMCIC, float ANOABJEBEKK, float PMCAKBEJBFN, int MBDJHACAELM, bool OGNEEOLFMHI, bool EOCOIKINDII)
|
|
{
|
|
this.restitutionFactor = IFGIPHAMCIC;
|
|
this.impulseForce = ANOABJEBEKK;
|
|
float num;
|
|
this.impulseAirControlPercentageOverride = num;
|
|
this.maxVelocity = PMCAKBEJBFN;
|
|
this.impulseApplicationType = (PlayerLauncher.JABBBBDPJOM)((uint)2);
|
|
}
|
|
|
|
// Token: 0x06011290 RID: 70288 RVA: 0x0040E1FC File Offset: 0x0040C3FC
|
|
[Token(Token = "0x6011290")]
|
|
[Address(RVA = "0x18334C0", Offset = "0x1831EC0", VA = "0x1818334C0")]
|
|
private void OnTriggerEnter(Collider GLPOLGOBLAA)
|
|
{
|
|
LocomotionCollisionTrigger locomotionCollisionTrigger = this.locomotionCollider;
|
|
int num = 0;
|
|
if (locomotionCollisionTrigger == num)
|
|
{
|
|
Player <EGKJPJKLEAI>k__BackingField = Player.<EGKJPJKLEAI>k__BackingField;
|
|
Player player;
|
|
if (player == <EGKJPJKLEAI>k__BackingField && this.DKPEJMEGPFG(player))
|
|
{
|
|
TokenFlag idopkgfechd = this.IDOPKGFECHD;
|
|
GameObject gameObject = GLPOLGOBLAA.gameObject;
|
|
idopkgfechd.Add(gameObject);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06011291 RID: 70289 RVA: 0x0040E258 File Offset: 0x0040C458
|
|
[Token(Token = "0x6011291")]
|
|
[Address(RVA = "0x1833650", Offset = "0x1832050", VA = "0x181833650")]
|
|
private void OnTriggerExit(Collider GLPOLGOBLAA)
|
|
{
|
|
TokenFlag idopkgfechd = this.IDOPKGFECHD;
|
|
GameObject gameObject = GLPOLGOBLAA.gameObject;
|
|
idopkgfechd.Remove(gameObject);
|
|
}
|
|
|
|
// Token: 0x06011292 RID: 70290 RVA: 0x0040E280 File Offset: 0x0040C480
|
|
[Token(Token = "0x6011292")]
|
|
[Address(RVA = "0x1832C90", Offset = "0x1831690", VA = "0x181832C90")]
|
|
private void APCAIAADDIM(Player IEKDDPPNFPF, LEGLBECFPMF.GMACMDOKCGL OBHNEJDADJP)
|
|
{
|
|
if (this.launchFromForwardFaceOnly)
|
|
{
|
|
Transform transform = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
LEGLBECFPMF.GMACMDOKCGL gmacmdokcgl;
|
|
if (gmacmdokcgl != OBHNEJDADJP)
|
|
{
|
|
return;
|
|
}
|
|
}
|
|
if (this.DKPEJMEGPFG(IEKDDPPNFPF))
|
|
{
|
|
string text;
|
|
this.IDOPKGFECHD.Add(text);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06011293 RID: 70291 RVA: 0x0040E2C8 File Offset: 0x0040C4C8
|
|
[Token(Token = "0x6011293")]
|
|
[Address(RVA = "0x1832EA0", Offset = "0x18318A0", VA = "0x181832EA0")]
|
|
private void CNJIDGPMCKA(Player IEKDDPPNFPF, LEGLBECFPMF.GMACMDOKCGL OBHNEJDADJP)
|
|
{
|
|
string text;
|
|
this.IDOPKGFECHD.Remove(text);
|
|
}
|
|
|
|
// Token: 0x06011294 RID: 70292 RVA: 0x0040E2E8 File Offset: 0x0040C4E8
|
|
[Token(Token = "0x6011294")]
|
|
[Address(RVA = "0x1833760", Offset = "0x1832160", VA = "0x181833760")]
|
|
private bool PODHDPEPDPM(LEGLBECFPMF.GMACMDOKCGL OBHNEJDADJP)
|
|
{
|
|
if (!this.launchFromForwardFaceOnly)
|
|
{
|
|
return true;
|
|
}
|
|
Transform transform = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
LEGLBECFPMF.GMACMDOKCGL gmacmdokcgl;
|
|
return gmacmdokcgl == OBHNEJDADJP;
|
|
}
|
|
|
|
// Token: 0x06011295 RID: 70293 RVA: 0x0040E31C File Offset: 0x0040C51C
|
|
[Token(Token = "0x6011295")]
|
|
[Address(RVA = "0x1833690", Offset = "0x1832090", VA = "0x181833690")]
|
|
private string PEAPKPOAMKK(LEGLBECFPMF.GMACMDOKCGL OBHNEJDADJP)
|
|
{
|
|
if (OBHNEJDADJP == LEGLBECFPMF.GMACMDOKCGL.FLOOR)
|
|
{
|
|
return PlayerLauncher.LALNMGEBPKG;
|
|
}
|
|
if (OBHNEJDADJP != LEGLBECFPMF.GMACMDOKCGL.CEILING)
|
|
{
|
|
return PlayerLauncher.KGFAHMFMIDM;
|
|
}
|
|
return PlayerLauncher.ICGFKDKCBCE;
|
|
}
|
|
|
|
// Token: 0x06011296 RID: 70294 RVA: 0x0040E344 File Offset: 0x0040C544
|
|
[Token(Token = "0x6011296")]
|
|
[Address(RVA = "0x1832EE0", Offset = "0x18318E0", VA = "0x181832EE0")]
|
|
private bool DKPEJMEGPFG(Player IKPJFNLNPHM)
|
|
{
|
|
float unscaledTime = Time.unscaledTime;
|
|
if (!this.IDOPKGFECHD.HasTokens)
|
|
{
|
|
float unscaledTime2 = Time.unscaledTime;
|
|
this.GAIFAAMANCE = unscaledTime2;
|
|
if (this.impulseDirectionOverride != (ulong)0L)
|
|
{
|
|
}
|
|
Transform transform = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
PlayerLauncher.JABBBBDPJOM jabbbbdpjom = this.impulseApplicationType;
|
|
PlayerMovement playerMovement = IKPJFNLNPHM.playerMovement;
|
|
if (jabbbbdpjom != PlayerLauncher.JABBBBDPJOM.OVERRIDE_INBOUND_VELOCITY)
|
|
{
|
|
if (jabbbbdpjom != PlayerLauncher.JABBBBDPJOM.ADDITIVE_PLUS_REFLECT_INBOUND_VELOCITY)
|
|
{
|
|
float num = this.impulseAirControlPercentageOverride;
|
|
}
|
|
float num2 = this.maxVelocity;
|
|
float num3 = this.impulseAirControlPercentageOverride;
|
|
}
|
|
RecRoomAudioClip recRoomAudioClip = this.impulseApplicationSfx;
|
|
Transform transform2 = base.transform;
|
|
int num4 = 0;
|
|
int num5 = 0;
|
|
SFXAudioSource sfxaudioSource = AudioManager.Play3DSFX(recRoomAudioClip, transform2, num5, num4);
|
|
return true;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x06011297 RID: 70295 RVA: 0x0040E400 File Offset: 0x0040C600
|
|
[Token(Token = "0x6011297")]
|
|
[Address(RVA = "0x18331C0", Offset = "0x1831BC0", VA = "0x1818331C0")]
|
|
private void OnDrawGizmos()
|
|
{
|
|
BoxCollider boxCollider = this.triggerCollider;
|
|
int num = 0;
|
|
if (boxCollider != num && this.triggerCollider.isTrigger)
|
|
{
|
|
Color green = Color.green;
|
|
BoxCollider boxCollider2 = this.triggerCollider;
|
|
Transform transform = boxCollider2.transform;
|
|
BoxCollider boxCollider3 = this.triggerCollider;
|
|
Vector3 center = boxCollider2.center;
|
|
BoxCollider boxCollider4 = this.triggerCollider;
|
|
Vector3 size = boxCollider2.size;
|
|
Color blue = Color.blue;
|
|
Transform transform2 = base.transform;
|
|
Color red = Color.red;
|
|
Transform transform3 = base.transform;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06011298 RID: 70296 RVA: 0x0040E488 File Offset: 0x0040C688
|
|
[Token(Token = "0x6011298")]
|
|
[Address(RVA = "0x18338E0", Offset = "0x18322E0", VA = "0x1818338E0")]
|
|
public PlayerLauncher()
|
|
{
|
|
float z = Vector3.up.z;
|
|
this.restitutionFactor = 2f;
|
|
this.impulseForce = 3f;
|
|
this.maxVelocity = 15f;
|
|
TokenFlag tokenFlag = new TokenFlag();
|
|
this.IDOPKGFECHD = tokenFlag;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400B6C5 RID: 46789
|
|
[Token(Token = "0x400B6C5")]
|
|
private static string KGFAHMFMIDM = "WALL_COLL";
|
|
|
|
// Token: 0x0400B6C6 RID: 46790
|
|
[Token(Token = "0x400B6C6")]
|
|
private static string ICGFKDKCBCE = "CEILING_COLL";
|
|
|
|
// Token: 0x0400B6C7 RID: 46791
|
|
[Token(Token = "0x400B6C7")]
|
|
private static string LALNMGEBPKG = "FLOOR_COLL";
|
|
|
|
// Token: 0x0400B6C8 RID: 46792
|
|
[Token(Token = "0x400B6C8")]
|
|
private const float IFAEMACKFJO = 0.6f;
|
|
|
|
// Token: 0x0400B6C9 RID: 46793
|
|
[Token(Token = "0x400B6C9")]
|
|
private const float PHKFKLJFLFI = 0.05f;
|
|
|
|
// Token: 0x0400B6CA RID: 46794
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400B6CA")]
|
|
[SerializeField]
|
|
[Header("Locomotion Collision")]
|
|
private bool launchFromForwardFaceOnly = true;
|
|
|
|
// Token: 0x0400B6CB RID: 46795
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
|
|
[Token(Token = "0x400B6CB")]
|
|
[SerializeField]
|
|
[Header("Impulse")]
|
|
private float impulseAirControlPercentageOverride = 0.25f;
|
|
|
|
// Token: 0x0400B6CC RID: 46796
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400B6CC")]
|
|
[SerializeField]
|
|
private PlayerLauncher.JABBBBDPJOM impulseApplicationType = (PlayerLauncher.JABBBBDPJOM)((ulong)1L);
|
|
|
|
// Token: 0x0400B6CD RID: 46797
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x24")]
|
|
[Token(Token = "0x400B6CD")]
|
|
[SerializeField]
|
|
private OverridableVector3 impulseDirectionOverride;
|
|
|
|
// Token: 0x0400B6CE RID: 46798
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
|
|
[Token(Token = "0x400B6CE")]
|
|
[SerializeField]
|
|
private float restitutionFactor;
|
|
|
|
// Token: 0x0400B6CF RID: 46799
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400B6CF")]
|
|
[SerializeField]
|
|
private float impulseForce;
|
|
|
|
// Token: 0x0400B6D0 RID: 46800
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
|
|
[Token(Token = "0x400B6D0")]
|
|
[SerializeField]
|
|
private float maxVelocity;
|
|
|
|
// Token: 0x0400B6D1 RID: 46801
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x400B6D1")]
|
|
[SerializeField]
|
|
[Header("Feedback")]
|
|
private RecRoomAudioClip impulseApplicationSfx;
|
|
|
|
// Token: 0x0400B6D2 RID: 46802
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x400B6D2")]
|
|
[SerializeField]
|
|
[OCIDFHDICIP(JIBDPHMGEGO.Self, false, false)]
|
|
private BoxCollider triggerCollider;
|
|
|
|
// Token: 0x0400B6D3 RID: 46803
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x400B6D3")]
|
|
[SerializeField]
|
|
[OCIDFHDICIP(JIBDPHMGEGO.Self, false, false)]
|
|
private LocomotionCollisionTrigger locomotionCollider;
|
|
|
|
// Token: 0x0400B6D4 RID: 46804
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x400B6D4")]
|
|
private TokenFlag IDOPKGFECHD;
|
|
|
|
// Token: 0x0400B6D5 RID: 46805
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400B6D5")]
|
|
private float GAIFAAMANCE;
|
|
|
|
// Token: 0x0200269E RID: 9886
|
|
[Token(Token = "0x200269E")]
|
|
public enum JABBBBDPJOM
|
|
{
|
|
// Token: 0x0400B6D7 RID: 46807
|
|
[Token(Token = "0x400B6D7")]
|
|
ADDITIVE,
|
|
// Token: 0x0400B6D8 RID: 46808
|
|
[Token(Token = "0x400B6D8")]
|
|
ADDITIVE_PLUS_REFLECT_INBOUND_VELOCITY,
|
|
// Token: 0x0400B6D9 RID: 46809
|
|
[Token(Token = "0x400B6D9")]
|
|
OVERRIDE_INBOUND_VELOCITY
|
|
}
|
|
}
|
|
}
|