194 lines
5.9 KiB
C#
194 lines
5.9 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Core.Combat;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Tools.Weapons
|
|
{
|
|
// Token: 0x02002666 RID: 9830
|
|
[Token(Token = "0x2002666")]
|
|
[StructLayout(3)]
|
|
public class CrossbowTrapWeapon : RangedWeapon
|
|
{
|
|
// Token: 0x06011097 RID: 69783 RVA: 0x004029E0 File Offset: 0x00400BE0
|
|
[Token(Token = "0x6011097")]
|
|
[Address(RVA = "0x193D430", Offset = "0x193BE30", VA = "0x18193D430", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
CrossbowBolt[] array = new CrossbowBolt[this.boltFinalNockingTransform.Length];
|
|
this.EIIEEFPALJM = array;
|
|
}
|
|
|
|
// Token: 0x06011098 RID: 69784 RVA: 0x00402A14 File Offset: 0x00400C14
|
|
[Token(Token = "0x6011098")]
|
|
[Address(RVA = "0x193DCD0", Offset = "0x193C6D0", VA = "0x18193DCD0")]
|
|
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: 0x06011099 RID: 69785 RVA: 0x00402AF4 File Offset: 0x00400CF4
|
|
[Token(Token = "0x6011099")]
|
|
[Address(RVA = "0x193D490", Offset = "0x193BE90", VA = "0x18193D490", 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: 0x0601109A RID: 69786 RVA: 0x00402BAC File Offset: 0x00400DAC
|
|
[Token(Token = "0x601109A")]
|
|
[Address(RVA = "0x193D6B0", Offset = "0x193C0B0", VA = "0x18193D6B0", 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: 0x0601109B RID: 69787 RVA: 0x00402C38 File Offset: 0x00400E38
|
|
[Token(Token = "0x601109B")]
|
|
[Address(RVA = "0x193D970", Offset = "0x193C370", VA = "0x18193D970")]
|
|
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: 0x0601109C RID: 69788 RVA: 0x00402D0C File Offset: 0x00400F0C
|
|
[Token(Token = "0x601109C")]
|
|
[Address(RVA = "0x193E0C0", Offset = "0x193CAC0", VA = "0x18193E0C0")]
|
|
public CrossbowTrapWeapon()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400B50E RID: 46350
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2E8")]
|
|
[Token(Token = "0x400B50E")]
|
|
[SerializeField]
|
|
[Header("Crossbow")]
|
|
private Transform[] boltInitialNockingTransform;
|
|
|
|
// Token: 0x0400B50F RID: 46351
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2F0")]
|
|
[Token(Token = "0x400B50F")]
|
|
[SerializeField]
|
|
protected Transform[] boltFinalNockingTransform;
|
|
|
|
// Token: 0x0400B510 RID: 46352
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2F8")]
|
|
[Token(Token = "0x400B510")]
|
|
[SerializeField]
|
|
private float boltNockingAnimationLength = 0.5f;
|
|
|
|
// Token: 0x0400B511 RID: 46353
|
|
[Token(Token = "0x400B511")]
|
|
private static readonly int EPHFPALCMHI = Animator.StringToHash("Pull");
|
|
|
|
// Token: 0x0400B512 RID: 46354
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x300")]
|
|
[Token(Token = "0x400B512")]
|
|
protected CrossbowBolt[] EIIEEFPALJM;
|
|
|
|
// Token: 0x0400B513 RID: 46355
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x308")]
|
|
[Token(Token = "0x400B513")]
|
|
private float FBCLJNIEGIE;
|
|
}
|
|
}
|