using System; using Cpp2IlInjected; using Photon.Pun; using RecRoom.Core.AI; using RecRoom.Core.Pools; using UnityEngine; // Token: 0x020000AB RID: 171 [Token(Token = "0x20000AB")] [RequireComponent(typeof(PhotonView))] [RequireComponent(typeof(Steering))] public class LaserTrap : Trap { // Token: 0x170000AC RID: 172 // (get) Token: 0x06000478 RID: 1144 RVA: 0x00017BF0 File Offset: 0x00015DF0 [Token(Token = "0x170000AC")] private int CGLNIBDDDOL { [Token(Token = "0x6000478")] [Address(RVA = "0x916C30", Offset = "0x915A30", VA = "0x180916C30")] get { return this.JLIENGKKKMM.KLIAOAJIPKM(); } } // Token: 0x170000AD RID: 173 // (get) Token: 0x06000479 RID: 1145 RVA: 0x00017C10 File Offset: 0x00015E10 [Token(Token = "0x170000AD")] private int AEJNEFKOJJC { [Token(Token = "0x6000479")] [Address(RVA = "0x917410", Offset = "0x916210", VA = "0x180917410")] get { return this.JLIENGKKKMM.HHKKJDOCBNH(); } } // Token: 0x170000AE RID: 174 // (get) Token: 0x0600047A RID: 1146 RVA: 0x00017C30 File Offset: 0x00015E30 [Token(Token = "0x170000AE")] private int CAJGLFMJBIC { [Token(Token = "0x600047A")] [Address(RVA = "0x9178F0", Offset = "0x9166F0", VA = "0x1809178F0")] get { int num = this.initialNodeIndex; Transform[] array = this.targetPath; if (num < array.Length) { return num; } return 0; } } // Token: 0x0600047B RID: 1147 RVA: 0x00017C60 File Offset: 0x00015E60 [Token(Token = "0x600047B")] [Address(RVA = "0x9166F0", Offset = "0x9154F0", VA = "0x1809166F0", Slot = "13")] protected override void Awake() { base.Awake(); Steering component = base.GetComponent(); int num = this.initialNodeIndex; this.EJPHOFNOGLO = component; Transform[] array = this.targetPath; if (num < array.Length) { } Action action = new Action(this.JHBLEPIBGBJ); NMIGJEKFNME nmigjekfnme; this.JLIENGKKKMM = nmigjekfnme; } // Token: 0x0600047C RID: 1148 RVA: 0x00017CB8 File Offset: 0x00015EB8 [Token(Token = "0x600047C")] [Address(RVA = "0x918440", Offset = "0x917240", VA = "0x180918440", Slot = "15")] protected override void Start() { base.Start(); this.JHBLEPIBGBJ(); if (base.OGIBLNIIHDK) { this.AHNPPGHNCFA(); return; } } // Token: 0x0600047D RID: 1149 RVA: 0x00017CE4 File Offset: 0x00015EE4 [Token(Token = "0x600047D")] [Address(RVA = "0x917B50", Offset = "0x916950", VA = "0x180917B50", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); this.ENFOBANIEAA(); this.KNANGBCNMAF = (ulong)0L; } // Token: 0x0600047E RID: 1150 RVA: 0x00017D08 File Offset: 0x00015F08 [Token(Token = "0x600047E")] [Address(RVA = "0x918480", Offset = "0x917280", VA = "0x180918480")] private void Update() { int num = 0; Transform[] array = this.lasers; Transform[] array2; if (num < array.Length) { this.PKLFMHOPBHI(num); array2 = this.lasers; num++; } if (array2 != 0) { if (this.EJPHOFNOGLO.k__BackingField) { this.NDNJFMDJOOL(); } this.AHNPPGHNCFA(); } } // Token: 0x0600047F RID: 1151 RVA: 0x00017D60 File Offset: 0x00015F60 [Token(Token = "0x600047F")] [Address(RVA = "0x917800", Offset = "0x916600", VA = "0x180917800", Slot = "17")] protected override void MKBHMJKBMIB() { base.MKBHMJKBMIB(); if (!base.PAJGCGDFHKK) { this.ENFOBANIEAA(); return; } if (base.OGIBLNIIHDK) { int num = this.initialNodeIndex; NMIGJEKFNME jliengkkkmm = this.JLIENGKKKMM; Transform[] array = this.targetPath; if (num < array.Length) { } int num2 = 0; Transform[] array2 = this.targetPath; int num3 = 0; jliengkkkmm.BDJFGEJFPPO(num2, num3); Transform transform = base.transform; Quaternion dndpeablhkg = this.DNDPEABLHKG; transform.rotation = dndpeablhkg; } this.DJFFFANBFBG(); } // Token: 0x06000480 RID: 1152 RVA: 0x00017DE8 File Offset: 0x00015FE8 [Token(Token = "0x6000480")] [Address(RVA = "0x917EA0", Offset = "0x916CA0", VA = "0x180917EA0")] private void PKLFMHOPBHI(int EOAGCAJJILD) { Transform[] array = this.lasers; int length = array.Length; if (EOAGCAJJILD < length) { Transform transform = array[EOAGCAJJILD]; int num = 0; int num2; if (num2 > 0) { RaycastHit[] olmbgbhckgg = LaserTrap.OLMBGBHCKGG; } if (num2 > 0) { RaycastHit[] olmbgbhckgg2 = LaserTrap.OLMBGBHCKGG; long num3 = (long)((ulong)num * (ulong)44L); bool flag; if (flag) { goto IL_63; } num++; } PooledParticle[] knangbcnmaf = this.KNANGBCNMAF; if (knangbcnmaf == 0 || EOAGCAJJILD >= knangbcnmaf.Length) { return; } IL_63: RaycastHit[] olmbgbhckgg3 = LaserTrap.OLMBGBHCKGG; long num4 = (long)((ulong)num * (ulong)44L); Vector3 point = olmbgbhckgg3.point; RaycastHit[] olmbgbhckgg4 = LaserTrap.OLMBGBHCKGG; PooledParticle pooledParticle = knangbcnmaf[EOAGCAJJILD]; int num5 = 0; if (pooledParticle != num5) { int num6 = 0; pooledParticle.transform.position = num6; Transform transform2 = pooledParticle.transform; } } } // Token: 0x06000481 RID: 1153 RVA: 0x00017EB4 File Offset: 0x000160B4 [Token(Token = "0x6000481")] [Address(RVA = "0x916C80", Offset = "0x915A80", VA = "0x180916C80")] private bool HKCLHNENCOJ(RaycastHit PAOKLBNMNFL) { float distance = PAOKLBNMNFL.distance; if (distance <= distance) { int num = 0; Player player = PAOKLBNMNFL.collider.PKPLHJFDDKE(num); int num2 = 0; if (player != num2) { Vector3 zero = Vector3.zero; Vector3 zero2 = Vector3.zero; Rigidbody rigidbody = PAOKLBNMNFL.rigidbody; int num3 = 0; if (rigidbody != num3) { Rigidbody rigidbody2 = PAOKLBNMNFL.rigidbody; } GameObject gameObject = PAOKLBNMNFL.collider.gameObject; } return true; } throw new NullReferenceException(); } // Token: 0x06000482 RID: 1154 RVA: 0x00017F2C File Offset: 0x0001612C [Token(Token = "0x6000482")] [Address(RVA = "0x916F50", Offset = "0x915D50", VA = "0x180916F50")] private void JHBLEPIBGBJ() { Steering ejphofnoglo = this.EJPHOFNOGLO; float num = this.rotationSpeed; ejphofnoglo.k__BackingField = num; Transform[] array = this.targetPath; int num2 = this.JLIENGKKKMM.KLIAOAJIPKM(); int num3 = this.JLIENGKKKMM.KLIAOAJIPKM(); Transform[] array2 = this.targetPath; if (num3 < array2.Length) { Vector3 up = Vector3.up; if (this.targetPath.Length != 2) { if (this.CGLNIBDDDOL != 0) { int num4 = this.CGLNIBDDDOL; int length = this.targetPath.Length; if (num4 != length) { int num5 = this.CGLNIBDDDOL; int num6 = this.CGLNIBDDDOL; } } Vector3 up2 = Vector3.up; } Transform[] array3 = this.targetPath; int num7 = this.JLIENGKKKMM.KLIAOAJIPKM(); Transform transform = array3[num7]; Transform transform2 = base.transform; if (this.laserRotationMode == LaserTrap.DKGLJNEEABE.PARALLEL) { } } } // Token: 0x06000483 RID: 1155 RVA: 0x0001800C File Offset: 0x0001620C [Token(Token = "0x6000483")] [Address(RVA = "0x917580", Offset = "0x916380", VA = "0x180917580")] private Vector3 LECMFJKMBMF(int HKJKICFLEAE) { Vector3 vector; float z = vector.z; throw new NullReferenceException(); } // Token: 0x06000484 RID: 1156 RVA: 0x0001802C File Offset: 0x0001622C [Token(Token = "0x6000484")] [Address(RVA = "0x9165F0", Offset = "0x9153F0", VA = "0x1809165F0")] private void AHNPPGHNCFA() { LaserTrap.IODDFAHCJFH ioddfahcjfh = this.pathingMode; float num = this.slowdownAngle; if (ioddfahcjfh != LaserTrap.IODDFAHCJFH.LOOP && ioddfahcjfh == LaserTrap.IODDFAHCJFH.PING_PONG && this.JLIENGKKKMM.KLIAOAJIPKM() > 0) { int num2 = this.JLIENGKKKMM.KLIAOAJIPKM(); int length = this.targetPath.Length; if (num2 < length) { } } Steering ejphofnoglo = this.EJPHOFNOGLO; Quaternion dndpeablhkg = this.DNDPEABLHKG; ejphofnoglo.Look(dndpeablhkg, num, 0.1f); } // Token: 0x06000485 RID: 1157 RVA: 0x000180A0 File Offset: 0x000162A0 [Token(Token = "0x6000485")] [Address(RVA = "0x917930", Offset = "0x916730", VA = "0x180917930")] private void NDNJFMDJOOL() { int num = this.JLIENGKKKMM.KLIAOAJIPKM(); int num2 = this.JLIENGKKKMM.HHKKJDOCBNH(); LaserTrap.IODDFAHCJFH ioddfahcjfh = this.pathingMode; if (ioddfahcjfh <= LaserTrap.IODDFAHCJFH.PING_PONG_STOP_AT_EACH_NODE) { int length = this.targetPath.Length; if (num != 0) { int num3 = length - 1; if (num != num3) { num -= num2; uint num4; num += (int)num4; } } } if (ioddfahcjfh <= LaserTrap.IODDFAHCJFH.PING_PONG_STOP_AT_EACH_NODE) { Transform[] array = this.targetPath; } int num5 = this.JLIENGKKKMM.KLIAOAJIPKM(); NMIGJEKFNME jliengkkkmm = this.JLIENGKKKMM; int num6 = this.JLIENGKKKMM.KLIAOAJIPKM(); } // Token: 0x06000486 RID: 1158 RVA: 0x00018128 File Offset: 0x00016328 [Token(Token = "0x6000486")] [Address(RVA = "0x917460", Offset = "0x916260", VA = "0x180917460")] private int KLHGEPIPNJL(int CKDLPAGEAJH, int EPELHDGENMK) { LaserTrap.IODDFAHCJFH ioddfahcjfh = this.pathingMode; if (ioddfahcjfh <= LaserTrap.IODDFAHCJFH.PING_PONG_STOP_AT_EACH_NODE) { int length = this.targetPath.Length; if (CKDLPAGEAJH != 0) { int num = length - 1; if (CKDLPAGEAJH != num) { return CKDLPAGEAJH; } return CKDLPAGEAJH; } } while (ioddfahcjfh > LaserTrap.IODDFAHCJFH.PING_PONG_STOP_AT_EACH_NODE) { } Transform[] array = this.targetPath; int num2 = CKDLPAGEAJH + 1; return CKDLPAGEAJH; } // Token: 0x06000487 RID: 1159 RVA: 0x0001817C File Offset: 0x0001637C [Token(Token = "0x6000487")] [Address(RVA = "0x916F20", Offset = "0x915D20", VA = "0x180916F20")] private int IFNBKBIFDJG(int CKDLPAGEAJH) { Transform[] array = this.targetPath; int num = CKDLPAGEAJH + 1; return CKDLPAGEAJH; } // Token: 0x06000488 RID: 1160 RVA: 0x000181A0 File Offset: 0x000163A0 [Token(Token = "0x6000488")] [Address(RVA = "0x916800", Offset = "0x915600", VA = "0x180916800")] private int CPGDAOCGDPJ(int CKDLPAGEAJH, int EPELHDGENMK) { int length = this.targetPath.Length; if (CKDLPAGEAJH != 0) { int num = length - 1; if (CKDLPAGEAJH != num) { uint num2; num2 += (uint)CKDLPAGEAJH; } return num; } throw new NullReferenceException(); } // Token: 0x06000489 RID: 1161 RVA: 0x000181D0 File Offset: 0x000163D0 [Token(Token = "0x6000489")] [Address(RVA = "0x9168F0", Offset = "0x9156F0", VA = "0x1809168F0")] private void DJFFFANBFBG() { this.ENFOBANIEAA(); PooledParticle[] knangbcnmaf = this.KNANGBCNMAF; if (knangbcnmaf == 0) { PooledParticle[] array = new PooledParticle[this.lasers.Length]; this.KNANGBCNMAF = array; } int num = 0; if (num < knangbcnmaf.Length) { GlobalPool instance = GlobalPool.ONCPNMDGGKG; PooledParticle pooledParticle = this.impactParticlePrefab; PooledParticle pooledParticle2 = instance.Acquire(pooledParticle); throw new ArrayTypeMismatchException(); } } // Token: 0x0600048A RID: 1162 RVA: 0x00018284 File Offset: 0x00016484 [Token(Token = "0x600048A")] [Address(RVA = "0x916AE0", Offset = "0x9158E0", VA = "0x180916AE0")] private void ENFOBANIEAA() { PooledParticle[] knangbcnmaf = this.KNANGBCNMAF; if (knangbcnmaf != 0) { int num = 0; if (num < knangbcnmaf.Length) { PooledParticle pooledParticle = knangbcnmaf[num]; int num2 = 0; if (pooledParticle != num2) { this.KNANGBCNMAF[num].Stop(); this.KNANGBCNMAF[0] = num; } PooledParticle[] knangbcnmaf2 = this.KNANGBCNMAF; num++; } } } // Token: 0x0600048B RID: 1163 RVA: 0x000182EC File Offset: 0x000164EC [Token(Token = "0x600048B")] [Address(RVA = "0x917B80", Offset = "0x916980", VA = "0x180917B80")] private void OnDrawGizmos() { Transform[] array = this.targetPath; if (array != 0 && array.Length != 0) { int num = 0; if (num < array.Length) { Color white = Color.white; Transform transform = base.transform; Vector3 vector; float z = vector.z; Transform transform2 = this.targetPath[num]; Vector3 vector2; float z2 = vector2.z; Color green = Color.green; Transform transform3 = this.targetPath[num]; Vector3 vector3; float z3 = vector3.z; Transform[] array2 = this.targetPath; int num2 = array2.Length - 1; if (num < num2) { Transform transform4 = array2[num]; Vector3 vector4; float z4 = vector4.z; Transform[] array3 = this.targetPath; Vector3 vector5; float z5 = vector5.z; } num++; } } } // Token: 0x0600048C RID: 1164 RVA: 0x000183B4 File Offset: 0x000165B4 [Token(Token = "0x600048C")] [Address(RVA = "0x9185D0", Offset = "0x9173D0", VA = "0x1809185D0")] public LaserTrap() { Quaternion identity = Quaternion.identity; LMGJGGMGNCG lmgjggmgncg = new LMGJGGMGNCG(); this.FHMMMGLHBFN = lmgjggmgncg; base..ctor(); } // Token: 0x0600048D RID: 1165 RVA: 0x000183FC File Offset: 0x000165FC // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600048D")] [Address(RVA = "0x918510", Offset = "0x917310", VA = "0x180918510")] static LaserTrap() { float z = Vector3.one.z; Vector3 vector; float z2 = vector.z; } // Token: 0x040003C5 RID: 965 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x40003C5")] [SerializeField] [Header("Laser")] private Transform[] lasers; // Token: 0x040003C6 RID: 966 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x40003C6")] [SerializeField] private float maxLaserLength = 10f; // Token: 0x040003C7 RID: 967 [FieldOffset(Offset = "0xB4")] [Token(Token = "0x40003C7")] [SerializeField] private float rotationSpeed = 30f; // Token: 0x040003C8 RID: 968 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x40003C8")] [SerializeField] private float slowdownAngle = 5f; // Token: 0x040003C9 RID: 969 [FieldOffset(Offset = "0xC0")] [Token(Token = "0x40003C9")] [SerializeField] [Header("Path")] private Transform[] targetPath; // Token: 0x040003CA RID: 970 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x40003CA")] [SerializeField] private int initialNodeIndex; // Token: 0x040003CB RID: 971 [FieldOffset(Offset = "0xCC")] [Token(Token = "0x40003CB")] [SerializeField] private LaserTrap.IODDFAHCJFH pathingMode; // Token: 0x040003CC RID: 972 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x40003CC")] [SerializeField] private LaserTrap.DKGLJNEEABE laserRotationMode; // Token: 0x040003CD RID: 973 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x40003CD")] [SerializeField] [Header("Feedback")] private PooledParticle impactParticlePrefab; // Token: 0x040003CE RID: 974 [Token(Token = "0x40003CE")] private static readonly RaycastHit[] OLMBGBHCKGG = new RaycastHit[8]; // Token: 0x040003CF RID: 975 [FieldOffset(Offset = "0xE0")] [Token(Token = "0x40003CF")] private NMIGJEKFNME JLIENGKKKMM; // Token: 0x040003D0 RID: 976 [FieldOffset(Offset = "0xE8")] [Token(Token = "0x40003D0")] private Steering EJPHOFNOGLO; // Token: 0x040003D1 RID: 977 [FieldOffset(Offset = "0xF0")] [Token(Token = "0x40003D1")] private Quaternion DNDPEABLHKG; // Token: 0x040003D2 RID: 978 [FieldOffset(Offset = "0x100")] [Token(Token = "0x40003D2")] private LMGJGGMGNCG FHMMMGLHBFN; // Token: 0x040003D3 RID: 979 [FieldOffset(Offset = "0x108")] [Token(Token = "0x40003D3")] private PooledParticle[] KNANGBCNMAF; // Token: 0x040003D4 RID: 980 [Token(Token = "0x40003D4")] private static Vector3 NDNGAFCPDCG; // Token: 0x020000AC RID: 172 [Token(Token = "0x20000AC")] private enum IODDFAHCJFH { // Token: 0x040003D6 RID: 982 [Token(Token = "0x40003D6")] PING_PONG, // Token: 0x040003D7 RID: 983 [Token(Token = "0x40003D7")] PING_PONG_STOP_AT_EACH_NODE, // Token: 0x040003D8 RID: 984 [Token(Token = "0x40003D8")] LOOP, // Token: 0x040003D9 RID: 985 [Token(Token = "0x40003D9")] LOOP_STOP_AT_EACH_NODE } // Token: 0x020000AD RID: 173 [Token(Token = "0x20000AD")] private enum DKGLJNEEABE { // Token: 0x040003DB RID: 987 [Token(Token = "0x40003DB")] PARALLEL, // Token: 0x040003DC RID: 988 [Token(Token = "0x40003DC")] PERPENDICULAR } }