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 k__BackingField = Player.k__BackingField; Player player; if (player == 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 } } }