Files
27Aug2021-Cpp2IL-Dump/Assembly-CSharp/RecRoom/Activities/StuntRunner/PlayerLauncher.cs
T
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

355 lines
12 KiB
C#

using System;
using Cpp2IlInjected;
using RecRoom.Core.Locomotion;
using RecRoom.Utils.OverridableFields;
using UnityEngine;
namespace RecRoom.Activities.StuntRunner
{
// Token: 0x02002C7B RID: 11387
[Token(Token = "0x2002C7B")]
public class PlayerLauncher : MonoBehaviour
{
// Token: 0x1700350A RID: 13578
// (get) Token: 0x06013092 RID: 77970 RVA: 0x0045A43C File Offset: 0x0045863C
[Token(Token = "0x1700350A")]
private bool AGMPOBIHFNF
{
[Token(Token = "0x6013092")]
[Address(RVA = "0x18BE520", Offset = "0x18BD520", VA = "0x1818BE520")]
get
{
return this.IDOPKGFECHD.CFLJGNJLBFG;
}
}
// Token: 0x06013093 RID: 77971 RVA: 0x0045A45C File Offset: 0x0045865C
[Token(Token = "0x6013093")]
[Address(RVA = "0x18D37D0", Offset = "0x18D27D0", VA = "0x1818D37D0")]
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: 0x06013094 RID: 77972 RVA: 0x0045A4D0 File Offset: 0x004586D0
[Token(Token = "0x6013094")]
[Address(RVA = "0x18D3B10", Offset = "0x18D2B10", VA = "0x1818D3B10")]
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: 0x06013095 RID: 77973 RVA: 0x0045A530 File Offset: 0x00458730
[Token(Token = "0x6013095")]
[Address(RVA = "0x18D4260", Offset = "0x18D3260", VA = "0x1818D4260")]
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: 0x06013096 RID: 77974 RVA: 0x0045A570 File Offset: 0x00458770
[Token(Token = "0x6013096")]
[Address(RVA = "0x18D3F00", Offset = "0x18D2F00", VA = "0x1818D3F00")]
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))
{
AOLMGGAPKEH idopkgfechd = this.IDOPKGFECHD;
GameObject gameObject = GLPOLGOBLAA.gameObject;
idopkgfechd.BPAJKKAGPKB(gameObject);
}
}
}
// Token: 0x06013097 RID: 77975 RVA: 0x0045A5CC File Offset: 0x004587CC
[Token(Token = "0x6013097")]
[Address(RVA = "0x18D4090", Offset = "0x18D3090", VA = "0x1818D4090")]
private void OnTriggerExit(Collider GLPOLGOBLAA)
{
AOLMGGAPKEH idopkgfechd = this.IDOPKGFECHD;
GameObject gameObject = GLPOLGOBLAA.gameObject;
idopkgfechd.BIHKNNPGGKP(gameObject);
}
// Token: 0x06013098 RID: 77976 RVA: 0x0045A5F4 File Offset: 0x004587F4
[Token(Token = "0x6013098")]
[Address(RVA = "0x18D36D0", Offset = "0x18D26D0", VA = "0x1818D36D0")]
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.BPAJKKAGPKB(text);
}
}
// Token: 0x06013099 RID: 77977 RVA: 0x0045A63C File Offset: 0x0045883C
[Token(Token = "0x6013099")]
[Address(RVA = "0x18D38E0", Offset = "0x18D28E0", VA = "0x1818D38E0")]
private void CNJIDGPMCKA(Player IEKDDPPNFPF, LEGLBECFPMF.GMACMDOKCGL OBHNEJDADJP)
{
string text;
this.IDOPKGFECHD.BIHKNNPGGKP(text);
}
// Token: 0x0601309A RID: 77978 RVA: 0x0045A65C File Offset: 0x0045885C
[Token(Token = "0x601309A")]
[Address(RVA = "0x18D41A0", Offset = "0x18D31A0", VA = "0x1818D41A0")]
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: 0x0601309B RID: 77979 RVA: 0x0045A690 File Offset: 0x00458890
[Token(Token = "0x601309B")]
[Address(RVA = "0x18D40D0", Offset = "0x18D30D0", VA = "0x1818D40D0")]
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: 0x0601309C RID: 77980 RVA: 0x0045A6B8 File Offset: 0x004588B8
[Token(Token = "0x601309C")]
[Address(RVA = "0x18D3920", Offset = "0x18D2920", VA = "0x1818D3920")]
private bool DKPEJMEGPFG(Player IKPJFNLNPHM)
{
float unscaledTime = Time.unscaledTime;
if (!this.IDOPKGFECHD.CFLJGNJLBFG)
{
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: 0x0601309D RID: 77981 RVA: 0x0045A774 File Offset: 0x00458974
[Token(Token = "0x601309D")]
[Address(RVA = "0x18D3C00", Offset = "0x18D2C00", VA = "0x1818D3C00")]
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: 0x0601309E RID: 77982 RVA: 0x0045A7FC File Offset: 0x004589FC
[Token(Token = "0x601309E")]
[Address(RVA = "0x18D4320", Offset = "0x18D3320", VA = "0x1818D4320")]
public PlayerLauncher()
{
float z = Vector3.up.z;
this.restitutionFactor = 2f;
this.impulseForce = 3f;
this.maxVelocity = 15f;
AOLMGGAPKEH aolmggapkeh = new AOLMGGAPKEH();
this.IDOPKGFECHD = aolmggapkeh;
base..ctor();
}
// Token: 0x0400C44F RID: 50255
[Token(Token = "0x400C44F")]
private static string KGFAHMFMIDM = "WALL_COLL";
// Token: 0x0400C450 RID: 50256
[Token(Token = "0x400C450")]
private static string ICGFKDKCBCE = "CEILING_COLL";
// Token: 0x0400C451 RID: 50257
[Token(Token = "0x400C451")]
private static string LALNMGEBPKG = "FLOOR_COLL";
// Token: 0x0400C452 RID: 50258
[Token(Token = "0x400C452")]
private const float IFAEMACKFJO = 0.6f;
// Token: 0x0400C453 RID: 50259
[Token(Token = "0x400C453")]
private const float PHKFKLJFLFI = 0.05f;
// Token: 0x0400C454 RID: 50260
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C454")]
[SerializeField]
[Header("Locomotion Collision")]
private bool launchFromForwardFaceOnly = true;
// Token: 0x0400C455 RID: 50261
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400C455")]
[SerializeField]
[Header("Impulse")]
private float impulseAirControlPercentageOverride = 0.25f;
// Token: 0x0400C456 RID: 50262
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400C456")]
[SerializeField]
private PlayerLauncher.JABBBBDPJOM impulseApplicationType = (PlayerLauncher.JABBBBDPJOM)((ulong)1L);
// Token: 0x0400C457 RID: 50263
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x400C457")]
[SerializeField]
private OverridableVector3 impulseDirectionOverride;
// Token: 0x0400C458 RID: 50264
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x400C458")]
[SerializeField]
private float restitutionFactor;
// Token: 0x0400C459 RID: 50265
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400C459")]
[SerializeField]
private float impulseForce;
// Token: 0x0400C45A RID: 50266
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x400C45A")]
[SerializeField]
private float maxVelocity;
// Token: 0x0400C45B RID: 50267
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400C45B")]
[SerializeField]
[Header("Feedback")]
private RecRoomAudioClip impulseApplicationSfx;
// Token: 0x0400C45C RID: 50268
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400C45C")]
[SerializeField]
[OAGJHJAIMMP(FHBJCBPFODN.Self, false, false, false)]
private BoxCollider triggerCollider;
// Token: 0x0400C45D RID: 50269
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400C45D")]
[SerializeField]
[OAGJHJAIMMP(FHBJCBPFODN.Self, false, false, false)]
private LocomotionCollisionTrigger locomotionCollider;
// Token: 0x0400C45E RID: 50270
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400C45E")]
private AOLMGGAPKEH IDOPKGFECHD;
// Token: 0x0400C45F RID: 50271
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400C45F")]
private float GAIFAAMANCE;
// Token: 0x02002C7C RID: 11388
[Token(Token = "0x2002C7C")]
public enum JABBBBDPJOM
{
// Token: 0x0400C461 RID: 50273
[Token(Token = "0x400C461")]
ADDITIVE,
// Token: 0x0400C462 RID: 50274
[Token(Token = "0x400C462")]
ADDITIVE_PLUS_REFLECT_INBOUND_VELOCITY,
// Token: 0x0400C463 RID: 50275
[Token(Token = "0x400C463")]
OVERRIDE_INBOUND_VELOCITY
}
}
}