Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

290 lines
8.7 KiB
C#

using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using RecRoom.Core;
using RecRoom.Core.Combat;
using RecRoom.Tools.Weapons;
using UnityEngine;
namespace RecRoom.Activities.Quest
{
// Token: 0x02002CD9 RID: 11481
[Token(Token = "0x2002CD9")]
public class DraculaQuestGear : QuestGear
{
// Token: 0x060133A8 RID: 78760 RVA: 0x0046A00C File Offset: 0x0046820C
[Token(Token = "0x60133A8")]
[Address(RVA = "0x16236A0", Offset = "0x16226A0", VA = "0x1816236A0")]
private void Awake()
{
Whip component = base.GetComponent<Whip>();
this.KBJEFNJJJHF = component;
int num = 0;
if (!(component != num))
{
RangedWeapon component2 = base.GetComponent<RangedWeapon>();
this.CHOKCBJIJAL = component2;
int num2 = 0;
if (!(component2 != num2))
{
goto IL_F3;
}
RangedWeapon chokcbjijal = this.CHOKCBJIJAL;
Action action = new Action(this.MIKJDLDPIEP);
chokcbjijal.OFOLKCFPBEN += action;
}
Tool tool = this.KBJEFNJJJHF._tool;
Tool.OGLAJAFKBMN oglajafkbmn = new Tool.OGLAJAFKBMN(this.PLEALOIKBJO);
tool.AddCustomPickupCondition(oglajafkbmn);
Tool tool2 = this.KBJEFNJJJHF._tool;
Tool.EHOOCLKEMPD ehooclkempd = new Tool.EHOOCLKEMPD(this.IOOHPKMPGLP);
tool2.AddCustomEquipCondition(ehooclkempd);
Tool tool3 = this.KBJEFNJJJHF._tool;
MFBGLIHGCGO<Tool> postPickupEvent = tool3.PostPickupEvent;
Action<Tool> action2 = new Action(this.NJJFPMFFICD);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.BPJDFPACLMK(postPickupEvent, action2);
tool3.PostPickupEvent = mfbglihgcgo;
Action<float> action3 = new Action(this.DMMOMLKNNKI);
IDisposable disposable = ADIFCODGAML.FLMKKKHMJBN(this, 5f, action3);
IL_F3:
Whip kbjefnjjjhf = this.KBJEFNJJJHF;
int num3 = 0;
if (kbjefnjjjhf == num3)
{
RangedWeapon chokcbjijal2 = this.CHOKCBJIJAL;
int num4 = 0;
if (chokcbjijal2 == num4)
{
global::UnityEngine.Object.Destroy(this);
}
}
}
// Token: 0x060133A9 RID: 78761 RVA: 0x0046A148 File Offset: 0x00468348
[Token(Token = "0x60133A9")]
[Address(RVA = "0x1624370", Offset = "0x1623370", VA = "0x181624370")]
private void OnDestroy()
{
Whip kbjefnjjjhf = this.KBJEFNJJJHF;
int num = 0;
if (kbjefnjjjhf != num)
{
Tool tool = this.KBJEFNJJJHF._tool;
Tool.OGLAJAFKBMN oglajafkbmn = new Tool.OGLAJAFKBMN(this.PLEALOIKBJO);
tool.RemoveCustomPickupCondition(oglajafkbmn);
Tool tool2 = this.KBJEFNJJJHF._tool;
Tool.EHOOCLKEMPD ehooclkempd = new Tool.EHOOCLKEMPD(this.IOOHPKMPGLP);
tool2.RemoveCustomEquipCondition(ehooclkempd);
Tool tool3 = this.KBJEFNJJJHF._tool;
MFBGLIHGCGO<Tool> postPickupEvent = tool3.PostPickupEvent;
Action<Tool> action = new Action(this.NJJFPMFFICD);
MFBGLIHGCGO<Tool> mfbglihgcgo = MFBGLIHGCGO.GMNMHGMFGOL(postPickupEvent, action);
tool3.PostPickupEvent = mfbglihgcgo;
}
RangedWeapon chokcbjijal = this.CHOKCBJIJAL;
int num2 = 0;
if (chokcbjijal != num2)
{
RangedWeapon chokcbjijal2 = this.CHOKCBJIJAL;
Action action2 = new Action(this.MIKJDLDPIEP);
chokcbjijal2.OFOLKCFPBEN -= action2;
}
}
// Token: 0x060133AA RID: 78762 RVA: 0x0046A220 File Offset: 0x00468420
[Token(Token = "0x60133AA")]
[Address(RVA = "0x1624560", Offset = "0x1623560", VA = "0x181624560")]
private bool PLEALOIKBJO(Tool NBHJPDBHDHB, Player NHCEBNBEEBE, Vector3 JEDLNAEEMEN, bool GEJJBENPHJG)
{
int num;
int num2;
do
{
num = 0;
IReadOnlyList<PlayerHand> bothHands = NHCEBNBEEBE.BothHands;
if (bothHands != 0)
{
bool flag;
while (!flag)
{
}
OGNBCNBPFCC ognbcnbpfcc;
while (ognbcnbpfcc != OGNBCNBPFCC.DRACULA_WHIP)
{
}
}
num2 = 0;
if (bothHands != 0)
{
}
}
while (num != 0);
if (num != -1)
{
}
PlayerToolEquipSlot[] <HBBPIPDDLKN>k__BackingField = NHCEBNBEEBE.toolEquipSlots.<HBBPIPDDLKN>k__BackingField;
int length = <HBBPIPDDLKN>k__BackingField.Length;
if (num2 < length)
{
PlayerToolEquipSlot playerToolEquipSlot = <HBBPIPDDLKN>k__BackingField[num2];
if (playerToolEquipSlot.FDMFNIJKHKC && playerToolEquipSlot.EFEKNEEGDIP.OGNBCNBPFCC == OGNBCNBPFCC.DRACULA_WHIP)
{
Tool equippedTool = playerToolEquipSlot.EFEKNEEGDIP;
if (num != equippedTool)
{
goto IL_89;
}
}
num2++;
}
IL_89:
throw new NullReferenceException();
}
// Token: 0x060133AB RID: 78763 RVA: 0x0046A2D0 File Offset: 0x004684D0
[Token(Token = "0x60133AB")]
[Address(RVA = "0x1623F80", Offset = "0x1622F80", VA = "0x181623F80")]
private void NJJFPMFFICD(Tool NBHJPDBHDHB)
{
int num;
do
{
num = 0;
Player <OKDFEPHLKCB>k__BackingField = NBHJPDBHDHB.<OKDFEPHLKCB>k__BackingField;
Player <EGKJPJKLEAI>k__BackingField = Player.<EGKJPJKLEAI>k__BackingField;
if (!(<OKDFEPHLKCB>k__BackingField == <EGKJPJKLEAI>k__BackingField))
{
break;
}
IReadOnlyList<PlayerHand> bothHands = Player.<EGKJPJKLEAI>k__BackingField.BothHands;
if (bothHands != 0)
{
bool flag;
while (!flag)
{
}
bool flag2;
while (!flag2)
{
}
OGNBCNBPFCC ognbcnbpfcc;
while (ognbcnbpfcc != OGNBCNBPFCC.DRACULA_WHIP)
{
}
Vector3 zero = Vector3.zero;
Vector3 zero2 = Vector3.zero;
IDisposable disposable = SingletonMonoBehaviour.ONCPNMDGGKG.Play((NotificationManager.IBIDFAOPIPC)((uint)1), "No dual wielding... don't be sneaky!", 2f, num, num);
}
if (bothHands != 0)
{
}
}
while (num != 0);
}
// Token: 0x060133AC RID: 78764 RVA: 0x0046A368 File Offset: 0x00468568
[Token(Token = "0x60133AC")]
[Address(RVA = "0x1623A50", Offset = "0x1622A50", VA = "0x181623A50")]
private bool IOOHPKMPGLP(Tool EGFEJGHDNAI, Player BGKPFFGBMCC, FNCLOCJLFDG HCPBBFGIBAB)
{
int num;
bool flag;
int num4;
do
{
num = 0;
int num2 = 0;
if (!(BGKPFFGBMCC != num2))
{
return true;
}
IReadOnlyList<PlayerHand> bothHands = BGKPFFGBMCC.BothHands;
if (bothHands != 0)
{
int num3 = 0;
if (!(EGFEJGHDNAI != num3) || EGFEJGHDNAI.OGNBCNBPFCC != OGNBCNBPFCC.DRACULA_WHIP)
{
continue;
}
while (!flag)
{
}
}
num4 = 0;
if (bothHands != 0)
{
}
}
while (flag);
if (num != -1)
{
}
PlayerToolEquipSlot[] <HBBPIPDDLKN>k__BackingField = BGKPFFGBMCC.toolEquipSlots.<HBBPIPDDLKN>k__BackingField;
int length = <HBBPIPDDLKN>k__BackingField.Length;
if (num4 < length)
{
PlayerToolEquipSlot playerToolEquipSlot = <HBBPIPDDLKN>k__BackingField[num4];
if (playerToolEquipSlot.FDMFNIJKHKC && playerToolEquipSlot.EFEKNEEGDIP.OGNBCNBPFCC == OGNBCNBPFCC.DRACULA_WHIP)
{
Tool equippedTool = playerToolEquipSlot.EFEKNEEGDIP;
if (EGFEJGHDNAI != equippedTool)
{
return true;
}
}
num4++;
}
return true;
}
// Token: 0x060133AD RID: 78765 RVA: 0x0046A430 File Offset: 0x00468630
[Token(Token = "0x60133AD")]
[Address(RVA = "0x1623990", Offset = "0x1622990", VA = "0x181623990")]
private void DMMOMLKNNKI(float POGAEJIEPIM)
{
Whip kbjefnjjjhf = this.KBJEFNJJJHF;
int num = 0;
if (!(kbjefnjjjhf == num) && this.KBJEFNJJJHF._tool.<JGABDFBGDEB>k__BackingField.PAJGCGDFHKK)
{
this.KBJEFNJJJHF._tool.<JGABDFBGDEB>k__BackingField.CheckCleanup();
}
}
// Token: 0x060133AE RID: 78766 RVA: 0x0046A484 File Offset: 0x00468684
[Token(Token = "0x60133AE")]
[Address(RVA = "0x1623DD0", Offset = "0x1622DD0", VA = "0x181623DD0")]
private void MIKJDLDPIEP()
{
if (this.CHOKCBJIJAL.OGIBLNIIHDK && this.CHOKCBJIJAL.FPLOELJHIHK && NetworkedSingletonMonoBehaviour.FFNIFALJLDD)
{
Tool tool = this.CHOKCBJIJAL._tool;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action = new Action(NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.spawnManager.OnSpawnedToolReset);
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd = EAHPNACBLDD.BPJDFPACLMK(postResetEvent, action);
tool.PostResetEvent = eahpnacbldd;
ToolCleanup <JGABDFBGDEB>k__BackingField = this.CHOKCBJIJAL._tool.<JGABDFBGDEB>k__BackingField;
int num = 0;
<JGABDFBGDEB>k__BackingField.AuthorityQueueForceCleanup(num != 0);
this.CHOKCBJIJAL._tool.<JGABDFBGDEB>k__BackingField.defaultDelayUntilCleanup = 0f;
}
}
// Token: 0x060133AF RID: 78767 RVA: 0x0046A530 File Offset: 0x00468730
[Token(Token = "0x60133AF")]
[Address(RVA = "0x8E9790", Offset = "0x8E8790", VA = "0x1808E9790")]
public DraculaQuestGear()
{
}
// Token: 0x0400C6E6 RID: 50918
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400C6E6")]
private Whip KBJEFNJJJHF;
// Token: 0x0400C6E7 RID: 50919
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400C6E7")]
private RangedWeapon CHOKCBJIJAL;
}
}