Files
2026-04-10 22:50:51 +02:00

249 lines
8.1 KiB
C#

using System;
using Cpp2IlInjected;
using RecRoom.Core.Combat;
using UnityEngine;
namespace RecRoom.Tools.Weapons
{
// Token: 0x02002B5A RID: 11098
[Token(Token = "0x2002B5A")]
public class BowString : WeaponAccessory
{
// Token: 0x1700341D RID: 13341
// (get) Token: 0x06012A81 RID: 76417 RVA: 0x00446EA8 File Offset: 0x004450A8
[Token(Token = "0x1700341D")]
public Vector3 LLLIMCMPDOO
{
[Token(Token = "0x6012A81")]
[Address(RVA = "0x10CD3B0", Offset = "0x10CC1B0", VA = "0x1810CD3B0")]
get
{
Transform transform = base.transform;
Vector3 vector;
float z = vector.z;
throw new NullReferenceException();
}
}
// Token: 0x1700341E RID: 13342
// (get) Token: 0x06012A82 RID: 76418 RVA: 0x00446EC8 File Offset: 0x004450C8
// (set) Token: 0x06012A83 RID: 76419 RVA: 0x00446EDC File Offset: 0x004450DC
[Token(Token = "0x1700341E")]
public AxisConstrainedRigidbodyPickup ELPKNBILKMD
{
[Token(Token = "0x6012A82")]
[Address(RVA = "0x4335D0", Offset = "0x4323D0", VA = "0x1804335D0")]
get;
[Token(Token = "0x6012A83")]
[Address(RVA = "0x703580", Offset = "0x702380", VA = "0x180703580")]
private set;
}
// Token: 0x06012A84 RID: 76420 RVA: 0x00446EF0 File Offset: 0x004450F0
[Token(Token = "0x6012A84")]
[Address(RVA = "0x10CCA60", Offset = "0x10CB860", VA = "0x1810CCA60", Slot = "5")]
protected override void Awake()
{
base.Awake();
Weapon parentWeapon = this.parentWeapon;
if (parentWeapon == 0)
{
}
this.Bow = parentWeapon;
int num = 0;
if (parentWeapon == num)
{
Debug.LogError(base.name + " is not parented to a bow weapon.");
}
this.Bow.<DHOADBJPCGM>k__BackingField = this;
Tool tool = this._tool;
int num2 = 0;
if (tool != num2)
{
this._tool.IgnorePickupDirection = true;
this._tool.AlwaysPhysicalPickupOffCenter = false;
}
}
// Token: 0x06012A85 RID: 76421 RVA: 0x00446F78 File Offset: 0x00445178
[Token(Token = "0x6012A85")]
[Address(RVA = "0x10CD120", Offset = "0x10CBF20", VA = "0x1810CD120", Slot = "6")]
protected override void Start()
{
Tool tool = this._tool;
int num = 0;
if (tool != num)
{
Tool tool2 = this._tool;
RigidbodyPickup rigidbodyPickup = tool2.rigidbodyPickup;
if (rigidbodyPickup == 0)
{
}
this.<JGDBHKNNGEF>k__BackingField = rigidbodyPickup;
MFBGLIHGCGO<Tool> postPickupEvent = tool2.PostPickupEvent;
Action<Tool> action = new Action(this.HAAIALDMMEL);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action);
tool2.PostPickupEvent = mfbglihgcgo;
Tool tool3 = this._tool;
MFBGLIHGCGO<Tool> postReleaseEvent = tool3.PostReleaseEvent;
Action<Tool> action2 = new Action(this.OIOCPLEKMEK);
MFBGLIHGCGO<Tool> mfbglihgcgo2 = MFBGLIHGCGO.BPJDFPACLMK(postReleaseEvent, action2);
tool3.PostReleaseEvent = mfbglihgcgo2;
Tool tool4 = this._tool;
MFBGLIHGCGO<Tool> hoverStartEvent = tool4.HoverStartEvent;
Action<Tool> action3 = new Action(this.CCPHHDELIFF);
MFBGLIHGCGO<Tool> mfbglihgcgo3 = MFBGLIHGCGO.BPJDFPACLMK(hoverStartEvent, action3);
tool4.HoverStartEvent = mfbglihgcgo3;
}
if (!this._tool.<BIPMAHKMNKF>k__BackingField)
{
base.NNPBKEIEMHL();
}
Renderer[] customHighlightRenderers = this.customHighlightRenderers;
if (customHighlightRenderers != 0 && customHighlightRenderers.Length != 0)
{
Tool tool5 = this._tool;
Tool.BPPMEBHPHDM bppmebhphdm = new Tool.BPPMEBHPHDM(base.ELEHMFFDFPD);
tool5.CustomHighlightingBehavior = bppmebhphdm;
Tool tool6 = this._tool;
Tool.BPPMEBHPHDM bppmebhphdm2 = new Tool.BPPMEBHPHDM(base.GDPCGOGGCCI);
tool6.CustomTutorialHighlightingBehavior = bppmebhphdm2;
}
this.KJDHMJPNDCK = true;
}
// Token: 0x06012A86 RID: 76422 RVA: 0x004470BC File Offset: 0x004452BC
[Token(Token = "0x6012A86")]
[Address(RVA = "0x7C90A0", Offset = "0x7C7EA0", VA = "0x1807C90A0")]
private void OnEnable()
{
if (!this._tool.<BIPMAHKMNKF>k__BackingField)
{
base.NNPBKEIEMHL();
return;
}
}
// Token: 0x06012A87 RID: 76423 RVA: 0x004470E4 File Offset: 0x004452E4
[Token(Token = "0x6012A87")]
[Address(RVA = "0x10CCF90", Offset = "0x10CBD90", VA = "0x1810CCF90", Slot = "7")]
protected override void OnDestroy()
{
base.OnDestroy();
Tool tool = this._tool;
int num = 0;
if (tool != num)
{
Tool tool2 = this._tool;
MFBGLIHGCGO<Tool> postPickupEvent = tool2.PostPickupEvent;
Action<Tool> action = new Action(this.HAAIALDMMEL);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action);
tool2.PostPickupEvent = mfbglihgcgo;
Tool tool3 = this._tool;
MFBGLIHGCGO<Tool> postReleaseEvent = tool3.PostReleaseEvent;
Action<Tool> action2 = new Action(this.OIOCPLEKMEK);
MFBGLIHGCGO<Tool> mfbglihgcgo2 = MFBGLIHGCGO.GMNMHGMFGOL(postReleaseEvent, action2);
tool3.PostReleaseEvent = mfbglihgcgo2;
Tool tool4 = this._tool;
MFBGLIHGCGO<Tool> hoverStartEvent = tool4.HoverStartEvent;
Action<Tool> action3 = new Action(this.CCPHHDELIFF);
MFBGLIHGCGO<Tool> mfbglihgcgo3 = MFBGLIHGCGO.GMNMHGMFGOL(hoverStartEvent, action3);
tool4.HoverStartEvent = mfbglihgcgo3;
}
}
// Token: 0x06012A88 RID: 76424 RVA: 0x004471A8 File Offset: 0x004453A8
[Token(Token = "0x6012A88")]
[Address(RVA = "0x10CCD50", Offset = "0x10CBB50", VA = "0x1810CCD50")]
private void CJNIBFGDCCN()
{
Bow bow = this.Bow;
int num = 0;
if (bow != num)
{
AxisConstrainedRigidbodyPickup axisConstrainedRigidbodyPickup = this.<JGDBHKNNGEF>k__BackingField;
int num2 = 0;
if (axisConstrainedRigidbodyPickup != num2)
{
Bow bow2 = this.Bow;
AxisConstrainedRigidbodyPickup axisConstrainedRigidbodyPickup2 = this.<JGDBHKNNGEF>k__BackingField;
RigidbodyEx rigidbodyEx = bow2._tool.rigidbodyEx;
Vector3 vector;
float z = vector.z;
axisConstrainedRigidbodyPickup2.sphericalRestrictionCenter.z = z;
}
}
}
// Token: 0x06012A89 RID: 76425 RVA: 0x00447218 File Offset: 0x00445418
[Token(Token = "0x6012A89")]
[Address(RVA = "0x10CCE40", Offset = "0x10CBC40", VA = "0x1810CCE40")]
private void HAAIALDMMEL(Tool EGFEJGHDNAI)
{
Bow bow = this.Bow;
if (bow.FireArrowOnStringPickupRelease)
{
bow.ReadyArrow();
}
Action action = new Action(this.CJNIBFGDCCN);
IDisposable disposable = this.OPEMIFENIJM(action);
this.MBOJILKNFIL = disposable;
}
// Token: 0x06012A8A RID: 76426 RVA: 0x00447260 File Offset: 0x00445460
[Token(Token = "0x6012A8A")]
[Address(RVA = "0x10CCED0", Offset = "0x10CBCD0", VA = "0x1810CCED0")]
private void OIOCPLEKMEK(Tool EGFEJGHDNAI)
{
AxisConstrainedRigidbodyPickup axisConstrainedRigidbodyPickup = this.<JGDBHKNNGEF>k__BackingField;
int num = 0;
if (axisConstrainedRigidbodyPickup != num)
{
this.Bow.OnStringRelease();
}
IDisposable mbojilknfil = this.MBOJILKNFIL;
this.GLFCOPMIKLH(mbojilknfil);
Action action = new Action(base.NNPBKEIEMHL);
Coroutine coroutine = this.CHAAKFJCLIH(action);
}
// Token: 0x06012A8B RID: 76427 RVA: 0x004472B8 File Offset: 0x004454B8
[Token(Token = "0x6012A8B")]
[Address(RVA = "0x10CCBD0", Offset = "0x10CB9D0", VA = "0x1810CCBD0")]
private void CCPHHDELIFF(Tool NBHJPDBHDHB)
{
Tool tool = this.Bow._tool;
if (tool.<BIPMAHKMNKF>k__BackingField)
{
Player <OKDFEPHLKCB>k__BackingField = tool.<OKDFEPHLKCB>k__BackingField;
Player <EGKJPJKLEAI>k__BackingField = Player.<EGKJPJKLEAI>k__BackingField;
if (<OKDFEPHLKCB>k__BackingField == <EGKJPJKLEAI>k__BackingField)
{
PlayerHand.PLLIKAOIPHP type = tool.<PBCNKLKCIHJ>k__BackingField.type;
PlayerHand playerHand;
playerHand.Vibrate(50, 1f);
return;
}
}
}
// Token: 0x06012A8C RID: 76428 RVA: 0x00447314 File Offset: 0x00445514
[Token(Token = "0x6012A8C")]
[Address(RVA = "0xBC7700", Offset = "0xBC6500", VA = "0x180BC7700")]
public BowString()
{
}
// Token: 0x0400C0C7 RID: 49351
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400C0C7")]
[NonSerialized]
public Bow Bow;
// Token: 0x0400C0C9 RID: 49353
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x400C0C9")]
private IDisposable MBOJILKNFIL;
}
}