This commit is contained in:
niko
2026-04-12 16:51:38 +02:00
parent 1b6f6d81d0
commit c12fbe3fc6
17828 changed files with 2994770 additions and 0 deletions
@@ -0,0 +1,365 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using RecRoom.Core.AI;
using RecRoom.Core.Combat;
using RecRoom.Core.Pools;
using RecRoom.Tools.Weapons;
using UnityEngine;
namespace RecRoom.Activities.Quest.Goblin2
{
// Token: 0x02002D2E RID: 11566
[Token(Token = "0x2002D2E")]
public class ForceWandWeapon : SpreadRangedWeapon
{
// Token: 0x0601372F RID: 79663 RVA: 0x0047C820 File Offset: 0x0047AA20
[Token(Token = "0x601372F")]
[Address(RVA = "0x1625F10", Offset = "0x1624F10", VA = "0x181625F10", Slot = "13")]
protected override void Awake()
{
base.Awake();
DelayedRangedWeaponTrigger delayedRangedWeaponTrigger = this.trigger;
DelayedRangedWeaponTrigger.IOGLIBAPLLG ioglibapllg = new DelayedRangedWeaponTrigger.IOGLIBAPLLG(this.NDLIEIOPMNN);
delayedRangedWeaponTrigger.JFPBBAHBCPN += ioglibapllg;
}
// Token: 0x06013730 RID: 79664 RVA: 0x0047C854 File Offset: 0x0047AA54
[Token(Token = "0x6013730")]
[Address(RVA = "0x16270B0", Offset = "0x16260B0", VA = "0x1816270B0", Slot = "14")]
protected override void OnDestroy()
{
base.OnDestroy();
DelayedRangedWeaponTrigger delayedRangedWeaponTrigger = this.trigger;
DelayedRangedWeaponTrigger.IOGLIBAPLLG ioglibapllg = new DelayedRangedWeaponTrigger.IOGLIBAPLLG(this.NDLIEIOPMNN);
delayedRangedWeaponTrigger.JFPBBAHBCPN -= ioglibapllg;
}
// Token: 0x06013731 RID: 79665 RVA: 0x0047C888 File Offset: 0x0047AA88
[Token(Token = "0x6013731")]
[Address(RVA = "0x16268A0", Offset = "0x16258A0", VA = "0x1816268A0")]
private void LateUpdate()
{
WandProjectileParticles jobcknkockm = this.JOBCKNKOCKM;
int num = 0;
if (jobcknkockm != num)
{
float num2 = this.HLMEEKJIEEL.DDKECNEDAEK;
SpreadRangedWeapon.SpreadTarget[] spreadTargets = this.spreadTargets;
this.JOBCKNKOCKM.StopVelocity();
this.JOBCKNKOCKM = (ulong)0L;
}
}
// Token: 0x06013732 RID: 79666 RVA: 0x0047C8D8 File Offset: 0x0047AAD8
[Token(Token = "0x6013732")]
[Address(RVA = "0x12410D0", Offset = "0x12400D0", VA = "0x1812410D0")]
private void NDLIEIOPMNN(DelayedRangedWeaponTrigger OOONNFPBMKC)
{
if (base.OGIBLNIIHDK)
{
Color color = base.EPDNPLLEPOH;
return;
}
}
// Token: 0x06013733 RID: 79667 RVA: 0x0047C8F8 File Offset: 0x0047AAF8
[Token(Token = "0x6013733")]
[Address(RVA = "0x1626420", Offset = "0x1625420", VA = "0x181626420", Slot = "40")]
public override void Fire(float JHJCINDODIL)
{
if (base.OGIBLNIIHDK)
{
if (base.MJDHKAHMGMO || base.LAJLNCJKALH)
{
throw new NullReferenceException();
}
Transform barrelTransform = this.barrelTransform;
if (this.useHeadAimBias)
{
Tool tool = this._tool;
if (tool.<BIPMAHKMNKF>k__BackingField)
{
Transform transform = tool.<OKDFEPHLKCB>k__BackingField.head.transform;
float num;
if (this.maxHeadAimAngle > num)
{
RigidbodyEx rigidbodyEx = this._tool.<OKDFEPHLKCB>k__BackingField.head.rigidbodyEx;
Transform barrelTransform2 = this.barrelTransform;
}
}
}
Transform transform2 = this.spreadOffsetRoot;
this.Fire(JHJCINDODIL);
}
}
// Token: 0x06013734 RID: 79668 RVA: 0x0047C994 File Offset: 0x0047AB94
[Token(Token = "0x6013734")]
[Address(RVA = "0x1626370", Offset = "0x1625370", VA = "0x181626370", Slot = "47")]
protected override void EIEJLOGPMGM(Bullet NLLMMPLAPBK, Enemy BPJNEFJBBML, ANBBFGKPJFD EMPFLFOEDFD, GHMDIDJLFMC KNLMJBAKCGF)
{
AAEGKOIININ aaegkoiinin = this.HLMEEKJIEEL.OBKMOLNOBHD(NLLMMPLAPBK);
if (aaegkoiinin != 0)
{
aaegkoiinin.MCHIEHNFNLF();
}
}
// Token: 0x06013735 RID: 79669 RVA: 0x0047C9C0 File Offset: 0x0047ABC0
[Token(Token = "0x6013735")]
[Address(RVA = "0x1625FA0", Offset = "0x1624FA0", VA = "0x181625FA0", Slot = "25")]
protected override bool DHODJKLNHPA(Enemy BPJNEFJBBML, ANBBFGKPJFD EMPFLFOEDFD, GHMDIDJLFMC KNLMJBAKCGF)
{
if (KNLMJBAKCGF.FEDGOFKEGEF.z > this.spreadShotInitialCharge)
{
if (BPJNEFJBBML.steering.<FEJCOJLMGPC>k__BackingField)
{
Steering steering = BPJNEFJBBML.steering;
Vector3 vector;
float z = vector.z;
KNLMJBAKCGF.NKKJICPFILJ.z = z;
}
if (base.OGIBLNIIHDK && !this.GOOBODNNOKN.Contains(BPJNEFJBBML) && !this.GOOBODNNOKN.Contains(BPJNEFJBBML))
{
Enemy.FIEKLJKDFIP fiekljkdfip = new Enemy.FIEKLJKDFIP(this.OIHFBPGMEME);
BPJNEFJBBML.NCMJJBMBDHK += fiekljkdfip;
Enemy.FJNNOHNMINM fjnnohnminm = new Enemy.FJNNOHNMINM(this.JIFMOEKGGNG);
BPJNEFJBBML.EJPGEKHJECG += fjnnohnminm;
this.GOOBODNNOKN.Add(BPJNEFJBBML);
}
}
float z2 = KNLMJBAKCGF.FEDGOFKEGEF.z;
float num = KNLMJBAKCGF.EGJBGIIHEEL.z;
float num2 = Mathf.Clamp01(z2);
AnimationCurve animationCurve = this.damageFalloffCurve;
num = num2;
float num3 = animationCurve.Evaluate(num);
KNLMJBAKCGF.OHPBNIDKAEK = num3;
bool flag;
return flag;
}
// Token: 0x06013736 RID: 79670 RVA: 0x0047CAB8 File Offset: 0x0047ACB8
[Token(Token = "0x6013736")]
[Address(RVA = "0x1626890", Offset = "0x1625890", VA = "0x181626890")]
protected void JIFMOEKGGNG(Enemy BPJNEFJBBML)
{
this.HFMECCNDOOE(BPJNEFJBBML);
}
// Token: 0x06013737 RID: 79671 RVA: 0x0047CACC File Offset: 0x0047ACCC
[Token(Token = "0x6013737")]
[Address(RVA = "0x1626C70", Offset = "0x1625C70", VA = "0x181626C70")]
protected void OIHFBPGMEME(Enemy BPJNEFJBBML, Collision GBJHLKOJGPB)
{
int num = 0;
Vector3 vector;
float z = vector.z;
float num2 = this.minPhysicsDamageVelocity;
float num3;
if (num3 > num2)
{
Enemy enemy = GBJHLKOJGPB.PABDAFCMNCK(num);
int num4 = 0;
if (!(enemy != num4))
{
ContactPoint[] contacts = GBJHLKOJGPB.contacts;
Vector3 up = Vector3.up;
float num5;
if (num5 <= this.maxFloorAngleDegrees)
{
return;
}
}
this.HFMECCNDOOE(BPJNEFJBBML);
Vector3 vector2;
float z2 = vector2.z;
float z3 = Vector3.zero.z;
ContactPoint[] contacts2 = GBJHLKOJGPB.contacts;
ContactPoint[] contacts3 = GBJHLKOJGPB.contacts;
GameObject gameObject = GBJHLKOJGPB.gameObject;
if (enemy)
{
}
}
}
// Token: 0x06013738 RID: 79672 RVA: 0x0047CB6C File Offset: 0x0047AD6C
[Token(Token = "0x6013738")]
[Address(RVA = "0x1626970", Offset = "0x1625970", VA = "0x181626970")]
private void MELDMLAJELJ(Enemy BPJNEFJBBML)
{
if (!this.GOOBODNNOKN.Contains(BPJNEFJBBML))
{
Enemy.FIEKLJKDFIP fiekljkdfip = new Enemy.FIEKLJKDFIP(this.OIHFBPGMEME);
BPJNEFJBBML.NCMJJBMBDHK += fiekljkdfip;
Enemy.FJNNOHNMINM fjnnohnminm = new Enemy.FJNNOHNMINM(this.JIFMOEKGGNG);
BPJNEFJBBML.EJPGEKHJECG += fjnnohnminm;
this.GOOBODNNOKN.Add(BPJNEFJBBML);
}
}
// Token: 0x06013739 RID: 79673 RVA: 0x0047CBC4 File Offset: 0x0047ADC4
[Token(Token = "0x6013739")]
[Address(RVA = "0x16267C0", Offset = "0x16257C0", VA = "0x1816267C0")]
private void HFMECCNDOOE(Enemy BPJNEFJBBML)
{
Enemy.FIEKLJKDFIP fiekljkdfip = new Enemy.FIEKLJKDFIP(this.OIHFBPGMEME);
BPJNEFJBBML.NCMJJBMBDHK -= fiekljkdfip;
Enemy.FJNNOHNMINM fjnnohnminm = new Enemy.FJNNOHNMINM(this.JIFMOEKGGNG);
BPJNEFJBBML.EJPGEKHJECG -= fjnnohnminm;
bool flag = this.GOOBODNNOKN.Remove(BPJNEFJBBML);
}
// Token: 0x0601373A RID: 79674 RVA: 0x0047CC0C File Offset: 0x0047AE0C
[Token(Token = "0x601373A")]
[Address(RVA = "0x1626A70", Offset = "0x1625A70", VA = "0x181626A70", Slot = "42")]
protected override void OICJPFPBIIK(Vector3 DDHPAFKBMON, Quaternion IGPENJBJADK, Vector3 NHAOMEMANJA, float LFDFFDCJAAD, bool FLKHKHDBIOH, byte LNPHJIHHNPN)
{
float z = NHAOMEMANJA.z;
float z2 = DDHPAFKBMON.z;
float num = this.spreadShotInitialCharge;
float z3 = NHAOMEMANJA.z;
float z4 = DDHPAFKBMON.z;
float num2 = this.centerShotInitialCharge;
WandProjectileParticles wandProjectileParticles = this.shootParticlesPrefab;
int num3 = 0;
if (wandProjectileParticles != num3)
{
GlobalPool instance = GlobalPool.ONCPNMDGGKG;
WandProjectileParticles wandProjectileParticles2 = this.shootParticlesPrefab;
WandProjectileParticles wandProjectileParticles3 = instance.Acquire<WandProjectileParticles>(wandProjectileParticles2);
this.JOBCKNKOCKM = wandProjectileParticles3;
wandProjectileParticles3.ResetVelocity();
WandProjectileParticles jobcknkockm = this.JOBCKNKOCKM;
Transform barrelTransform = this.barrelTransform;
jobcknkockm.Play(barrelTransform);
}
}
// Token: 0x0601373B RID: 79675 RVA: 0x0047CCB4 File Offset: 0x0047AEB4
[Token(Token = "0x601373B")]
[Address(RVA = "0x1627140", Offset = "0x1626140", VA = "0x181627140")]
public ForceWandWeapon()
{
int num = 0;
this.minBulletPercentageRequiredForParticles = 0.25f;
int num2 = 0;
this.maxHeadAimAngle = 75f;
this.centerShotInitialCharge = 1f;
this.spreadShotInitialCharge = 0.3f;
AnimationCurve animationCurve = AnimationCurve.Linear((float)num2, 1f, 1f, (float)num);
this.damageFalloffCurve = animationCurve;
this.minPhysicsDamageVelocity = 1f;
this.maxFloorAngleDegrees = 30f;
this.enemyCollisionDamageCharge = 1f;
this.otherEnemyCollisionDamageCharge = 1f;
this.environmentCollisionDamageCharge = 1f;
List<Enemy> list = new List();
this.GOOBODNNOKN = list;
base..ctor();
}
// Token: 0x0400C9C1 RID: 51649
[FieldOffset(Offset = "0x318")]
[Token(Token = "0x400C9C1")]
[SerializeField]
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
private DelayedRangedWeaponTrigger trigger;
// Token: 0x0400C9C2 RID: 51650
[FieldOffset(Offset = "0x320")]
[Token(Token = "0x400C9C2")]
[SerializeField]
[Header("Wand")]
private Transform spreadOffsetRoot;
// Token: 0x0400C9C3 RID: 51651
[FieldOffset(Offset = "0x328")]
[Token(Token = "0x400C9C3")]
[SerializeField]
private WandProjectileParticles shootParticlesPrefab;
// Token: 0x0400C9C4 RID: 51652
[FieldOffset(Offset = "0x330")]
[Token(Token = "0x400C9C4")]
[SerializeField]
private float minBulletPercentageRequiredForParticles;
// Token: 0x0400C9C5 RID: 51653
[FieldOffset(Offset = "0x334")]
[Token(Token = "0x400C9C5")]
[SerializeField]
[Header("Aiming")]
private bool useHeadAimBias;
// Token: 0x0400C9C6 RID: 51654
[FieldOffset(Offset = "0x338")]
[Token(Token = "0x400C9C6")]
[SerializeField]
private float maxHeadAimAngle;
// Token: 0x0400C9C7 RID: 51655
[FieldOffset(Offset = "0x33C")]
[Token(Token = "0x400C9C7")]
[SerializeField]
[Header("Damage")]
[Range(0f, 1f)]
private float centerShotInitialCharge;
// Token: 0x0400C9C8 RID: 51656
[FieldOffset(Offset = "0x340")]
[Token(Token = "0x400C9C8")]
[SerializeField]
[Range(0f, 1f)]
private float spreadShotInitialCharge;
// Token: 0x0400C9C9 RID: 51657
[FieldOffset(Offset = "0x348")]
[Token(Token = "0x400C9C9")]
[SerializeField]
private AnimationCurve damageFalloffCurve;
// Token: 0x0400C9CA RID: 51658
[FieldOffset(Offset = "0x350")]
[Token(Token = "0x400C9CA")]
[SerializeField]
[Header("Physics Damage")]
private float minPhysicsDamageVelocity;
// Token: 0x0400C9CB RID: 51659
[FieldOffset(Offset = "0x354")]
[Token(Token = "0x400C9CB")]
[SerializeField]
private float maxFloorAngleDegrees;
// Token: 0x0400C9CC RID: 51660
[FieldOffset(Offset = "0x358")]
[Token(Token = "0x400C9CC")]
[SerializeField]
private float enemyCollisionDamageCharge;
// Token: 0x0400C9CD RID: 51661
[FieldOffset(Offset = "0x35C")]
[Token(Token = "0x400C9CD")]
[SerializeField]
private float otherEnemyCollisionDamageCharge;
// Token: 0x0400C9CE RID: 51662
[FieldOffset(Offset = "0x360")]
[Token(Token = "0x400C9CE")]
[SerializeField]
private float environmentCollisionDamageCharge;
// Token: 0x0400C9CF RID: 51663
[FieldOffset(Offset = "0x368")]
[Token(Token = "0x400C9CF")]
private readonly List<Enemy> GOOBODNNOKN;
// Token: 0x0400C9D0 RID: 51664
[FieldOffset(Offset = "0x370")]
[Token(Token = "0x400C9D0")]
private WandProjectileParticles JOBCKNKOCKM;
}
}
@@ -0,0 +1,465 @@
using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Tools;
using UnityEngine;
namespace RecRoom.Activities.Quest.Goblin2
{
// Token: 0x02002D31 RID: 11569
[Token(Token = "0x2002D31")]
public class Potion : MonoBehaviourPun
{
// Token: 0x140001B0 RID: 432
// (add) Token: 0x06013742 RID: 79682 RVA: 0x0047CE80 File Offset: 0x0047B080
// (remove) Token: 0x06013743 RID: 79683 RVA: 0x0047CEA8 File Offset: 0x0047B0A8
[Token(Token = "0x140001B0")]
public event Potion.JICLAAJLNCE AOFFBPHMBBP
{
[Token(Token = "0x6013742")]
[Address(RVA = "0x1631640", Offset = "0x1630640", VA = "0x181631640")]
[CompilerGenerated]
add
{
Potion.JICLAAJLNCE aoffbphmbbp;
Delegate @delegate;
do
{
aoffbphmbbp = this.AOFFBPHMBBP;
@delegate = Delegate.Combine(aoffbphmbbp, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != aoffbphmbbp)
{
}
}
[Token(Token = "0x6013743")]
[Address(RVA = "0x1631790", Offset = "0x1630790", VA = "0x181631790")]
[CompilerGenerated]
remove
{
Potion.JICLAAJLNCE aoffbphmbbp;
Delegate @delegate;
do
{
aoffbphmbbp = this.AOFFBPHMBBP;
@delegate = Delegate.Remove(aoffbphmbbp, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != aoffbphmbbp)
{
}
}
}
// Token: 0x170035F8 RID: 13816
// (get) Token: 0x06013744 RID: 79684 RVA: 0x0047CED0 File Offset: 0x0047B0D0
// (set) Token: 0x06013745 RID: 79685 RVA: 0x0047CEF0 File Offset: 0x0047B0F0
[Token(Token = "0x170035F8")]
public int PGOKJFBPHMC
{
[Token(Token = "0x6013744")]
[Address(RVA = "0x16316E0", Offset = "0x16306E0", VA = "0x1816316E0")]
get
{
return this.JPFCJGDGNIH.IAHDANBDAAM();
}
[Token(Token = "0x6013745")]
[Address(RVA = "0x1630F70", Offset = "0x162FF70", VA = "0x181630F70")]
private set
{
KLLMCPFPIIE<int> jpfcjgdgnih = this.JPFCJGDGNIH;
}
}
// Token: 0x170035F9 RID: 13817
// (get) Token: 0x06013746 RID: 79686 RVA: 0x0047CF0C File Offset: 0x0047B10C
[Token(Token = "0x170035F9")]
public int BFJGCMAGNBM
{
[Token(Token = "0x6013746")]
[Address(RVA = "0x1631730", Offset = "0x1630730", VA = "0x181631730")]
get
{
int num = this.drinksToActivate;
int num2 = this.JPFCJGDGNIH.IAHDANBDAAM();
return num - num2;
}
}
// Token: 0x06013747 RID: 79687 RVA: 0x0047CF3C File Offset: 0x0047B13C
[Token(Token = "0x6013747")]
[Address(RVA = "0x1630A80", Offset = "0x162FA80", VA = "0x181630A80", Slot = "13")]
protected override void Awake()
{
base..ctor();
Action action = new Action(this.FEJMFBKEJAG);
int num;
int num2;
KLLMCPFPIIE<int> kllmcpfpiie = new KLLMCPFPIIE(this, "drinks", num, (OHOEENCHJJE)num2, action, num2);
num2 = 0;
num = 0;
Tool tool = this.tool;
this.JPFCJGDGNIH = kllmcpfpiie;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action2 = new Action(this.APBEFBBOMDJ);
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd = EAHPNACBLDD.BPJDFPACLMK(postResetEvent, action2);
tool.PostResetEvent = eahpnacbldd;
DrinkableBottle drinkableBottle = this.waterBottle;
DrinkableBottle.BFLECJMKODI bflecjmkodi = new DrinkableBottle.BFLECJMKODI(this.DDPNDICHPHC);
drinkableBottle.IJPIILBLFPO += bflecjmkodi;
DrinkableBottle drinkableBottle2 = this.waterBottle;
Action<DrinkableBottle> action3 = new Action(this.ABIFJPOAIHH);
drinkableBottle2.IsEmptyChangeEvent += action3;
}
// Token: 0x06013748 RID: 79688 RVA: 0x0047CFF0 File Offset: 0x0047B1F0
[Token(Token = "0x6013748")]
[Address(RVA = "0x1631440", Offset = "0x1630440", VA = "0x181631440")]
private void Start()
{
DrinkableBottle drinkableBottle = this.waterBottle;
BreakableObject breakableObject = this.breakableObject;
int num = 0;
if (breakableObject != num)
{
BreakableObject breakableObject2 = this.breakableObject;
bool isEmpty = drinkableBottle.MEBGJGNMIMG;
breakableObject2.SetBreakable(isEmpty, this);
}
Transform transform = this.liquidLevelTransform;
int num2 = 0;
if (transform != num2)
{
Transform transform2 = this.liquidLevelTransform;
Vector3[] array = this.liquidScaleByDrinks;
int num3 = this.JPFCJGDGNIH.IAHDANBDAAM();
int length = this.liquidScaleByDrinks.Length;
int num4 = 0;
int num5 = Mathf.Clamp(num3, num4, length);
}
}
// Token: 0x06013749 RID: 79689 RVA: 0x0047D088 File Offset: 0x0047B288
[Token(Token = "0x6013749")]
[Address(RVA = "0x16310F0", Offset = "0x16300F0", VA = "0x1816310F0", Slot = "14")]
protected override void OnDestroy()
{
base.OnDestroy();
Tool tool = this.tool;
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action = new Action(this.APBEFBBOMDJ);
EAHPNACBLDD<Tool, Vector3, Quaternion, Vector3, bool> eahpnacbldd = EAHPNACBLDD.GMNMHGMFGOL(postResetEvent, action);
tool.PostResetEvent = eahpnacbldd;
DrinkableBottle drinkableBottle = this.waterBottle;
DrinkableBottle.BFLECJMKODI bflecjmkodi = new DrinkableBottle.BFLECJMKODI(this.DDPNDICHPHC);
drinkableBottle.IJPIILBLFPO -= bflecjmkodi;
DrinkableBottle drinkableBottle2 = this.waterBottle;
Action<DrinkableBottle> action2 = new Action(this.ABIFJPOAIHH);
drinkableBottle2.IsEmptyChangeEvent -= action2;
}
// Token: 0x0601374A RID: 79690 RVA: 0x0047D10C File Offset: 0x0047B30C
[Token(Token = "0x601374A")]
[Address(RVA = "0x16313F0", Offset = "0x16303F0", VA = "0x1816313F0")]
public void ScreensTryConsumeDrink(AGAJMBPABDL IEKDDPPNFPF)
{
if (base.OGIBLNIIHDK && IEKDDPPNFPF != 0)
{
this.PHMLNIFDNDH = IEKDDPPNFPF;
this.NCPPIPDKCHC();
this.PHMLNIFDNDH = (ulong)0L;
}
}
// Token: 0x0601374B RID: 79691 RVA: 0x0047D13C File Offset: 0x0047B33C
[Token(Token = "0x601374B")]
[Address(RVA = "0x1631220", Offset = "0x1630220", VA = "0x181631220")]
private void OnTriggerEnter(Collider GLPOLGOBLAA)
{
if (this.tool.<BIPMAHKMNKF>k__BackingField && this.clinkSfx != (ulong)0L)
{
Tool tool = GLPOLGOBLAA.AMKJBLIFHPB();
int num = 0;
if (tool != num)
{
Tool tool2 = this.tool;
if (tool != tool2 && tool.FNFNLDBILFE)
{
Potion component = tool.GetComponent<Potion>();
int num2 = 0;
if (component != num2)
{
RecRoomAudioClip[] array = this.clinkSfx;
Transform transform = base.transform;
Vector3 vector;
float z = vector.z;
}
}
}
}
}
// Token: 0x0601374C RID: 79692 RVA: 0x0047D1C8 File Offset: 0x0047B3C8
[Token(Token = "0x601374C")]
[Address(RVA = "0x1630A20", Offset = "0x162FA20", VA = "0x181630A20")]
private void APBEFBBOMDJ(Tool NBHJPDBHDHB, Vector3 BNMOCBJEEPN, Quaternion LPHCCEOHNIN, Vector3 GMMJHABHDHE, bool ACPOOMGHPKJ)
{
this.PHMLNIFDNDH = (ulong)0L;
KLLMCPFPIIE<int> jpfcjgdgnih = this.JPFCJGDGNIH;
int num = 0;
jpfcjgdgnih.BDJFGEJFPPO(num);
}
// Token: 0x0601374D RID: 79693 RVA: 0x0047D1F4 File Offset: 0x0047B3F4
[Token(Token = "0x601374D")]
[Address(RVA = "0x1630C10", Offset = "0x162FC10", VA = "0x181630C10")]
private void DDPNDICHPHC(DrinkableBottle HCDFFKEPPEG, AGAJMBPABDL PEBIMKCJNBK)
{
if (this.AutomaticDrinkingEnabled)
{
float time = Time.time;
float num = this.drinkResetTime;
if (time > num)
{
this.PHMLNIFDNDH = (ulong)0L;
}
if (this.PHMLNIFDNDH != PEBIMKCJNBK)
{
if (this.shareable)
{
goto IL_82;
}
this.PHMLNIFDNDH = PEBIMKCJNBK;
int num2 = 0;
this.PGOKJFBPHMC = num2;
}
if (!this.shareable)
{
Player <OKDFEPHLKCB>k__BackingField = this.tool.<OKDFEPHLKCB>k__BackingField;
int num3 = 0;
if (!(<OKDFEPHLKCB>k__BackingField != num3) || this.tool.<OKDFEPHLKCB>k__BackingField.DBAJDHGDPOL != PEBIMKCJNBK)
{
goto IL_A9;
}
}
IL_82:
float time2 = Time.time;
this.KMPBFNNLEOL = time2;
int num4 = this.JPFCJGDGNIH.IAHDANBDAAM();
KLLMCPFPIIE<int> jpfcjgdgnih = this.JPFCJGDGNIH;
IL_A9:
if (base.OGIBLNIIHDK)
{
int num5 = this.JPFCJGDGNIH.IAHDANBDAAM();
this.NCPPIPDKCHC();
this.PHMLNIFDNDH = (ulong)0L;
}
}
}
// Token: 0x0601374E RID: 79694 RVA: 0x0047D2D8 File Offset: 0x0047B4D8
[Token(Token = "0x601374E")]
[Address(RVA = "0x1630970", Offset = "0x162F970", VA = "0x181630970")]
private void ABIFJPOAIHH(DrinkableBottle HCDFFKEPPEG)
{
BreakableObject breakableObject = this.breakableObject;
int num = 0;
if (breakableObject != num)
{
BreakableObject breakableObject2 = this.breakableObject;
bool isEmpty = HCDFFKEPPEG.MEBGJGNMIMG;
breakableObject2.SetBreakable(isEmpty, this);
}
}
// Token: 0x0601374F RID: 79695 RVA: 0x0047D314 File Offset: 0x0047B514
[Token(Token = "0x601374F")]
[Address(RVA = "0x1630E10", Offset = "0x162FE10", VA = "0x181630E10")]
private void FEJMFBKEJAG()
{
Transform transform = this.liquidLevelTransform;
int num = 0;
if (transform != num)
{
Vector3[] array = this.liquidScaleByDrinks;
Transform transform2 = this.liquidLevelTransform;
int num2 = this.JPFCJGDGNIH.IAHDANBDAAM();
int length = this.liquidScaleByDrinks.Length;
int num3 = 0;
int num4 = Mathf.Clamp(num2, num3, length);
}
}
// Token: 0x06013750 RID: 79696 RVA: 0x0047D374 File Offset: 0x0047B574
[Token(Token = "0x6013750")]
[Address(RVA = "0x1630FD0", Offset = "0x162FFD0", VA = "0x181630FD0")]
private void NCPPIPDKCHC()
{
if (base.OGIBLNIIHDK && !this.waterBottle.MEBGJGNMIMG)
{
this.waterBottle.AuthorityMarkEmpty();
NGFENBEJIDN ngfenbejidn = this.powerupType;
if (ngfenbejidn != NGFENBEJIDN.INVALID)
{
}
PhotonView photonView = base.JDHMIOJKLCK;
DGLOJCGDOGG.LFLFMIMNCON<AGAJMBPABDL> lflfmimncon = new DGLOJCGDOGG.LFLFMIMNCON(this.RpcOnPotionActivated);
AGAJMBPABDL phmlnifdndh = this.PHMLNIFDNDH;
photonView.RpcAll<AGAJMBPABDL>(lflfmimncon, phmlnifdndh);
}
}
// Token: 0x06013751 RID: 79697 RVA: 0x0047D3DC File Offset: 0x0047B5DC
[Token(Token = "0x6013751")]
[Address(RVA = "0x68F7C0", Offset = "0x68E7C0", VA = "0x18068F7C0")]
[NFOMENMAOIA]
private void RpcOnPotionActivated(AGAJMBPABDL DHHCKOMPCPK)
{
Potion.JICLAAJLNCE aoffbphmbbp = this.AOFFBPHMBBP;
if (aoffbphmbbp != 0)
{
aoffbphmbbp(this, DHHCKOMPCPK);
return;
}
}
// Token: 0x06013752 RID: 79698 RVA: 0x0047D400 File Offset: 0x0047B600
[Token(Token = "0x6013752")]
[Address(RVA = "0x1631620", Offset = "0x1630620", VA = "0x181631620")]
public Potion()
{
}
// Token: 0x0400C9D5 RID: 51669
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400C9D5")]
[SerializeField]
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
private Tool tool;
// Token: 0x0400C9D6 RID: 51670
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400C9D6")]
[SerializeField]
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
private DrinkableBottle waterBottle;
// Token: 0x0400C9D7 RID: 51671
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400C9D7")]
[SerializeField]
[NKNLDEIPALE(FHBJCBPFODN.Self, false, false, false)]
private BreakableObject breakableObject;
// Token: 0x0400C9D8 RID: 51672
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400C9D8")]
[SerializeField]
private NGFENBEJIDN powerupType;
// Token: 0x0400C9D9 RID: 51673
[FieldOffset(Offset = "0x64")]
[Token(Token = "0x400C9D9")]
[SerializeField]
private int drinksToActivate = (int)((ulong)3L);
// Token: 0x0400C9DA RID: 51674
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400C9DA")]
[SerializeField]
private float drinkResetTime = 2f;
// Token: 0x0400C9DB RID: 51675
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400C9DB")]
[SerializeField]
private RecRoomAudioClip[] clinkSfx;
// Token: 0x0400C9DC RID: 51676
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x400C9DC")]
[SerializeField]
private bool shareable;
// Token: 0x0400C9DD RID: 51677
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x400C9DD")]
[SerializeField]
[Header("Optional dynamic liquid level")]
private Transform liquidLevelTransform;
// Token: 0x0400C9DE RID: 51678
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x400C9DE")]
[SerializeField]
private Vector3[] liquidScaleByDrinks;
// Token: 0x0400C9DF RID: 51679
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x400C9DF")]
private AGAJMBPABDL PHMLNIFDNDH;
// Token: 0x0400C9E0 RID: 51680
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x400C9E0")]
private float KMPBFNNLEOL;
// Token: 0x0400C9E1 RID: 51681
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x400C9E1")]
private KLLMCPFPIIE<int> JPFCJGDGNIH;
// Token: 0x0400C9E2 RID: 51682
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x400C9E2")]
[NonSerialized]
public bool AutomaticDrinkingEnabled = true;
// Token: 0x02002D32 RID: 11570
[Token(Token = "0x2002D32")]
public sealed class JICLAAJLNCE : MulticastDelegate
{
// Token: 0x06013753 RID: 79699 RVA: 0x0047D430 File Offset: 0x0047B630
[Token(Token = "0x6013753")]
[Address(RVA = "0x4AF020", Offset = "0x4AE020", VA = "0x1804AF020")]
public JICLAAJLNCE(object FEDFKKMABOG, IntPtr APAICGIHAGJ)
{
this.method = APAICGIHAGJ;
this.m_target = FEDFKKMABOG;
}
// Token: 0x06013754 RID: 79700 RVA: 0x0047D44C File Offset: 0x0047B64C
[Token(Token = "0x6013754")]
[Address(RVA = "0x52CCA0", Offset = "0x52BCA0", VA = "0x18052CCA0", Slot = "13")]
public void Invoke(Potion GCEPCEDMAHI, AGAJMBPABDL IEKDDPPNFPF)
{
if (this.delegates != 0)
{
}
uint num;
if (num != (uint)0)
{
throw new ExecutionEngineException();
}
}
// Token: 0x06013755 RID: 79701 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6013755")]
[Address(RVA = "0x52CC60", Offset = "0x52BC60", VA = "0x18052CC60", Slot = "14")]
public IAsyncResult BeginInvoke(Potion GCEPCEDMAHI, AGAJMBPABDL IEKDDPPNFPF, AsyncCallback AFLPGGJMPOE, object FEDFKKMABOG)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06013756 RID: 79702 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x6013756")]
[Address(RVA = "0x4F56B0", Offset = "0x4F46B0", VA = "0x1804F56B0", Slot = "15")]
public void EndInvoke(IAsyncResult GIAOBLMEMMI)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
}
}
@@ -0,0 +1,34 @@
using System;
using Cpp2IlInjected;
using RecRoom.Core.Powerups;
namespace RecRoom.Activities.Quest.Goblin2
{
// Token: 0x02002D2F RID: 11567
[Token(Token = "0x2002D2F")]
public class QuestDamagePowerup : Powerup
{
// Token: 0x0601373C RID: 79676 RVA: 0x0047CD58 File Offset: 0x0047AF58
[Token(Token = "0x601373C")]
[Address(RVA = "0x16351E0", Offset = "0x16341E0", VA = "0x1816351E0", Slot = "13")]
protected override void Awake()
{
base.Awake();
}
// Token: 0x0601373D RID: 79677 RVA: 0x0047CD6C File Offset: 0x0047AF6C
[Token(Token = "0x601373D")]
[Address(RVA = "0x16351F0", Offset = "0x16341F0", VA = "0x1816351F0", Slot = "14")]
protected override void OnDestroy()
{
base.OnDestroy();
}
// Token: 0x0601373E RID: 79678 RVA: 0x0047CD80 File Offset: 0x0047AF80
[Token(Token = "0x601373E")]
[Address(RVA = "0x1635200", Offset = "0x1634200", VA = "0x181635200")]
public QuestDamagePowerup()
{
}
}
}
@@ -0,0 +1,80 @@
using System;
using System.Collections.Generic;
using Cpp2IlInjected;
using RecRoom.Core.AI;
using RecRoom.Core.Combat;
using RecRoom.Core.Powerups;
using UnityEngine;
namespace RecRoom.Activities.Quest.Goblin2
{
// Token: 0x02002D30 RID: 11568
[Token(Token = "0x2002D30")]
public class QuestFirePowerup : Powerup
{
// Token: 0x0601373F RID: 79679 RVA: 0x0047CD94 File Offset: 0x0047AF94
[Token(Token = "0x601373F")]
[Address(RVA = "0x1639D80", Offset = "0x1638D80", VA = "0x181639D80", Slot = "19")]
protected override void FEMDJPNLMFH(Weapon GDIGKHINJCG, Enemy HMEIODIHDCL, GHMDIDJLFMC KNLMJBAKCGF, bool MJJOHHLGOGK)
{
base..ctor();
float y = KNLMJBAKCGF.NKKJICPFILJ.y;
float z = KNLMJBAKCGF.FEDGOFKEGEF.z;
float z2 = KNLMJBAKCGF.EGJBGIIHEEL.z;
}
// Token: 0x06013740 RID: 79680 RVA: 0x0047CDD4 File Offset: 0x0047AFD4
[Token(Token = "0x6013740")]
[Address(RVA = "0x1639A60", Offset = "0x1638A60", VA = "0x181639A60")]
private void ENEEDHNKJBH(Enemy BPJNEFJBBML, Weapon GDIGKHINJCG, FJDJKDOJKDO GMPCPLNNMGD, GHMDIDJLFMC KNLMJBAKCGF)
{
int num = 0;
if (GDIGKHINJCG != num)
{
throw new NullReferenceException();
}
float num2;
if (Time.time > num2)
{
if (base.OGIBLNIIHDK)
{
if (!BPJNEFJBBML.OGIBLNIIHDK)
{
AGAJMBPABDL agajmbpabdl = KKPBCOOONNK.MDMMDPEKICF;
bool flag = BPJNEFJBBML.IOGGJAMKGNG();
}
AGAJMBPABDL authority = GDIGKHINJCG.KPBFAKFKDAF;
}
float time = Time.time;
throw new NullReferenceException();
}
}
// Token: 0x06013741 RID: 79681 RVA: 0x0047CE48 File Offset: 0x0047B048
[Token(Token = "0x6013741")]
[Address(RVA = "0x1639E80", Offset = "0x1638E80", VA = "0x181639E80")]
public QuestFirePowerup()
{
Dictionary<Enemy, float> dictionary = new Dictionary();
this.CBDDGLKAEBO = dictionary;
base..ctor();
}
// Token: 0x0400C9D1 RID: 51665
[FieldOffset(Offset = "0xE0")]
[Token(Token = "0x400C9D1")]
[SerializeField]
private float bonusEnemyForce = 20f;
// Token: 0x0400C9D2 RID: 51666
[FieldOffset(Offset = "0xE4")]
[Token(Token = "0x400C9D2")]
[SerializeField]
private float minRepeatDamageInterval = 0.5f;
// Token: 0x0400C9D3 RID: 51667
[FieldOffset(Offset = "0xE8")]
[Token(Token = "0x400C9D3")]
private readonly Dictionary<Enemy, float> CBDDGLKAEBO;
}
}