Files
2026-04-08 23:40:05 +02:00

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;
}
}