using System; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom.Core; using RecRoom.Core.AI; using RecRoom.Core.Pools; using UnityEngine; namespace RecRoom.Tools.Weapons { // Token: 0x02002665 RID: 9829 [Token(Token = "0x2002665")] [StructLayout(3)] public class BeamTrap : Trap { // Token: 0x06011090 RID: 69776 RVA: 0x004026E8 File Offset: 0x004008E8 [Token(Token = "0x6011090")] [Address(RVA = "0x15A4C40", Offset = "0x15A3640", VA = "0x1815A4C40", Slot = "13")] protected override void Awake() { base.Awake(); } // Token: 0x06011091 RID: 69777 RVA: 0x004026FC File Offset: 0x004008FC [Token(Token = "0x6011091")] [Address(RVA = "0x15A5880", Offset = "0x15A4280", VA = "0x1815A5880", Slot = "15")] protected override void Start() { base.Start(); GlobalPool instance = GlobalPool.ONCPNMDGGKG; PooledParticle pooledParticle = this.impactParticlePrefab; PooledParticle pooledParticle2 = instance.Acquire(pooledParticle); this.KNANGBCNMAF = pooledParticle2; Action action = new Action(this.GAJIJLPDHNI); IDisposable disposable = ScheduledUpdateMonoBehaviourExtensions.Update30hz(this, action); } // Token: 0x06011092 RID: 69778 RVA: 0x0040274C File Offset: 0x0040094C [Token(Token = "0x6011092")] [Address(RVA = "0x15A57F0", Offset = "0x15A41F0", VA = "0x1815A57F0")] protected void OnEnable() { RecRoomAudioClip fireLoop = this.FireLoop; Transform transform = this.origin; int num = 0; int num2 = 0; SFXAudioSource sfxaudioSource = AudioManager.StartLooping3DSFX(fireLoop, transform, num2, num); this.ODDIDOIDLHB = sfxaudioSource; } // Token: 0x06011093 RID: 69779 RVA: 0x00402780 File Offset: 0x00400980 [Token(Token = "0x6011093")] [Address(RVA = "0x15A5790", Offset = "0x15A4190", VA = "0x1815A5790")] protected void OnDisable() { AudioManager.StopLoopingSFX(this.ODDIDOIDLHB); } // Token: 0x06011094 RID: 69780 RVA: 0x00402798 File Offset: 0x00400998 [Token(Token = "0x6011094")] [Address(RVA = "0x15A4C50", Offset = "0x15A3650", VA = "0x1815A4C50")] private void GAJIJLPDHNI(float POGAEJIEPIM) { float num = this.beamLength; AnimationCurve beamWidthNoise = this.BeamWidthNoise; float time = Time.time; float num2 = beamWidthNoise.Evaluate(POGAEJIEPIM); Transform transform = this.origin; Transform transform2 = this.origin; float num3 = this.beamWidth; Vector3 vector; float z = vector.z; float num4 = this.beamLength; bool flag; if (flag) { PooledParticle knangbcnmaf = this.KNANGBCNMAF; num = num2; knangbcnmaf.k__BackingField.Play(); Transform transform3 = this.KNANGBCNMAF.transform; RecRoomAudioClip impactSFX = this.ImpactSFX; Quaternion quaternion; float z2 = quaternion.z; int num5 = 0; int num6 = 0; Player player; if (player != num6) { float z3 = Vector3.zero.z; float z4 = Vector3.zero.z; bool flag2; if (flag2) { } int num7 = 0; base.IAJAHFJCPIP(player, (Player.GAHEJKDCLLE)num7, num5); } int num8 = 0; Tool tool; if (tool != num8) { float z5 = Vector3.zero.z; float z6 = Vector3.zero.z; bool flag3; if (flag3) { } int num9 = 0; base.FBNMOCOCJCJ(tool, num9); } int num10 = 0; Enemy enemy; if (enemy != num10) { float z7 = Vector3.zero.z; float z8 = Vector3.zero.z; bool flag4; if (flag4) { } return; } } Transform transform4 = this.beam; Vector3 vector2; if (vector2.z <= num) { Transform transform5 = this.beam; Vector3 vector3; num = Mathf.Lerp(vector3.z, POGAEJIEPIM, num4); } Transform transform6 = this.beam; Transform transform7 = this.beam; Vector3 forward = Vector3.forward; Transform transform8 = this.beam; float z9 = forward.z; Vector3 vector4; float z10 = vector4.z; Vector3 vector5; float z11 = vector5.z; Vector3 vector6; float z12 = vector6.z; throw new NullReferenceException(); } // Token: 0x06011095 RID: 69781 RVA: 0x00402948 File Offset: 0x00400B48 [Token(Token = "0x6011095")] [Address(RVA = "0x15A5650", Offset = "0x15A4050", VA = "0x1815A5650", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); if (this.JLCCJAIAGFG) { this.JLCCJAIAGFG.Stop(); } if (this.ODDIDOIDLHB) { AudioManager.StopLoopingSFX(this.ODDIDOIDLHB); } if (this.KNANGBCNMAF) { this.KNANGBCNMAF.Stop(); } } // Token: 0x06011096 RID: 69782 RVA: 0x004029AC File Offset: 0x00400BAC [Token(Token = "0x6011096")] [Address(RVA = "0x15A5940", Offset = "0x15A4340", VA = "0x1815A5940")] public BeamTrap() { } // Token: 0x0400B501 RID: 46337 [global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")] [Token(Token = "0x400B501")] [SerializeField] [Header("Beam")] private Transform origin; // Token: 0x0400B502 RID: 46338 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")] [Token(Token = "0x400B502")] [SerializeField] private Transform beam; // Token: 0x0400B503 RID: 46339 [global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")] [Token(Token = "0x400B503")] [SerializeField] private PooledParticle impactParticlePrefab; // Token: 0x0400B504 RID: 46340 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC0")] [Token(Token = "0x400B504")] private PooledParticle KNANGBCNMAF; // Token: 0x0400B505 RID: 46341 [global::Cpp2IlInjected.FieldOffset(Offset = "0xC8")] [Token(Token = "0x400B505")] [SerializeField] private PooledParticle emberParticlePrefab; // Token: 0x0400B506 RID: 46342 [global::Cpp2IlInjected.FieldOffset(Offset = "0xD0")] [Token(Token = "0x400B506")] private PooledParticle JLCCJAIAGFG; // Token: 0x0400B507 RID: 46343 [global::Cpp2IlInjected.FieldOffset(Offset = "0xD8")] [Token(Token = "0x400B507")] [SerializeField] private float beamLength = 15f; // Token: 0x0400B508 RID: 46344 [global::Cpp2IlInjected.FieldOffset(Offset = "0xDC")] [Token(Token = "0x400B508")] [SerializeField] private float beamWidth = 0.25f; // Token: 0x0400B509 RID: 46345 [global::Cpp2IlInjected.FieldOffset(Offset = "0xE0")] [Token(Token = "0x400B509")] [SerializeField] private float beamExtendLerpSpeed = 10f; // Token: 0x0400B50A RID: 46346 [global::Cpp2IlInjected.FieldOffset(Offset = "0xE8")] [Token(Token = "0x400B50A")] [Tooltip("This is a multiplier over time (set to repeat)")] public AnimationCurve BeamWidthNoise; // Token: 0x0400B50B RID: 46347 [global::Cpp2IlInjected.FieldOffset(Offset = "0xF0")] [Token(Token = "0x400B50B")] public RecRoomAudioClip FireLoop; // Token: 0x0400B50C RID: 46348 [global::Cpp2IlInjected.FieldOffset(Offset = "0xF8")] [Token(Token = "0x400B50C")] public RecRoomAudioClip ImpactSFX; // Token: 0x0400B50D RID: 46349 [global::Cpp2IlInjected.FieldOffset(Offset = "0x100")] [Token(Token = "0x400B50D")] private SFXAudioSource ODDIDOIDLHB; } }