223 lines
8.0 KiB
C#
223 lines
8.0 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Core.Combat;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Tools.Weapons
|
|
{
|
|
// Token: 0x02002689 RID: 9865
|
|
[Token(Token = "0x2002689")]
|
|
[StructLayout(3)]
|
|
public class WeaponStabilizationGrip : WeaponAccessory
|
|
{
|
|
// Token: 0x060111F5 RID: 70133 RVA: 0x0040AACC File Offset: 0x00408CCC
|
|
[Token(Token = "0x60111F5")]
|
|
[Address(RVA = "0x19502A0", Offset = "0x194ECA0", VA = "0x1819502A0", Slot = "5")]
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
Tool tool = this._tool;
|
|
int num = 0;
|
|
if (tool != num)
|
|
{
|
|
this._tool.IgnorePickupDirection = true;
|
|
Tool tool2 = this._tool;
|
|
ActionEvent<Tool> postPickupEvent = tool2.PostPickupEvent;
|
|
Action<Tool> action = new Action(this.HAAIALDMMEL);
|
|
ActionEvent<Tool> actionEvent = postPickupEvent + action;
|
|
tool2.PostPickupEvent = actionEvent;
|
|
Tool tool3 = this._tool;
|
|
ActionEvent<Tool> postReleaseEvent = tool3.PostReleaseEvent;
|
|
Action<Tool> action2 = new Action(this.OIOCPLEKMEK);
|
|
ActionEvent<Tool> actionEvent2 = postReleaseEvent + action2;
|
|
tool3.PostReleaseEvent = actionEvent2;
|
|
Tool tool4 = this._tool;
|
|
ActionEvent<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool4.PostResetEvent;
|
|
Action<Tool, Vector3, Quaternion, Vector3, bool> action3 = new Action(this.LBODGLNOABB);
|
|
ActionEvent<Tool> actionEvent3;
|
|
tool4.PostResetEvent = actionEvent3;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111F6 RID: 70134 RVA: 0x0040AB90 File Offset: 0x00408D90
|
|
[Token(Token = "0x60111F6")]
|
|
[Address(RVA = "0x1950BA0", Offset = "0x194F5A0", VA = "0x181950BA0", Slot = "6")]
|
|
protected override void Start()
|
|
{
|
|
RigidbodyPickup rigidbodyPickup = this.parentWeapon._tool.rigidbodyPickup;
|
|
if (rigidbodyPickup == 0)
|
|
{
|
|
}
|
|
this.BJHBHGEIIHN = rigidbodyPickup;
|
|
int num = 0;
|
|
if (!(rigidbodyPickup == num))
|
|
{
|
|
StabilizedRigidbodyPickup bjhbhgeiihn = this.BJHBHGEIIHN;
|
|
Action action = new Action(this.ILGINDIODEP);
|
|
bjhbhgeiihn.DHHHLAHLBGH += action;
|
|
RigidbodyPickup rigidbodyPickup2 = this._tool.rigidbodyPickup;
|
|
if (rigidbodyPickup2 == 0)
|
|
{
|
|
}
|
|
this.POICOHHEPON = rigidbodyPickup2;
|
|
StabilizedRigidbodyPickup bjhbhgeiihn2 = this.BJHBHGEIIHN;
|
|
PlungerRigidbodyPickup poicohhepon = this.POICOHHEPON;
|
|
float z = this.KNHHAPILJGN.z;
|
|
poicohhepon.ConstraintOffsetPosition.z = z;
|
|
PlungerRigidbodyPickup poicohhepon2 = this.POICOHHEPON;
|
|
Quaternion nnjnbdpdafo = this.NNJNBDPDAFO;
|
|
poicohhepon2.ConstraintOffsetRotation = nnjnbdpdafo;
|
|
PlungerRigidbodyPickup poicohhepon3 = this.POICOHHEPON;
|
|
float z2 = Vector3.forward.z;
|
|
poicohhepon3.ConstraintLocalAxis.z = z2;
|
|
this.POICOHHEPON.MinimumConstraintDistance = 0f;
|
|
this.POICOHHEPON.MaximumConstraintDistance = 0f;
|
|
if (!this._tool.<BIPMAHKMNKF>k__BackingField)
|
|
{
|
|
base.NNPBKEIEMHL();
|
|
}
|
|
base.Start();
|
|
return;
|
|
}
|
|
Debug.LogError(this.parentWeapon.name + "missing stabilizer rigidbody pickup.");
|
|
}
|
|
|
|
// Token: 0x060111F7 RID: 70135 RVA: 0x0040ACC8 File Offset: 0x00408EC8
|
|
[Token(Token = "0x60111F7")]
|
|
[Address(RVA = "0x1143820", Offset = "0x1142220", VA = "0x181143820")]
|
|
private void OnEnable()
|
|
{
|
|
if (!this._tool.<BIPMAHKMNKF>k__BackingField)
|
|
{
|
|
base.NNPBKEIEMHL();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111F8 RID: 70136 RVA: 0x0040ACF0 File Offset: 0x00408EF0
|
|
[Token(Token = "0x60111F8")]
|
|
[Address(RVA = "0x19509A0", Offset = "0x194F3A0", VA = "0x1819509A0", Slot = "7")]
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
Tool tool = this._tool;
|
|
int num = 0;
|
|
if (tool != num)
|
|
{
|
|
Tool tool2 = this._tool;
|
|
ActionEvent<Tool> postPickupEvent = tool2.PostPickupEvent;
|
|
Action<Tool> action = new Action(this.HAAIALDMMEL);
|
|
ActionEvent<Tool> actionEvent = postPickupEvent - action;
|
|
tool2.PostPickupEvent = actionEvent;
|
|
Tool tool3 = this._tool;
|
|
ActionEvent<Tool> postReleaseEvent = tool3.PostReleaseEvent;
|
|
Action<Tool> action2 = new Action(this.OIOCPLEKMEK);
|
|
ActionEvent<Tool> actionEvent2 = postReleaseEvent - action2;
|
|
tool3.PostReleaseEvent = actionEvent2;
|
|
Tool tool4 = this._tool;
|
|
ActionEvent<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool4.PostResetEvent;
|
|
Action<Tool, Vector3, Quaternion, Vector3, bool> action3 = new Action(this.LBODGLNOABB);
|
|
ActionEvent<Tool> actionEvent3;
|
|
tool4.PostResetEvent = actionEvent3;
|
|
}
|
|
StabilizedRigidbodyPickup bjhbhgeiihn = this.BJHBHGEIIHN;
|
|
int num2 = 0;
|
|
if (bjhbhgeiihn != num2)
|
|
{
|
|
StabilizedRigidbodyPickup bjhbhgeiihn2 = this.BJHBHGEIIHN;
|
|
Action action4 = new Action(this.ILGINDIODEP);
|
|
bjhbhgeiihn2.DHHHLAHLBGH -= action4;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111F9 RID: 70137 RVA: 0x0040ADE0 File Offset: 0x00408FE0
|
|
[Token(Token = "0x60111F9")]
|
|
[Address(RVA = "0x1950440", Offset = "0x194EE40", VA = "0x181950440")]
|
|
private void HAAIALDMMEL(Tool EGFEJGHDNAI)
|
|
{
|
|
PlayerHand <PBCNKLKCIHJ>k__BackingField = this._tool.<PBCNKLKCIHJ>k__BackingField;
|
|
int num = 0;
|
|
if (!(<PBCNKLKCIHJ>k__BackingField == num))
|
|
{
|
|
PlayerHand <PBCNKLKCIHJ>k__BackingField2 = this._tool.<PBCNKLKCIHJ>k__BackingField;
|
|
StabilizedRigidbodyPickup bjhbhgeiihn = this.BJHBHGEIIHN;
|
|
RigidbodyEx rigidbodyEx = <PBCNKLKCIHJ>k__BackingField2._rigidbodyEx;
|
|
bjhbhgeiihn.CMOCJKKIDOF = rigidbodyEx;
|
|
Transform targetTransform = this.parentTool.<PBCNKLKCIHJ>k__BackingField._rigidbodyEx.MDKDCJFEBJH;
|
|
PlayerHand <PBCNKLKCIHJ>k__BackingField3 = this.parentTool.<PBCNKLKCIHJ>k__BackingField;
|
|
this.BJHBHGEIIHN.StabilizedRigidbodyOffsetFromPickup.z = targetTransform;
|
|
StabilizedRigidbodyPickup bjhbhgeiihn2 = this.BJHBHGEIIHN;
|
|
Transform transform = bjhbhgeiihn2.transform;
|
|
StabilizedRigidbodyPickup bjhbhgeiihn3 = this.BJHBHGEIIHN;
|
|
Vector3 stabilizerPosition = bjhbhgeiihn2.OCHGHGKKIJK;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
bjhbhgeiihn2.StabilizerOffsetPosition.z = z;
|
|
StabilizedRigidbodyPickup bjhbhgeiihn4 = this.BJHBHGEIIHN;
|
|
Vector3 forward = Vector3.forward;
|
|
return;
|
|
}
|
|
Debug.LogError("No HolderHand set in WeaponStabilizationGrip.OnPostPickup");
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x060111FA RID: 70138 RVA: 0x0040AEBC File Offset: 0x004090BC
|
|
[Token(Token = "0x60111FA")]
|
|
[Address(RVA = "0x1950920", Offset = "0x194F320", VA = "0x181950920")]
|
|
private void OIOCPLEKMEK(Tool EGFEJGHDNAI)
|
|
{
|
|
StabilizedRigidbodyPickup bjhbhgeiihn = this.BJHBHGEIIHN;
|
|
int num = 0;
|
|
bjhbhgeiihn.CMOCJKKIDOF = num;
|
|
Action action = new Action(base.NNPBKEIEMHL);
|
|
Coroutine coroutine = this.EndOfFrameRoutine(action);
|
|
}
|
|
|
|
// Token: 0x060111FB RID: 70139 RVA: 0x0040AEF4 File Offset: 0x004090F4
|
|
[Token(Token = "0x60111FB")]
|
|
[Address(RVA = "0x1950850", Offset = "0x194F250", VA = "0x181950850")]
|
|
private void LBODGLNOABB(Tool EGFEJGHDNAI, Vector3 BNMOCBJEEPN, Quaternion LPHCCEOHNIN, Vector3 GMMJHABHDHE, bool ACPOOMGHPKJ)
|
|
{
|
|
object[] array = new object[1];
|
|
if (this != 0)
|
|
{
|
|
}
|
|
array[0] = this;
|
|
Debug.LogErrorFormat("Resetting stabilization subtool {0}. Subtools generally shouldn't be manually reset.", array);
|
|
base.NNPBKEIEMHL();
|
|
}
|
|
|
|
// Token: 0x060111FC RID: 70140 RVA: 0x0040AF2C File Offset: 0x0040912C
|
|
[Token(Token = "0x60111FC")]
|
|
[Address(RVA = "0x19507A0", Offset = "0x194F1A0", VA = "0x1819507A0")]
|
|
private void ILGINDIODEP()
|
|
{
|
|
if (this._tool.FNFNLDBILFE && this._tool.hasAuthority)
|
|
{
|
|
Tool tool = this._tool;
|
|
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
|
|
tool.IKEGONLJBPP = ekjclgjfign;
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060111FD RID: 70141 RVA: 0x0040AF70 File Offset: 0x00409170
|
|
[Token(Token = "0x60111FD")]
|
|
[Address(RVA = "0x15A7010", Offset = "0x15A5A10", VA = "0x1815A7010")]
|
|
public WeaponStabilizationGrip()
|
|
{
|
|
}
|
|
|
|
// Token: 0x0400B635 RID: 46645
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400B635")]
|
|
private StabilizedRigidbodyPickup BJHBHGEIIHN;
|
|
|
|
// Token: 0x0400B636 RID: 46646
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400B636")]
|
|
private PlungerRigidbodyPickup POICOHHEPON;
|
|
}
|
|
}
|