using System; using Cpp2IlInjected; using RecRoom.Core.AI; using RecRoom.Core.Pools; using UnityEngine; namespace RecRoom.Tools.Weapons { // Token: 0x02002C39 RID: 11321 [Token(Token = "0x2002C39")] public class BeamTrap : Trap { // Token: 0x06012E4E RID: 77390 RVA: 0x0044DB64 File Offset: 0x0044BD64 [Token(Token = "0x6012E4E")] [Address(RVA = "0x1872790", Offset = "0x1871790", VA = "0x181872790", Slot = "13")] protected override void Awake() { base.Awake(); } // Token: 0x06012E4F RID: 77391 RVA: 0x0044DB78 File Offset: 0x0044BD78 [Token(Token = "0x6012E4F")] [Address(RVA = "0x18733D0", Offset = "0x18723D0", VA = "0x1818733D0", 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 = ADIFCODGAML.ICPMHNDIIFK(this, action); } // Token: 0x06012E50 RID: 77392 RVA: 0x0044DBC8 File Offset: 0x0044BDC8 [Token(Token = "0x6012E50")] [Address(RVA = "0x1873340", Offset = "0x1872340", VA = "0x181873340")] 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: 0x06012E51 RID: 77393 RVA: 0x0044DBFC File Offset: 0x0044BDFC [Token(Token = "0x6012E51")] [Address(RVA = "0x18732E0", Offset = "0x18722E0", VA = "0x1818732E0")] protected void OnDisable() { AudioManager.StopLoopingSFX(this.ODDIDOIDLHB); } // Token: 0x06012E52 RID: 77394 RVA: 0x0044DC14 File Offset: 0x0044BE14 [Token(Token = "0x6012E52")] [Address(RVA = "0x18727A0", Offset = "0x18717A0", VA = "0x1818727A0")] 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; Collider collider; Player player = collider.PKPLHJFDDKE(num6); int num7 = 0; if (player != num7) { float z3 = Vector3.zero.z; float z4 = Vector3.zero.z; int num8 = 0; Rigidbody rigidbody; if (rigidbody != num8) { } Collider collider2; GameObject gameObject = collider2.gameObject; int num9 = 0; base.IAJAHFJCPIP(player, (Player.GAHEJKDCLLE)num9, num5); } Collider collider3; Tool tool = collider3.AMKJBLIFHPB(); int num10 = 0; if (tool != num10) { float z5 = Vector3.zero.z; float z6 = Vector3.zero.z; int num11 = 0; Rigidbody rigidbody2; if (rigidbody2 != num11) { } Collider collider4; GameObject gameObject2 = collider4.gameObject; int num12 = 0; base.FBNMOCOCJCJ(tool, num12); } int num13 = 0; Collider collider5; Enemy enemy = collider5.PABDAFCMNCK(num13); int num14 = 0; if (enemy != num14) { float z7 = Vector3.zero.z; float z8 = Vector3.zero.z; int num15 = 0; Rigidbody rigidbody3; if (rigidbody3 != num15) { } Collider collider6; GameObject gameObject3 = collider6.gameObject; 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: 0x06012E53 RID: 77395 RVA: 0x0044DE20 File Offset: 0x0044C020 [Token(Token = "0x6012E53")] [Address(RVA = "0x18731A0", Offset = "0x18721A0", VA = "0x1818731A0", 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: 0x06012E54 RID: 77396 RVA: 0x0044DE84 File Offset: 0x0044C084 [Token(Token = "0x6012E54")] [Address(RVA = "0x1873490", Offset = "0x1872490", VA = "0x181873490")] public BeamTrap() { } // Token: 0x0400C26F RID: 49775 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x400C26F")] [SerializeField] [Header("Beam")] private Transform origin; // Token: 0x0400C270 RID: 49776 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x400C270")] [SerializeField] private Transform beam; // Token: 0x0400C271 RID: 49777 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x400C271")] [SerializeField] private PooledParticle impactParticlePrefab; // Token: 0x0400C272 RID: 49778 [FieldOffset(Offset = "0xC0")] [Token(Token = "0x400C272")] private PooledParticle KNANGBCNMAF; // Token: 0x0400C273 RID: 49779 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x400C273")] [SerializeField] private PooledParticle emberParticlePrefab; // Token: 0x0400C274 RID: 49780 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x400C274")] private PooledParticle JLCCJAIAGFG; // Token: 0x0400C275 RID: 49781 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x400C275")] [SerializeField] private float beamLength = 15f; // Token: 0x0400C276 RID: 49782 [FieldOffset(Offset = "0xDC")] [Token(Token = "0x400C276")] [SerializeField] private float beamWidth = 0.25f; // Token: 0x0400C277 RID: 49783 [FieldOffset(Offset = "0xE0")] [Token(Token = "0x400C277")] [SerializeField] private float beamExtendLerpSpeed = 10f; // Token: 0x0400C278 RID: 49784 [FieldOffset(Offset = "0xE8")] [Token(Token = "0x400C278")] [Tooltip("This is a multiplier over time (set to repeat)")] public AnimationCurve BeamWidthNoise; // Token: 0x0400C279 RID: 49785 [FieldOffset(Offset = "0xF0")] [Token(Token = "0x400C279")] public RecRoomAudioClip FireLoop; // Token: 0x0400C27A RID: 49786 [FieldOffset(Offset = "0xF8")] [Token(Token = "0x400C27A")] public RecRoomAudioClip ImpactSFX; // Token: 0x0400C27B RID: 49787 [FieldOffset(Offset = "0x100")] [Token(Token = "0x400C27B")] private SFXAudioSource ODDIDOIDLHB; } }