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: 0x00017B84 File Offset: 0x00015D84 [Token(Token = "0x170000AC")] private int CGLNIBDDDOL { [Token(Token = "0x6000478")] [Address(RVA = "0x1406370", Offset = "0x1405370", VA = "0x181406370")] get { return this.JLIENGKKKMM.KLIAOAJIPKM(); } } // Token: 0x170000AD RID: 173 // (get) Token: 0x06000479 RID: 1145 RVA: 0x00017BA4 File Offset: 0x00015DA4 [Token(Token = "0x170000AD")] private int AEJNEFKOJJC { [Token(Token = "0x6000479")] [Address(RVA = "0x1406B50", Offset = "0x1405B50", VA = "0x181406B50")] get { return this.JLIENGKKKMM.HHKKJDOCBNH(); } } // Token: 0x170000AE RID: 174 // (get) Token: 0x0600047A RID: 1146 RVA: 0x00017BC4 File Offset: 0x00015DC4 [Token(Token = "0x170000AE")] private int CAJGLFMJBIC { [Token(Token = "0x600047A")] [Address(RVA = "0x1407040", Offset = "0x1406040", VA = "0x181407040")] get { int num = this.initialNodeIndex; Transform[] array = this.targetPath; if (num < array.Length) { return num; } return 0; } } // Token: 0x0600047B RID: 1147 RVA: 0x00017BF4 File Offset: 0x00015DF4 [Token(Token = "0x600047B")] [Address(RVA = "0x1405E30", Offset = "0x1404E30", VA = "0x181405E30", 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: 0x00017C4C File Offset: 0x00015E4C [Token(Token = "0x600047C")] [Address(RVA = "0x1407B90", Offset = "0x1406B90", VA = "0x181407B90", Slot = "15")] protected override void Start() { base.Start(); this.JHBLEPIBGBJ(); if (base.OGIBLNIIHDK) { this.AHNPPGHNCFA(); return; } } // Token: 0x0600047D RID: 1149 RVA: 0x00017C78 File Offset: 0x00015E78 [Token(Token = "0x600047D")] [Address(RVA = "0x14072A0", Offset = "0x14062A0", VA = "0x1814072A0", Slot = "14")] protected override void OnDestroy() { base.OnDestroy(); this.ENFOBANIEAA(); this.KNANGBCNMAF = (ulong)0L; } // Token: 0x0600047E RID: 1150 RVA: 0x00017C9C File Offset: 0x00015E9C [Token(Token = "0x600047E")] [Address(RVA = "0x1407BD0", Offset = "0x1406BD0", VA = "0x181407BD0")] 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: 0x00017CF4 File Offset: 0x00015EF4 [Token(Token = "0x600047F")] [Address(RVA = "0x1406F40", Offset = "0x1405F40", VA = "0x181406F40", 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, true); Transform transform = base.transform; Quaternion dndpeablhkg = this.DNDPEABLHKG; transform.rotation = dndpeablhkg; } this.DJFFFANBFBG(); } // Token: 0x06000480 RID: 1152 RVA: 0x00017D7C File Offset: 0x00015F7C [Token(Token = "0x6000480")] [Address(RVA = "0x14075F0", Offset = "0x14065F0", VA = "0x1814075F0")] 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: 0x00017E48 File Offset: 0x00016048 [Token(Token = "0x6000481")] [Address(RVA = "0x14063C0", Offset = "0x14053C0", VA = "0x1814063C0")] 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: 0x00017EC0 File Offset: 0x000160C0 [Token(Token = "0x6000482")] [Address(RVA = "0x1406690", Offset = "0x1405690", VA = "0x181406690")] 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: 0x00017FA0 File Offset: 0x000161A0 [Token(Token = "0x6000483")] [Address(RVA = "0x1406CC0", Offset = "0x1405CC0", VA = "0x181406CC0")] private Vector3 LECMFJKMBMF(int HKJKICFLEAE) { Vector3 vector; float z = vector.z; throw new NullReferenceException(); } // Token: 0x06000484 RID: 1156 RVA: 0x00017FC0 File Offset: 0x000161C0 [Token(Token = "0x6000484")] [Address(RVA = "0x1405D30", Offset = "0x1404D30", VA = "0x181405D30")] 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: 0x00018034 File Offset: 0x00016234 [Token(Token = "0x6000485")] [Address(RVA = "0x1407080", Offset = "0x1406080", VA = "0x181407080")] 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: 0x000180BC File Offset: 0x000162BC [Token(Token = "0x6000486")] [Address(RVA = "0x1406BA0", Offset = "0x1405BA0", VA = "0x181406BA0")] 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: 0x00018110 File Offset: 0x00016310 [Token(Token = "0x6000487")] [Address(RVA = "0x1406660", Offset = "0x1405660", VA = "0x181406660")] private int IFNBKBIFDJG(int CKDLPAGEAJH) { Transform[] array = this.targetPath; int num = CKDLPAGEAJH + 1; return CKDLPAGEAJH; } // Token: 0x06000488 RID: 1160 RVA: 0x00018134 File Offset: 0x00016334 [Token(Token = "0x6000488")] [Address(RVA = "0x1405F40", Offset = "0x1404F40", VA = "0x181405F40")] 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: 0x00018164 File Offset: 0x00016364 [Token(Token = "0x6000489")] [Address(RVA = "0x1406030", Offset = "0x1405030", VA = "0x181406030")] 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: 0x00018218 File Offset: 0x00016418 [Token(Token = "0x600048A")] [Address(RVA = "0x1406220", Offset = "0x1405220", VA = "0x181406220")] 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: 0x00018280 File Offset: 0x00016480 [Token(Token = "0x600048B")] [Address(RVA = "0x14072D0", Offset = "0x14062D0", VA = "0x1814072D0")] 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: 0x00018348 File Offset: 0x00016548 [Token(Token = "0x600048C")] [Address(RVA = "0x1407D20", Offset = "0x1406D20", VA = "0x181407D20")] public LaserTrap() { Quaternion identity = Quaternion.identity; LMGJGGMGNCG lmgjggmgncg = new LMGJGGMGNCG(); this.FHMMMGLHBFN = lmgjggmgncg; base..ctor(); } // Token: 0x0600048D RID: 1165 RVA: 0x00018390 File Offset: 0x00016590 // Note: this type is marked as 'beforefieldinit'. [Token(Token = "0x600048D")] [Address(RVA = "0x1407C60", Offset = "0x1406C60", VA = "0x181407C60")] 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 } }