using System; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom.Core.Combat; using UnityEngine; namespace RecRoom.Tools.Weapons { // Token: 0x02002683 RID: 9859 [Token(Token = "0x2002683")] [StructLayout(3)] public class SpreadRangedWeapon : RangedWeapon { // Token: 0x060111C4 RID: 70084 RVA: 0x004094B4 File Offset: 0x004076B4 [Token(Token = "0x60111C4")] [Address(RVA = "0x194CF50", Offset = "0x194B950", VA = "0x18194CF50", Slot = "13")] protected override void Awake() { base.Awake(); if (this.trackBulletGroups) { SpreadRangedWeapon.SpreadTarget[] array = this.spreadTargets; bool flag = this.limitOneImpactPerTarget; int length; FBJJBALDIAB fbjjbaldiab = new FBJJBALDIAB(length, flag); length = array.Length; this.HLMEEKJIEEL = fbjjbaldiab; } SpreadRangedWeapon.SpreadTarget[] array2 = this.spreadTargets; int num = 0; if (num < array2.Length) { Transform end = array2[num].End; int num2 = 0; if (end != num2) { Transform parent = this.spreadTargets[num].End.transform.parent; Transform transform = this.spreadTargetEndRoot; if (parent != transform) { Transform transform2 = this.spreadTargets[num].End.transform; Transform transform3 = this.spreadTargetEndRoot; transform2.SetParent(transform3, true); } } SpreadRangedWeapon.SpreadTarget[] array3 = this.spreadTargets; num++; } } // Token: 0x060111C5 RID: 70085 RVA: 0x004095A0 File Offset: 0x004077A0 [Token(Token = "0x60111C5")] [Address(RVA = "0x194D190", Offset = "0x194BB90", VA = "0x18194D190", Slot = "42")] protected override void OICJPFPBIIK(Vector3 DDHPAFKBMON, Quaternion IGPENJBJADK, Vector3 NHAOMEMANJA, float LFDFFDCJAAD, bool FLKHKHDBIOH, byte LNPHJIHHNPN) { int num = 0; float z = NHAOMEMANJA.z; float z2 = DDHPAFKBMON.z; if ((this.trackBulletGroups ? 1 : 0) != num) { AAEGKOIININ aaegkoiinin = this.HLMEEKJIEEL.AFLJHNNFBMM(); } float z3 = Vector3.right.z; Vector3 vector; float z4 = vector.z; Vector3 vector2; float z5 = vector2.z; float num2 = this.maxDistance; Transform transform = this.spreadTargetEndRoot; SpreadRangedWeapon.SpreadTarget[] array = this.spreadTargets; if (num < array.Length) { SpreadRangedWeapon.SpreadTarget spreadTarget = array[num]; float minCharge = spreadTarget.minCharge; float z6 = DDHPAFKBMON.z; Transform start = spreadTarget.Start; int num3 = 0; if (start != num3) { SpreadRangedWeapon.SpreadTarget[] array2 = this.spreadTargets; Transform barrelTransform = this.barrelTransform; Transform start2 = array2[num].Start; Vector3 vector3; float z7 = vector3.z; Vector3 vector4; float z8 = vector4.z; } Transform end = this.spreadTargets[num].End; int num4 = 0; float z9; if (end != num4) { SpreadRangedWeapon.SpreadTarget[] array3 = this.spreadTargets; Transform barrelTransform2 = this.barrelTransform; Transform end2 = array3[num].End; Vector3 vector5; z9 = vector5.z; Vector3 vector6; float z10 = vector6.z; } Bullet bulletOverride = this.spreadTargets[num].bulletOverride; if (z9 != 0f) { } SpreadRangedWeapon.SpreadTarget[] array4 = this.spreadTargets; num++; } } // Token: 0x060111C6 RID: 70086 RVA: 0x00409700 File Offset: 0x00407900 [Token(Token = "0x60111C6")] [Address(RVA = "0x194D940", Offset = "0x194C340", VA = "0x18194D940")] private void OnDrawGizmosSelected() { SpreadRangedWeapon.SpreadTarget[] array = this.spreadTargets; if (array != 0) { int num = 0; int length = array.Length; if (num < length) { SpreadRangedWeapon.SpreadTarget spreadTarget = array[num]; Transform end = spreadTarget.End; int num2 = 0; if (!(end == num2)) { Transform start = spreadTarget.Start; int num3 = 0; if (start != num3) { Transform start2 = spreadTarget.Start; } Transform barrelTransform = this.barrelTransform; float z = start.position.z; Color yellow = Color.yellow; Transform end2 = spreadTarget.End; Color white = Color.white; Color yellow2 = Color.yellow; } num++; } } } // Token: 0x060111C7 RID: 70087 RVA: 0x004097A4 File Offset: 0x004079A4 [Token(Token = "0x60111C7")] [Address(RVA = "0x194DBB0", Offset = "0x194C5B0", VA = "0x18194DBB0")] public SpreadRangedWeapon() { } // Token: 0x0400B603 RID: 46595 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2E8")] [Token(Token = "0x400B603")] [SerializeField] [Header("Spread")] protected float maxDistance = 3f; // Token: 0x0400B604 RID: 46596 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2F0")] [Token(Token = "0x400B604")] [SerializeField] protected Transform spreadTargetEndRoot; // Token: 0x0400B605 RID: 46597 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2F8")] [Token(Token = "0x400B605")] [SerializeField] protected SpreadRangedWeapon.SpreadTarget[] spreadTargets; // Token: 0x0400B606 RID: 46598 [global::Cpp2IlInjected.FieldOffset(Offset = "0x300")] [Token(Token = "0x400B606")] [SerializeField] [Header("Bullet Tracking")] protected bool trackBulletGroups; // Token: 0x0400B607 RID: 46599 [global::Cpp2IlInjected.FieldOffset(Offset = "0x301")] [Token(Token = "0x400B607")] [SerializeField] protected bool limitOneImpactPerTarget; // Token: 0x0400B608 RID: 46600 [global::Cpp2IlInjected.FieldOffset(Offset = "0x308")] [Token(Token = "0x400B608")] protected FBJJBALDIAB HLMEEKJIEEL; // Token: 0x02002684 RID: 9860 [Token(Token = "0x2002684")] [Serializable] protected class SpreadTarget { // Token: 0x060111C8 RID: 70088 RVA: 0x004097C4 File Offset: 0x004079C4 [Token(Token = "0x60111C8")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public SpreadTarget() { } // Token: 0x0400B609 RID: 46601 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x400B609")] public Transform Start; // Token: 0x0400B60A RID: 46602 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x400B60A")] public Transform End; // Token: 0x0400B60B RID: 46603 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x400B60B")] public Bullet bulletOverride; // Token: 0x0400B60C RID: 46604 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x400B60C")] public float minCharge; } } }