using System; using Cpp2IlInjected; using RecRoom.Core.Combat; using UnityEngine; namespace RecRoom.Tools.Weapons { // Token: 0x02002B51 RID: 11089 [Token(Token = "0x2002B51")] public class CrossbowTrapWeapon : RangedWeapon { // Token: 0x06012A16 RID: 76310 RVA: 0x004441F8 File Offset: 0x004423F8 [Token(Token = "0x6012A16")] [Address(RVA = "0x10D2430", Offset = "0x10D1230", VA = "0x1810D2430", Slot = "13")] protected override void Awake() { base.Awake(); CrossbowBolt[] array = new CrossbowBolt[this.boltFinalNockingTransform.Length]; this.EIIEEFPALJM = array; } // Token: 0x06012A17 RID: 76311 RVA: 0x0044422C File Offset: 0x0044242C [Token(Token = "0x6012A17")] [Address(RVA = "0x10D2CD0", Offset = "0x10D1AD0", VA = "0x1810D2CD0")] private void Update() { CrossbowBolt[] eiieefpaljm = this.EIIEEFPALJM; int num = 0; if (num < eiieefpaljm.Length) { CrossbowBolt crossbowBolt = eiieefpaljm[num]; int num2 = 0; if (crossbowBolt != num2) { float num3 = this.boltNockingAnimationLength; float time = Time.time; float num4 = Mathf.InverseLerp(time, num3, time); CrossbowBolt[] eiieefpaljm2 = this.EIIEEFPALJM; Transform transform = eiieefpaljm2[num].transform; Transform transform2 = this.boltInitialNockingTransform[num]; Vector3 vector; float z = vector.z; Transform transform3 = this.boltFinalNockingTransform[num]; Vector3 vector2; float z2 = vector2.z; Vector3 vector3; float z3 = vector3.z; Transform transform4 = this.EIIEEFPALJM[num].transform; Transform transform5 = this.boltFinalNockingTransform[num]; } CrossbowBolt[] eiieefpaljm3 = this.EIIEEFPALJM; num++; } } // Token: 0x06012A18 RID: 76312 RVA: 0x0044430C File Offset: 0x0044250C [Token(Token = "0x6012A18")] [Address(RVA = "0x10D2490", Offset = "0x10D1290", VA = "0x1810D2490", Slot = "34")] protected override void MIKJDLDPIEP() { base.MIKJDLDPIEP(); int magazineAmmunition = base.DFPKOJKFNIF; Animator animator = this._animator; if (magazineAmmunition != 0) { int ephfpalcmhi = CrossbowTrapWeapon.EPHFPALCMHI; animator.SetFloat(ephfpalcmhi, 1f); CrossbowBolt[] eiieefpaljm = this.EIIEEFPALJM; int num = 0; if (num >= eiieefpaljm.Length) { return; } CrossbowBolt crossbowBolt = eiieefpaljm[num]; int num2 = 0; if (crossbowBolt == num2) { CrossbowBolt[] eiieefpaljm2 = this.EIIEEFPALJM; throw new ArrayTypeMismatchException(); } CrossbowBolt[] eiieefpaljm3 = this.EIIEEFPALJM; num++; } if ("{il2cpp array field local19->}" == (ulong)2L || "{il2cpp array field local19->}" == (ulong)0L) { } } // Token: 0x06012A19 RID: 76313 RVA: 0x004443C4 File Offset: 0x004425C4 [Token(Token = "0x6012A19")] [Address(RVA = "0x10D26B0", Offset = "0x10D14B0", VA = "0x1810D26B0", Slot = "42")] protected override void OICJPFPBIIK(Vector3 DDHPAFKBMON, Quaternion IGPENJBJADK, Vector3 NHAOMEMANJA, float LFDFFDCJAAD, bool FLKHKHDBIOH, byte LNPHJIHHNPN) { CrossbowBolt[] eiieefpaljm = this.EIIEEFPALJM; int num = 0; if (num < eiieefpaljm.Length) { CrossbowBolt crossbowBolt = eiieefpaljm[num]; int num2 = 0; if (crossbowBolt != num2) { Transform transform = this.EIIEEFPALJM[num].transform; Vector3 vector; float z = vector.z; Transform transform2 = this.EIIEEFPALJM[num].transform; float z2 = NHAOMEMANJA.z; this.EIIEEFPALJM[0] = num; } CrossbowBolt[] eiieefpaljm2 = this.EIIEEFPALJM; num++; } } // Token: 0x06012A1A RID: 76314 RVA: 0x00444450 File Offset: 0x00442650 [Token(Token = "0x6012A1A")] [Address(RVA = "0x10D2970", Offset = "0x10D1770", VA = "0x1810D2970")] private void OnDrawGizmosSelected() { Transform[] array = this.boltFinalNockingTransform; if (array != 0) { int num = 0; if (num < array.Length) { Transform transform = array[num]; int num2 = 0; if (!(transform == num2)) { Transform transform2 = this.boltInitialNockingTransform[num]; int num3 = 0; if (!(transform2 == num3)) { Transform transform3 = this.boltInitialNockingTransform[num]; float z = transform2.position.z; Transform transform4 = this.boltFinalNockingTransform[num]; float z2 = transform2.position.z; Color yellow = Color.yellow; Color white = Color.white; Color green = Color.green; Transform transform5 = this.boltInitialNockingTransform[num]; Vector3 vector; float z3 = vector.z; } } Transform[] array2 = this.boltFinalNockingTransform; num++; } } } // Token: 0x06012A1B RID: 76315 RVA: 0x00444524 File Offset: 0x00442724 [Token(Token = "0x6012A1B")] [Address(RVA = "0x10D30C0", Offset = "0x10D1EC0", VA = "0x1810D30C0")] public CrossbowTrapWeapon() { } // Token: 0x0400C068 RID: 49256 [FieldOffset(Offset = "0x2F0")] [Token(Token = "0x400C068")] [SerializeField] [Header("Crossbow")] private Transform[] boltInitialNockingTransform; // Token: 0x0400C069 RID: 49257 [FieldOffset(Offset = "0x2F8")] [Token(Token = "0x400C069")] [SerializeField] protected Transform[] boltFinalNockingTransform; // Token: 0x0400C06A RID: 49258 [FieldOffset(Offset = "0x300")] [Token(Token = "0x400C06A")] [SerializeField] private float boltNockingAnimationLength = 0.5f; // Token: 0x0400C06B RID: 49259 [Token(Token = "0x400C06B")] private static readonly int EPHFPALCMHI = Animator.StringToHash("Pull"); // Token: 0x0400C06C RID: 49260 [FieldOffset(Offset = "0x308")] [Token(Token = "0x400C06C")] protected CrossbowBolt[] EIIEEFPALJM; // Token: 0x0400C06D RID: 49261 [FieldOffset(Offset = "0x310")] [Token(Token = "0x400C06D")] private float FBCLJNIEGIE; } }