using System; using Cpp2IlInjected; using RecRoom.Core.Combat; using UnityEngine; namespace RecRoom.Tools.Weapons { // Token: 0x02002C57 RID: 11351 [Token(Token = "0x2002C57")] public class SpreadRangedWeapon : RangedWeapon { // Token: 0x06012F82 RID: 77698 RVA: 0x00454A44 File Offset: 0x00452C44 [Token(Token = "0x6012F82")] [Address(RVA = "0x1D3CFD0", Offset = "0x1D3BFD0", VA = "0x181D3CFD0", 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: 0x06012F83 RID: 77699 RVA: 0x00454B30 File Offset: 0x00452D30 [Token(Token = "0x6012F83")] [Address(RVA = "0x1D3D210", Offset = "0x1D3C210", VA = "0x181D3D210", 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(); } Vector3 vector; float z3 = vector.z; float z4 = Vector3.right.z; Vector3 vector2; float z5 = vector2.z; Vector3 vector3; float z6 = vector3.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 z7 = 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 vector4; float z8 = vector4.z; Vector3 vector5; float z9 = vector5.z; } Transform end = this.spreadTargets[num].End; int num4 = 0; float z10; if (end != num4) { SpreadRangedWeapon.SpreadTarget[] array3 = this.spreadTargets; Transform barrelTransform2 = this.barrelTransform; Transform end2 = array3[num].End; Vector3 vector6; z10 = vector6.z; } Bullet bulletOverride = this.spreadTargets[num].bulletOverride; if (z10 != 0f) { } SpreadRangedWeapon.SpreadTarget[] array4 = this.spreadTargets; num++; } } // Token: 0x06012F84 RID: 77700 RVA: 0x00454C90 File Offset: 0x00452E90 [Token(Token = "0x6012F84")] [Address(RVA = "0x1D3D9C0", Offset = "0x1D3C9C0", VA = "0x181D3D9C0")] 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: 0x06012F85 RID: 77701 RVA: 0x00454D34 File Offset: 0x00452F34 [Token(Token = "0x6012F85")] [Address(RVA = "0x1D3DC30", Offset = "0x1D3CC30", VA = "0x181D3DC30")] public SpreadRangedWeapon() { } // Token: 0x0400C371 RID: 50033 [FieldOffset(Offset = "0x2F0")] [Token(Token = "0x400C371")] [SerializeField] [Header("Spread")] protected float maxDistance = 3f; // Token: 0x0400C372 RID: 50034 [FieldOffset(Offset = "0x2F8")] [Token(Token = "0x400C372")] [SerializeField] protected Transform spreadTargetEndRoot; // Token: 0x0400C373 RID: 50035 [FieldOffset(Offset = "0x300")] [Token(Token = "0x400C373")] [SerializeField] protected SpreadRangedWeapon.SpreadTarget[] spreadTargets; // Token: 0x0400C374 RID: 50036 [FieldOffset(Offset = "0x308")] [Token(Token = "0x400C374")] [SerializeField] [Header("Bullet Tracking")] protected bool trackBulletGroups; // Token: 0x0400C375 RID: 50037 [FieldOffset(Offset = "0x309")] [Token(Token = "0x400C375")] [SerializeField] protected bool limitOneImpactPerTarget; // Token: 0x0400C376 RID: 50038 [FieldOffset(Offset = "0x310")] [Token(Token = "0x400C376")] protected FBJJBALDIAB HLMEEKJIEEL; // Token: 0x02002C58 RID: 11352 [Token(Token = "0x2002C58")] [Serializable] protected class SpreadTarget { // Token: 0x06012F86 RID: 77702 RVA: 0x00454D54 File Offset: 0x00452F54 [Token(Token = "0x6012F86")] [Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")] public SpreadTarget() { } // Token: 0x0400C377 RID: 50039 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400C377")] public Transform Start; // Token: 0x0400C378 RID: 50040 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400C378")] public Transform End; // Token: 0x0400C379 RID: 50041 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400C379")] public Bullet bulletOverride; // Token: 0x0400C37A RID: 50042 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400C37A")] public float minCharge; } } }