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

443 lines
15 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Tools;
using UnityEngine;
namespace RecRoom.Consumable
{
// Token: 0x02002147 RID: 8519
[Token(Token = "0x2002147")]
[StructLayout(3)]
public abstract class ConsumableTool : MonoBehaviourPun
{
// Token: 0x17002734 RID: 10036
// (get) Token: 0x0600EAE2 RID: 60130 RVA: 0x0037ADBC File Offset: 0x00378FBC
// (set) Token: 0x0600EAE3 RID: 60131 RVA: 0x0037ADD0 File Offset: 0x00378FD0
[Token(Token = "0x17002734")]
public PlayerSpawnedEquipment.IILDIBHEIDO GDKPKFJGOFO
{
[Token(Token = "0x600EAE2")]
[Address(RVA = "0x4F8170", Offset = "0x4F6B70", VA = "0x1804F8170")]
get;
[Token(Token = "0x600EAE3")]
[Address(RVA = "0x4F8620", Offset = "0x4F7020", VA = "0x1804F8620")]
private set;
}
// Token: 0x17002735 RID: 10037
// (get) Token: 0x0600EAE4 RID: 60132 RVA: 0x0037ADE4 File Offset: 0x00378FE4
// (set) Token: 0x0600EAE5 RID: 60133 RVA: 0x0037ADF8 File Offset: 0x00378FF8
[Token(Token = "0x17002735")]
public bool DKLGNFGONEM
{
[Token(Token = "0x600EAE4")]
[Address(RVA = "0x9EF5F0", Offset = "0x9EDFF0", VA = "0x1809EF5F0")]
get;
[Token(Token = "0x600EAE5")]
[Address(RVA = "0x10D4C40", Offset = "0x10D3640", VA = "0x1810D4C40")]
private set;
}
// Token: 0x17002736 RID: 10038
// (get) Token: 0x0600EAE6 RID: 60134 RVA: 0x0037AE0C File Offset: 0x0037900C
// (set) Token: 0x0600EAE7 RID: 60135 RVA: 0x0037AE20 File Offset: 0x00379020
[Token(Token = "0x17002736")]
public OOCCCGPICOG PCCJOKHNIPL
{
[Token(Token = "0x600EAE6")]
[Address(RVA = "0x3EDE90", Offset = "0x3EC890", VA = "0x1803EDE90")]
get
{
return this.CKNFEDPPDOO;
}
[Token(Token = "0x600EAE7")]
[Address(RVA = "0x179AEE0", Offset = "0x17998E0", VA = "0x18179AEE0")]
set
{
Tool tool = this.tool;
this.CKNFEDPPDOO = value;
int num = 0;
bool flag = OOCCCGPICOG.BDBLGMKABNK(value, num);
object bnmoddgeghn = this.BNMODDGEGHN;
tool.SetPickupEnabled(flag, bnmoddgeghn);
}
}
// Token: 0x17002737 RID: 10039
// (get) Token: 0x0600EAE8 RID: 60136 RVA: 0x0037AE5C File Offset: 0x0037905C
// (set) Token: 0x0600EAE9 RID: 60137 RVA: 0x0037AE70 File Offset: 0x00379070
[Token(Token = "0x17002737")]
protected ConsumableInfo MDDMBJDBOGD
{
[Token(Token = "0x600EAE8")]
[Address(RVA = "0x48F050", Offset = "0x48DA50", VA = "0x18048F050")]
get;
[Token(Token = "0x600EAE9")]
[Address(RVA = "0x52F860", Offset = "0x52E260", VA = "0x18052F860")]
set;
}
// Token: 0x0600EAEA RID: 60138 RVA: 0x0037AE84 File Offset: 0x00379084
[Token(Token = "0x600EAEA")]
[Address(RVA = "0x179A170", Offset = "0x1798B70", VA = "0x18179A170", Slot = "13")]
protected override void Awake()
{
ConsumableManager instance;
int num;
ulong num2;
do
{
base..ctor();
bool isLocal = base.photonView.isLocal;
Tool tool = this.tool;
this.<MHCDCIGJNNA>k__BackingField = isLocal;
if (tool.NDKHDFJHGPP || this.tool.InstantiationParameters == 0)
{
goto IL_8E;
}
Dictionary<string, object> instantiationParameters = this.tool.InstantiationParameters;
bool flag;
if (!flag)
{
goto IL_8E;
}
instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
num = 0;
}
while (num2 != (ulong)0L && num2 == (ulong)0L);
if (instance.TryGetConsumableInfo(num) != 0)
{
this.OnDestroy();
}
Dictionary<string, object> instantiationParameters2 = this.tool.InstantiationParameters;
bool flag2;
if (flag2)
{
ulong num4;
ulong num3 = num4;
this.<NAIDKNLBACJ>k__BackingField = (PlayerSpawnedEquipment.IILDIBHEIDO)num3;
}
IL_8E:
if (this.<ENJFOPBELFF>k__BackingField == (ulong)0L)
{
Debug.LogError("ConsumableItem is null, something is very wrong");
}
Tool tool2 = this.tool;
ActionEvent<Tool, Vector3, Quaternion, Vector3, bool> postResetEvent = tool2.PostResetEvent;
Action<Tool, Vector3, Quaternion, Vector3, bool> action = new Action(this.FICCBKGGJOE);
ActionEvent<Tool, Vector3, Quaternion, Vector3, bool> actionEvent = postResetEvent + action;
tool2.PostResetEvent = actionEvent;
this.tool.toolEntity.AddMainToolBrokenBehavior((ToolEntity.PACMMGFMOEN)((uint)2), this, 999);
if (this.<MHCDCIGJNNA>k__BackingField)
{
ConsumableTool.HCIKBFLBMPH.Add(this);
}
Tool tool3 = this.tool;
object leckfkbfhgb = this.LECKFKBFHGB;
bool flag3 = this.<MHCDCIGJNNA>k__BackingField;
tool3.SetPickupEnabled(flag3, leckfkbfhgb);
Tool tool4 = this.tool;
Tool.HMMDPJMIHGJ hmmdpjmihgj = new Tool.HMMDPJMIHGJ(this.EPPFLONEOMA);
tool4.CustomAuthorityResetOnKillzoneBehavior = hmmdpjmihgj;
GameManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
int num5 = 0;
if (instance2 != num5)
{
GameManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
MIEIBBPMDMP.GGPHEKCPPMP ggphekcppmp = new MIEIBBPMDMP.GGPHEKCPPMP(this.OENCFJHENPB);
instance3.KMKCFILCLNO += ggphekcppmp;
}
}
// Token: 0x0600EAEB RID: 60139 RVA: 0x0037B010 File Offset: 0x00379210
[Token(Token = "0x600EAEB")]
[Address(RVA = "0x179A5A0", Offset = "0x1798FA0", VA = "0x18179A5A0")]
private void FICCBKGGJOE(Tool NBHJPDBHDHB, Vector3 BNMOCBJEEPN, Quaternion LPHCCEOHNIN, Vector3 GMMJHABHDHE, bool ACPOOMGHPKJ)
{
if (base.hasOwnership)
{
PhotonNetwork.Destroy(base.gameObject);
return;
}
}
// Token: 0x0600EAEC RID: 60140 RVA: 0x0037B034 File Offset: 0x00379234
[Token(Token = "0x600EAEC")]
[Address(RVA = "0x179AC20", Offset = "0x1799620", VA = "0x18179AC20")]
private void OENCFJHENPB(ushort LLEHBLJHJHM, ushort CPMPEJFMDED, ushort PLGFJEILFGP, ushort OEAPMLMHLLF)
{
if (base.hasAuthority)
{
PhotonNetwork.Destroy(base.gameObject);
}
}
// Token: 0x0600EAED RID: 60141 RVA: 0x0037B058 File Offset: 0x00379258
[Token(Token = "0x600EAED")]
[Address(RVA = "0x179ACA0", Offset = "0x17996A0", VA = "0x18179ACA0", Slot = "14")]
protected override void OnDestroy()
{
if (this.<MHCDCIGJNNA>k__BackingField)
{
bool flag = ConsumableTool.HCIKBFLBMPH.Remove(this);
}
GameManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
int num = 0;
if (instance != num)
{
GameManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
MIEIBBPMDMP.GGPHEKCPPMP ggphekcppmp = new MIEIBBPMDMP.GGPHEKCPPMP(this.OENCFJHENPB);
instance2.KMKCFILCLNO -= ggphekcppmp;
}
base.OnDestroy();
}
// Token: 0x0600EAEE RID: 60142 RVA: 0x0037B0B4 File Offset: 0x003792B4
[Token(Token = "0x600EAEE")]
[Address(RVA = "0x179A620", Offset = "0x1799020", VA = "0x18179A620", Slot = "15")]
protected virtual void FIENOGGFMIE(ConsumableInfo FNPFHJHDDAC)
{
for (;;)
{
this.<ENJFOPBELFF>k__BackingField = FNPFHJHDDAC;
if (!this.<MHCDCIGJNNA>k__BackingField)
{
return;
}
if (!this.tool.NDKHDFJHGPP && this.tool.InstantiationParameters != 0)
{
Dictionary<string, object> instantiationParameters = this.tool.InstantiationParameters;
bool flag;
if (flag)
{
break;
}
}
ConsumableManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
string consumableItemDesc = this.<ENJFOPBELFF>k__BackingField.ConsumableItemDesc;
OOCCCGPICOG latestNonActiveNonTransferableConsumableByType = instance.GetLatestNonActiveNonTransferableConsumableByType(consumableItemDesc);
Tool tool = this.tool;
int num = 0;
this.CKNFEDPPDOO = latestNonActiveNonTransferableConsumableByType;
bool flag2 = OOCCCGPICOG.BDBLGMKABNK(latestNonActiveNonTransferableConsumableByType, num);
object bnmoddgeghn = this.BNMODDGEGHN;
tool.SetPickupEnabled(flag2, bnmoddgeghn);
OOCCCGPICOG cknfedppdoo = this.CKNFEDPPDOO;
int num2 = 0;
if (OOCCCGPICOG.JGIMJGNAJHP(cknfedppdoo, num2))
{
goto Block_4;
}
}
ConsumableManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
ulong num4;
ulong num3 = num4;
OOCCCGPICOG consumableById = instance2.GetConsumableById((long)num3);
this.PCCJOKHNIPL = consumableById;
return;
Block_4:
ActionEvent<OOCCCGPICOG> kpcjmbnihhl = FOEHJBDMMBH.KPCJMBNIHHL;
Action<OOCCCGPICOG> action = new Action(this.LJNJNJPEHJI);
FOEHJBDMMBH.KPCJMBNIHHL = kpcjmbnihhl + action;
}
// Token: 0x0600EAEF RID: 60143 RVA: 0x0037B1AC File Offset: 0x003793AC
[Token(Token = "0x600EAEF")]
[Address(RVA = "0x179AAF0", Offset = "0x17994F0", VA = "0x18179AAF0")]
private void LJNJNJPEHJI(OOCCCGPICOG BAJGNABECMN)
{
string consumableItemDesc = this.<ENJFOPBELFF>k__BackingField.ConsumableItemDesc;
if (string.Equals(BAJGNABECMN.<CNJALCEBPMC>k__BackingField, consumableItemDesc))
{
Tool tool = this.tool;
int num = 0;
this.CKNFEDPPDOO = BAJGNABECMN;
bool flag = OOCCCGPICOG.BDBLGMKABNK(BAJGNABECMN, num);
object bnmoddgeghn = this.BNMODDGEGHN;
tool.SetPickupEnabled(flag, bnmoddgeghn);
ActionEvent<OOCCCGPICOG> kpcjmbnihhl = FOEHJBDMMBH.KPCJMBNIHHL;
Action<OOCCCGPICOG> action = new Action(this.LJNJNJPEHJI);
FOEHJBDMMBH.KPCJMBNIHHL = kpcjmbnihhl - action;
}
}
// Token: 0x0600EAF0 RID: 60144 RVA: 0x0037B228 File Offset: 0x00379428
[Token(Token = "0x600EAF0")]
[Address(RVA = "0x179A980", Offset = "0x1799380", VA = "0x18179A980")]
public static ConsumableTool FindConsumableTool(long ENJEOLBEALP)
{
List<ConsumableTool> hcikbflbmph = ConsumableTool.HCIKBFLBMPH;
Func<ConsumableTool, bool> func = delegate(ConsumableTool ct)
{
OOCCCGPICOG cknfedppdoo = ct.CKNFEDPPDOO;
int num = 0;
bool flag = OOCCCGPICOG.BDBLGMKABNK(cknfedppdoo, num);
if (!flag)
{
return flag;
}
OOCCCGPICOG cknfedppdoo2 = ct.CKNFEDPPDOO;
long id = ENJEOLBEALP;
return cknfedppdoo2.<JPAOOKPLEDB>k__BackingField == id;
};
return Enumerable.FirstOrDefault<ConsumableTool>(hcikbflbmph, func);
}
// Token: 0x0600EAF1 RID: 60145 RVA: 0x0037B264 File Offset: 0x00379464
[Token(Token = "0x600EAF1")]
[Address(RVA = "0x179A8A0", Offset = "0x17992A0", VA = "0x18179A8A0")]
public static ConsumableTool FindConsumableTool(ConsumableManager.KIDKMAOBOIG DJFBMCIDJNK)
{
List<ConsumableTool> hcikbflbmph = ConsumableTool.HCIKBFLBMPH;
Func<ConsumableTool, bool> func = delegate(ConsumableTool ct)
{
OOCCCGPICOG cknfedppdoo = ct.CKNFEDPPDOO;
int num = 0;
bool flag = OOCCCGPICOG.BDBLGMKABNK(cknfedppdoo, num);
if (!flag)
{
return flag;
}
OOCCCGPICOG cknfedppdoo2 = ct.CKNFEDPPDOO;
ConsumableManager.KIDKMAOBOIG category = DJFBMCIDJNK;
return cknfedppdoo2.<MPBLJOGNHKP>k__BackingField == category;
};
return Enumerable.FirstOrDefault<ConsumableTool>(hcikbflbmph, func);
}
// Token: 0x0600EAF2 RID: 60146 RVA: 0x0037B2A0 File Offset: 0x003794A0
[Token(Token = "0x600EAF2")]
[Address(RVA = "0x179AA60", Offset = "0x1799460", VA = "0x18179AA60")]
protected void LHBLHBEIFKA()
{
if (this.<MHCDCIGJNNA>k__BackingField)
{
NotificationManager instance = SingletonMonoBehaviour.Instance;
int num = 0;
IDisposable disposable = instance.Play(NotificationManager.IBIDFAOPIPC.Medium, "Added to your backpack!", 3f, num, num);
}
}
// Token: 0x0600EAF3 RID: 60147 RVA: 0x0037B2D8 File Offset: 0x003794D8
[Token(Token = "0x600EAF3")]
[Address(RVA = "0x4405A0", Offset = "0x43EFA0", VA = "0x1804405A0")]
private bool EPPFLONEOMA(Tool NBHJPDBHDHB, Killzone IKPBPBLJCOC)
{
return true;
}
// Token: 0x0600EAF4 RID: 60148 RVA: 0x0037B2E8 File Offset: 0x003794E8
[Token(Token = "0x600EAF4")]
[Address(RVA = "0x179AE60", Offset = "0x1799860", VA = "0x18179AE60")]
protected ConsumableTool()
{
object obj = new object();
this.BNMODDGEGHN = obj;
object obj2 = new object();
this.LECKFKBFHGB = obj2;
base..ctor();
}
// Token: 0x04009B93 RID: 39827
[Token(Token = "0x4009B93")]
private static List<ConsumableTool> HCIKBFLBMPH = new List();
// Token: 0x04009B94 RID: 39828
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4009B94")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
protected Tool tool;
// Token: 0x04009B95 RID: 39829
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4009B95")]
private object BNMODDGEGHN;
// Token: 0x04009B96 RID: 39830
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4009B96")]
private object LECKFKBFHGB;
// Token: 0x04009B99 RID: 39833
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x4009B99")]
protected OOCCCGPICOG CKNFEDPPDOO;
// Token: 0x02002148 RID: 8520
[Token(Token = "0x2002148")]
[CompilerGenerated]
private sealed class AJIFIAHMIEK
{
// Token: 0x0600EAF6 RID: 60150 RVA: 0x0037B330 File Offset: 0x00379530
[Token(Token = "0x600EAF6")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public AJIFIAHMIEK()
{
}
// Token: 0x0600EAF7 RID: 60151 RVA: 0x0037B344 File Offset: 0x00379544
[Token(Token = "0x600EAF7")]
[Address(RVA = "0x1798730", Offset = "0x1797130", VA = "0x181798730")]
internal bool <FindConsumableTool>b__0(ConsumableTool ct)
{
OOCCCGPICOG cknfedppdoo = ct.CKNFEDPPDOO;
int num = 0;
bool flag = OOCCCGPICOG.BDBLGMKABNK(cknfedppdoo, num);
if (!flag)
{
return flag;
}
OOCCCGPICOG cknfedppdoo2 = ct.CKNFEDPPDOO;
long num2 = this.id;
return cknfedppdoo2.<JPAOOKPLEDB>k__BackingField == num2;
}
// Token: 0x04009B9B RID: 39835
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B9B")]
public long id;
}
// Token: 0x02002149 RID: 8521
[Token(Token = "0x2002149")]
[CompilerGenerated]
private sealed class DFGDNDPNCJE
{
// Token: 0x0600EAF8 RID: 60152 RVA: 0x0037B388 File Offset: 0x00379588
[Token(Token = "0x600EAF8")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public DFGDNDPNCJE()
{
}
// Token: 0x0600EAF9 RID: 60153 RVA: 0x0037B39C File Offset: 0x0037959C
[Token(Token = "0x600EAF9")]
[Address(RVA = "0x179BD10", Offset = "0x179A710", VA = "0x18179BD10")]
internal bool <FindConsumableTool>b__0(ConsumableTool ct)
{
OOCCCGPICOG cknfedppdoo = ct.CKNFEDPPDOO;
int num = 0;
bool flag = OOCCCGPICOG.BDBLGMKABNK(cknfedppdoo, num);
if (!flag)
{
return flag;
}
OOCCCGPICOG cknfedppdoo2 = ct.CKNFEDPPDOO;
ConsumableManager.KIDKMAOBOIG kidkmaoboig = this.category;
return cknfedppdoo2.<MPBLJOGNHKP>k__BackingField == kidkmaoboig;
}
// Token: 0x04009B9C RID: 39836
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B9C")]
public ConsumableManager.KIDKMAOBOIG category;
}
}
}