Files
Jan2021-Cpp2Il-Dump/Assembly-CSharp/RecRoom/Consumable/SpawnerConsumableTool.cs
T
2026-04-08 23:40:05 +02:00

242 lines
8.2 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Core;
using UnityEngine;
namespace RecRoom.Consumable
{
// Token: 0x02002159 RID: 8537
[Token(Token = "0x2002159")]
[RequireComponent(typeof(ToolSet))]
[RequireComponent(typeof(Tool))]
[StructLayout(3)]
public class SpawnerConsumableTool : ConsumableTool
{
// Token: 0x0600EB33 RID: 60211 RVA: 0x0037C278 File Offset: 0x0037A478
[Token(Token = "0x600EB33")]
[Address(RVA = "0x17B1220", Offset = "0x17AFC20", VA = "0x1817B1220", Slot = "13")]
protected override void Awake()
{
base.Awake();
Tool tool = this.tool;
ActionEvent<Tool> postPickupEvent = tool.PostPickupEvent;
Action<Tool> action = new Action(this.MNCLFHBBPHB);
ActionEvent<Tool> actionEvent = postPickupEvent + action;
tool.PostPickupEvent = actionEvent;
ToolSet toolSet = this.toolSet;
Action<List<Tool>> action2 = new Action(this.JMENIIMAPPH);
toolSet.OnPiecesSpawned += action2;
}
// Token: 0x0600EB34 RID: 60212 RVA: 0x0037C2DC File Offset: 0x0037A4DC
[Token(Token = "0x600EB34")]
[Address(RVA = "0x17B1780", Offset = "0x17B0180", VA = "0x1817B1780", Slot = "14")]
protected override void OnDestroy()
{
Tool tool = this.tool;
ActionEvent<Tool> postReleaseEvent = tool.PostReleaseEvent;
Action<Tool> action = new Action(this.MNCLFHBBPHB);
ActionEvent<Tool> actionEvent = postReleaseEvent - action;
tool.PostReleaseEvent = actionEvent;
ToolSet toolSet = this.toolSet;
Action<List<Tool>> action2 = new Action(this.JMENIIMAPPH);
toolSet.OnPiecesSpawned -= action2;
base.OnDestroy();
}
// Token: 0x0600EB35 RID: 60213 RVA: 0x0037C340 File Offset: 0x0037A540
[Token(Token = "0x600EB35")]
[Address(RVA = "0x17B1620", Offset = "0x17B0020", VA = "0x1817B1620")]
private void MNCLFHBBPHB(Tool NBHJPDBHDHB)
{
if (!this.HCJBMDICMFA && !this.tool.NDKHDFJHGPP)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = this.tool.<FLFJCIPBAPA>k__BackingField;
int num = 0;
if (<FLFJCIPBAPA>k__BackingField != num && this.tool.<FLFJCIPBAPA>k__BackingField.<EPECNEBCMLG>k__BackingField == PlayerSpawnedEquipment.IILDIBHEIDO.GiftBox)
{
base.LHBLHBEIFKA();
Action action = new Action(this.ONAALNFGKAF);
ISchedulerPromise schedulerPromise = this.InvokeNextEndOfFrame(action);
}
}
}
// Token: 0x0600EB36 RID: 60214 RVA: 0x0037C3B0 File Offset: 0x0037A5B0
[Token(Token = "0x600EB36")]
[Address(RVA = "0x17B1320", Offset = "0x17AFD20", VA = "0x1817B1320")]
private void JMENIIMAPPH(List<Tool> LCMLJHDFCOJ)
{
int num;
do
{
num = 0;
List<Tool> pieces = LCMLJHDFCOJ;
Predicate<Tool> <>9__5_ = SpawnerConsumableTool.<>c.<>9__5_0;
if (<>9__5_ == 0)
{
SpawnerConsumableTool.<>c.<>9__5_0 = delegate(Tool c)
{
ConsumableSpawnedContainerToolPiece component = c.GetComponent<ConsumableSpawnedContainerToolPiece>();
int num2 = 0;
return component != num2;
};
}
List<Tool> list = ListExt.RemoveAllWhere<Tool>(LCMLJHDFCOJ, <>9__5_);
if (LCMLJHDFCOJ.GetEnumerator() != 0)
{
ConsumableInfo <JDADGBIDGIB>k__BackingField = this.CKNFEDPPDOO.<JDADGBIDGIB>k__BackingField;
List<Tool> pieces2 = pieces;
ConsumableSpawnedContainerToolPiece consumableSpawnedContainerToolPiece;
consumableSpawnedContainerToolPiece.SetNonHolderPieces(pieces2, <JDADGBIDGIB>k__BackingField);
}
if (0 != -1)
{
}
}
while (num != 0);
ConsumableManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
OOCCCGPICOG cknfedppdoo = this.CKNFEDPPDOO;
BPHGKAEDBPE.CBEOHBCIPEA cbeohbcipea = delegate(string error)
{
long <JPAOOKPLEDB>k__BackingField = dbofahkbhfl.<>4__this.CKNFEDPPDOO.<JPAOOKPLEDB>k__BackingField;
ConsumableManager.KIDKMAOBOIG <MPBLJOGNHKP>k__BackingField = dbofahkbhfl.<>4__this.CKNFEDPPDOO.<MPBLJOGNHKP>k__BackingField;
Debug.LogError(string.Format("Consumable Id:{0} Category:{1} can not be consumed: {2}", <JPAOOKPLEDB>k__BackingField, <JPAOOKPLEDB>k__BackingField, error));
Action <>9__3 = dbofahkbhfl.<>9__2;
SpawnerConsumableTool <>4__this = dbofahkbhfl.<>4__this;
if (<>9__3 == 0)
{
Action action = delegate
{
Tool[] array = dbofahkbhfl.pieces.ToArray();
int num3 = 0;
int length = array.Length;
if (num3 < length)
{
Tool tool = array[num3];
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
PhotonNetwork.Destroy(tool.gameObject);
num3++;
}
};
dbofahkbhfl.<>9__2 = action;
}
ISchedulerPromise schedulerPromise = <>4__this.InvokeNextEndOfFrame(<>9__3);
};
IEnumerator enumerator = instance.UseConsumable(cknfedppdoo, 1, cbeohbcipea);
this.HCJBMDICMFA = true;
}
// Token: 0x0600EB37 RID: 60215 RVA: 0x0037C478 File Offset: 0x0037A678
[Token(Token = "0x600EB37")]
[Address(RVA = "0x17B1880", Offset = "0x17B0280", VA = "0x1817B1880")]
public SpawnerConsumableTool()
{
}
// Token: 0x0600EB38 RID: 60216 RVA: 0x0037C48C File Offset: 0x0037A68C
[Token(Token = "0x600EB38")]
[Address(RVA = "0x17B1720", Offset = "0x17B0120", VA = "0x1817B1720")]
[CompilerGenerated]
private void ONAALNFGKAF()
{
PhotonNetwork.Destroy(base.gameObject);
}
// Token: 0x04009BBC RID: 39868
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x4009BBC")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private ToolSet toolSet;
// Token: 0x04009BBD RID: 39869
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x4009BBD")]
private bool HCJBMDICMFA;
// Token: 0x0200215A RID: 8538
[Token(Token = "0x200215A")]
[CompilerGenerated]
private sealed class DBOFAHKBHFL
{
// Token: 0x0600EB39 RID: 60217 RVA: 0x0037C4A4 File Offset: 0x0037A6A4
[Token(Token = "0x600EB39")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public DBOFAHKBHFL()
{
}
// Token: 0x0600EB3A RID: 60218 RVA: 0x0037C4B8 File Offset: 0x0037A6B8
[Token(Token = "0x600EB3A")]
[Address(RVA = "0x179BA90", Offset = "0x179A490", VA = "0x18179BA90")]
internal void <ToolSet_OnPiecesSpawned>b__1(string error)
{
long <JPAOOKPLEDB>k__BackingField = this.<>4__this.CKNFEDPPDOO.<JPAOOKPLEDB>k__BackingField;
ConsumableManager.KIDKMAOBOIG <MPBLJOGNHKP>k__BackingField = this.<>4__this.CKNFEDPPDOO.<MPBLJOGNHKP>k__BackingField;
Debug.LogError(string.Format("Consumable Id:{0} Category:{1} can not be consumed: {2}", <JPAOOKPLEDB>k__BackingField, <JPAOOKPLEDB>k__BackingField, error));
Action action = this.<>9__2;
SpawnerConsumableTool spawnerConsumableTool = this.<>4__this;
if (action == 0)
{
Action action2 = delegate
{
Tool[] array = this.pieces.ToArray();
int num = 0;
int length = array.Length;
if (num < length)
{
Tool tool = array[num];
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
PhotonNetwork.Destroy(tool.gameObject);
num++;
}
};
this.<>9__2 = action2;
}
ISchedulerPromise schedulerPromise = spawnerConsumableTool.InvokeNextEndOfFrame(action);
}
// Token: 0x0600EB3B RID: 60219 RVA: 0x0037C534 File Offset: 0x0037A734
[Token(Token = "0x600EB3B")]
[Address(RVA = "0x179BBE0", Offset = "0x179A5E0", VA = "0x18179BBE0")]
internal void <ToolSet_OnPiecesSpawned>b__2()
{
Tool[] array = this.pieces.ToArray();
int num = 0;
int length = array.Length;
if (num < length)
{
Tool tool = array[num];
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
PhotonNetwork.Destroy(tool.gameObject);
num++;
}
}
// Token: 0x04009BBE RID: 39870
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009BBE")]
public SpawnerConsumableTool <>4__this;
// Token: 0x04009BBF RID: 39871
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009BBF")]
public List<Tool> pieces;
// Token: 0x04009BC0 RID: 39872
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009BC0")]
public Action <>9__2;
}
}
}