Files
2026-04-08 23:40:05 +02:00

1439 lines
52 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Async;
using RecRoom.Systems.PlayerRoles;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.SceneManagement;
namespace RecRoom.Consumable
{
// Token: 0x02002133 RID: 8499
[Token(Token = "0x2002133")]
[StructLayout(3)]
public class ConsumableManager : NetworkedSingletonMonoBehaviour<ConsumableManager>
{
// Token: 0x140000F1 RID: 241
// (add) Token: 0x0600EA6A RID: 60010 RVA: 0x00378F4C File Offset: 0x0037714C
// (remove) Token: 0x0600EA6B RID: 60011 RVA: 0x00378F74 File Offset: 0x00377174
[Token(Token = "0x140000F1")]
public event Action<OOCCCGPICOG, bool> HNCNGJFLMEL
{
[Token(Token = "0x600EA6A")]
[Address(RVA = "0x166EC50", Offset = "0x166D650", VA = "0x18166EC50")]
[CompilerGenerated]
add
{
Action<OOCCCGPICOG, bool> hncngjflmel;
Delegate @delegate;
do
{
hncngjflmel = this.HNCNGJFLMEL;
@delegate = Delegate.Combine(hncngjflmel, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != hncngjflmel)
{
}
}
[Token(Token = "0x600EA6B")]
[Address(RVA = "0x166ED90", Offset = "0x166D790", VA = "0x18166ED90")]
[CompilerGenerated]
remove
{
Action<OOCCCGPICOG, bool> hncngjflmel;
Delegate @delegate;
do
{
hncngjflmel = this.HNCNGJFLMEL;
@delegate = Delegate.Remove(hncngjflmel, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != hncngjflmel)
{
}
}
}
// Token: 0x140000F2 RID: 242
// (add) Token: 0x0600EA6C RID: 60012 RVA: 0x00378F9C File Offset: 0x0037719C
// (remove) Token: 0x0600EA6D RID: 60013 RVA: 0x00378FC4 File Offset: 0x003771C4
[Token(Token = "0x140000F2")]
public event Action<OOCCCGPICOG, bool> BNFPEINEDCC
{
[Token(Token = "0x600EA6C")]
[Address(RVA = "0x166ECF0", Offset = "0x166D6F0", VA = "0x18166ECF0")]
[CompilerGenerated]
add
{
Action<OOCCCGPICOG, bool> bnfpeinedcc;
Delegate @delegate;
do
{
bnfpeinedcc = this.BNFPEINEDCC;
@delegate = Delegate.Combine(bnfpeinedcc, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != bnfpeinedcc)
{
}
}
[Token(Token = "0x600EA6D")]
[Address(RVA = "0x166EE30", Offset = "0x166D830", VA = "0x18166EE30")]
[CompilerGenerated]
remove
{
Action<OOCCCGPICOG, bool> bnfpeinedcc;
Delegate @delegate;
do
{
bnfpeinedcc = this.BNFPEINEDCC;
@delegate = Delegate.Remove(bnfpeinedcc, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != bnfpeinedcc)
{
}
}
}
// Token: 0x1700272B RID: 10027
// (get) Token: 0x0600EA6E RID: 60014 RVA: 0x00378FEC File Offset: 0x003771EC
// (set) Token: 0x0600EA6F RID: 60015 RVA: 0x00379000 File Offset: 0x00377200
[Token(Token = "0x1700272B")]
public List<OOCCCGPICOG> HBNKDJHPFIH
{
[Token(Token = "0x600EA6E")]
[Address(RVA = "0x3EDE90", Offset = "0x3EC890", VA = "0x1803EDE90")]
get;
[Token(Token = "0x600EA6F")]
[Address(RVA = "0x3EDEC0", Offset = "0x3EC8C0", VA = "0x1803EDEC0")]
private set;
}
// Token: 0x1700272C RID: 10028
// (get) Token: 0x0600EA70 RID: 60016 RVA: 0x00379014 File Offset: 0x00377214
// (set) Token: 0x0600EA71 RID: 60017 RVA: 0x00379028 File Offset: 0x00377228
[Token(Token = "0x1700272C")]
public Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> GLGIFBBIJMO
{
[Token(Token = "0x600EA70")]
[Address(RVA = "0x48F050", Offset = "0x48DA50", VA = "0x18048F050")]
get;
[Token(Token = "0x600EA71")]
[Address(RVA = "0x52F860", Offset = "0x52E260", VA = "0x18052F860")]
private set;
}
// Token: 0x1700272D RID: 10029
// (get) Token: 0x0600EA72 RID: 60018 RVA: 0x0037903C File Offset: 0x0037723C
// (set) Token: 0x0600EA73 RID: 60019 RVA: 0x00379050 File Offset: 0x00377250
[Token(Token = "0x1700272D")]
private Dictionary<int, List<OOCCCGPICOG>> IKCILKBNLDL
{
[Token(Token = "0x600EA72")]
[Address(RVA = "0x4D2570", Offset = "0x4D0F70", VA = "0x1804D2570")]
get;
[Token(Token = "0x600EA73")]
[Address(RVA = "0x7D4760", Offset = "0x7D3160", VA = "0x1807D4760")]
set;
}
// Token: 0x0600EA74 RID: 60020 RVA: 0x00379064 File Offset: 0x00377264
[Token(Token = "0x600EA74")]
[Address(RVA = "0x166BBC0", Offset = "0x166A5C0", VA = "0x18166BBC0", Slot = "13")]
protected override void Awake()
{
base.Awake();
List<OOCCCGPICOG> list = new List();
this.<KBFCNIPECEB>k__BackingField = list;
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary = new Dictionary();
this.<EJMJIFKMMDN>k__BackingField = dictionary;
Dictionary<int, List<OOCCCGPICOG>> dictionary2 = new Dictionary();
this.<MPOGFALEMEO>k__BackingField = dictionary2;
ActionEvent<OOCCCGPICOG> kpcjmbnihhl = FOEHJBDMMBH.KPCJMBNIHHL;
Action<OOCCCGPICOG> action = new Action(this.LJNJNJPEHJI);
FOEHJBDMMBH.KPCJMBNIHHL = kpcjmbnihhl + action;
ActionEvent<long> gflphdlaeop = FOEHJBDMMBH.GFLPHDLAEOP;
Action<long> action2 = new Action(this.BKKNBEAIHFN);
FOEHJBDMMBH.GFLPHDLAEOP = gflphdlaeop + action2;
ActionEvent afkmkiapopl = FOEHJBDMMBH.AFKMKIAPOPL;
Action action3 = new Action(this.AFKMKIAPOPL);
FOEHJBDMMBH.AFKMKIAPOPL = afkmkiapopl + action3;
ConsumableCollectionRuntimeConfig consumableCollectionRuntimeConfig = this.consumableCollection;
HairDyeConsumableInfo[] hairDyeConsumables = consumableCollectionRuntimeConfig.HairDyeConsumables;
IEnumerable<ConsumableInfo> enumerable = Enumerable.Concat<ConsumableInfo>(consumableCollectionRuntimeConfig.GenericConsumables, hairDyeConsumables);
CouponConsumableInfo[] couponConsumables = consumableCollectionRuntimeConfig.CouponConsumables;
IEnumerable<ConsumableInfo> enumerable2 = Enumerable.Concat<ConsumableInfo>(enumerable, couponConsumables);
HeadPotionConsumableInfo[] headPotionConsumables = consumableCollectionRuntimeConfig.HeadPotionConsumables;
ConsumableInfo[] array = Enumerable.ToArray<ConsumableInfo>(Enumerable.Concat<ConsumableInfo>(enumerable2, headPotionConsumables));
Func<ConsumableInfo, string> <>9__28_ = ConsumableManager.<>c.<>9__28_0;
if (<>9__28_ == 0)
{
ConsumableManager.<>c.<>9__28_0 = (ConsumableInfo i) => i.ConsumableItemDesc;
}
Dictionary<ConsumableInfo, string> dictionary3 = Enumerable.ToDictionary<ConsumableInfo, string>(array, <>9__28_);
this.LPPDCFEJBGA = dictionary3;
SceneManager.sceneUnloaded += new UnityAction(this.LMOACMLMLAB);
}
// Token: 0x0600EA75 RID: 60021 RVA: 0x003791A0 File Offset: 0x003773A0
[Token(Token = "0x600EA75")]
[Address(RVA = "0x166E0C0", Offset = "0x166CAC0", VA = "0x18166E0C0", Slot = "14")]
protected override void OnDestroy()
{
ActionEvent<OOCCCGPICOG> kpcjmbnihhl = FOEHJBDMMBH.KPCJMBNIHHL;
Action<OOCCCGPICOG> action = new Action(this.LJNJNJPEHJI);
FOEHJBDMMBH.KPCJMBNIHHL = kpcjmbnihhl - action;
ActionEvent<long> gflphdlaeop = FOEHJBDMMBH.GFLPHDLAEOP;
Action<long> action2 = new Action(this.BKKNBEAIHFN);
FOEHJBDMMBH.GFLPHDLAEOP = gflphdlaeop - action2;
ActionEvent afkmkiapopl = FOEHJBDMMBH.AFKMKIAPOPL;
Action action3 = new Action(this.AFKMKIAPOPL);
FOEHJBDMMBH.AFKMKIAPOPL = afkmkiapopl - action3;
SceneManager.sceneUnloaded -= new UnityAction(this.LMOACMLMLAB);
base.OnDestroy();
}
// Token: 0x0600EA76 RID: 60022 RVA: 0x00379228 File Offset: 0x00377428
[Token(Token = "0x600EA76")]
[Address(RVA = "0x166E880", Offset = "0x166D280", VA = "0x18166E880")]
private IEnumerator Start()
{
int num;
ConsumableManager.IENDGKFKBBL iendgkfkbbl = new ConsumableManager.IENDGKFKBBL(num);
num = 0;
iendgkfkbbl.<>4__this = this;
throw new NullReferenceException();
}
// Token: 0x0600EA77 RID: 60023 RVA: 0x0037924C File Offset: 0x0037744C
[Token(Token = "0x600EA77")]
[Address(RVA = "0x166E070", Offset = "0x166CA70", VA = "0x18166E070")]
private void LMOACMLMLAB(Scene LHECBPFGEMH)
{
this.NJMOJCFCNJI.Clear();
}
// Token: 0x0600EA78 RID: 60024 RVA: 0x0037926C File Offset: 0x0037746C
[Token(Token = "0x600EA78")]
[Address(RVA = "0x166E270", Offset = "0x166CC70", VA = "0x18166E270")]
private void PEOHHDHGDMB()
{
ConsumableCollectionRuntimeConfig consumableCollectionRuntimeConfig = this.consumableCollection;
HairDyeConsumableInfo[] hairDyeConsumables = consumableCollectionRuntimeConfig.HairDyeConsumables;
IEnumerable<ConsumableInfo> enumerable = Enumerable.Concat<ConsumableInfo>(consumableCollectionRuntimeConfig.GenericConsumables, hairDyeConsumables);
CouponConsumableInfo[] couponConsumables = consumableCollectionRuntimeConfig.CouponConsumables;
IEnumerable<ConsumableInfo> enumerable2 = Enumerable.Concat<ConsumableInfo>(enumerable, couponConsumables);
HeadPotionConsumableInfo[] headPotionConsumables = consumableCollectionRuntimeConfig.HeadPotionConsumables;
ConsumableInfo[] array = Enumerable.ToArray<ConsumableInfo>(Enumerable.Concat<ConsumableInfo>(enumerable2, headPotionConsumables));
Func<ConsumableInfo, string> <>9__28_ = ConsumableManager.<>c.<>9__28_0;
if (<>9__28_ == 0)
{
ConsumableManager.<>c.<>9__28_0 = (ConsumableInfo i) => i.ConsumableItemDesc;
}
Dictionary<ConsumableInfo, string> dictionary = Enumerable.ToDictionary<ConsumableInfo, string>(array, <>9__28_);
this.LPPDCFEJBGA = dictionary;
}
// Token: 0x0600EA79 RID: 60025 RVA: 0x003792F8 File Offset: 0x003774F8
[Token(Token = "0x600EA79")]
[Address(RVA = "0x166C560", Offset = "0x166AF60", VA = "0x18166C560")]
public void DeactivateConsumableOfCategory(ConsumableManager.KIDKMAOBOIG DJFBMCIDJNK, bool CPNHCODHDAD)
{
int num;
int num2;
do
{
num = 0;
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary = this.<EJMJIFKMMDN>k__BackingField;
bool flag;
if (!flag)
{
return;
}
if (flag && num < (flag ? 1 : 0))
{
num += num;
if (num != (flag ? 1 : 0))
{
num++;
}
}
if (flag)
{
num2 = 0;
}
if (num != -1)
{
}
}
while (num != 0);
if (num2 == 1 || num2 == 2)
{
this.JAHAJMKIEFD(num);
}
BPHGKAEDBPE.CBEOHBCIPEA cbeohbcipea;
if (ConsumableManager.<>c.<>9__29_0 == 0)
{
cbeohbcipea = delegate(string error)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
ConsumableManager.<>c.<>9__29_0 = cbeohbcipea;
}
int num3 = 0;
IEnumerator enumerator = FOEHJBDMMBH.PKHAMBFCEJI(num, num3 != 0, cbeohbcipea);
bool flag2 = this.<EJMJIFKMMDN>k__BackingField.Remove(num3);
int num4 = 0;
this.JJEGNEPGBNA(num3, num4 != 0);
}
// Token: 0x0600EA7A RID: 60026 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600EA7A")]
[Address(RVA = "0x166B620", Offset = "0x166A020", VA = "0x18166B620")]
public void ActivateConsumable(OOCCCGPICOG KGNADIFEIML, bool CPNHCODHDAD)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600EA7B RID: 60027 RVA: 0x003793B0 File Offset: 0x003775B0
[Token(Token = "0x600EA7B")]
[Address(RVA = "0x166D8C0", Offset = "0x166C2C0", VA = "0x18166D8C0")]
private IEnumerator IKAOJDNCCJO()
{
int num;
ConsumableManager.BBNLOOEHPKF bbnlooehpkf = new ConsumableManager.BBNLOOEHPKF(num);
num = 0;
bbnlooehpkf.<>4__this = this;
throw new NullReferenceException();
}
// Token: 0x0600EA7C RID: 60028 RVA: 0x003793D4 File Offset: 0x003775D4
[Token(Token = "0x600EA7C")]
[Address(RVA = "0x166C8E0", Offset = "0x166B2E0", VA = "0x18166C8E0")]
public IEnumerator DownloadPurchasedConsumables(BPHGKAEDBPE.CBEOHBCIPEA AFLPGGJMPOE)
{
return FOEHJBDMMBH.BAKHDHHALHF(delegate(string error, List<OOCCCGPICOG> selections)
{
if (selections != 0)
{
this.<KBFCNIPECEB>k__BackingField.AddRange(selections);
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Comparison<OOCCCGPICOG> <>9__32_ = ConsumableManager.<>c.<>9__32_1;
if (<>9__32_ == 0)
{
ConsumableManager.<>c.<>9__32_1 = delegate(OOCCCGPICOG x, OOCCCGPICOG y)
{
DateTime <IPLPEOMCNPJ>k__BackingField = x.<IPLPEOMCNPJ>k__BackingField;
DateTime <IPLPEOMCNPJ>k__BackingField2 = y.<IPLPEOMCNPJ>k__BackingField;
return DateTime.Compare(<IPLPEOMCNPJ>k__BackingField, <IPLPEOMCNPJ>k__BackingField2);
};
}
list.Sort(<>9__32_);
}
BPHGKAEDBPE.HADGLCCBNHM(AFLPGGJMPOE, error);
});
}
// Token: 0x0600EA7D RID: 60029 RVA: 0x0037940C File Offset: 0x0037760C
[Token(Token = "0x600EA7D")]
[Address(RVA = "0x166EB10", Offset = "0x166D510", VA = "0x18166EB10")]
public IEnumerator UseConsumable(OOCCCGPICOG BAJGNABECMN, int FKKAPHAMPMG, BPHGKAEDBPE.CBEOHBCIPEA AFLPGGJMPOE)
{
return FOEHJBDMMBH.LCELAOEOIJO(BAJGNABECMN, FKKAPHAMPMG, AFLPGGJMPOE);
}
// Token: 0x0600EA7E RID: 60030 RVA: 0x00379424 File Offset: 0x00377624
[Token(Token = "0x600EA7E")]
[Address(RVA = "0x166E8F0", Offset = "0x166D2F0", VA = "0x18166E8F0")]
public void TryApplyConsumableEffect(ConsumableEffect EPEIGGODCIN)
{
List<ConsumableManager.KIDKMAOBOIG> <CEKFDODGELA>k__BackingField = EPEIGGODCIN.<CEKFDODGELA>k__BackingField;
throw new NullReferenceException();
}
// Token: 0x0600EA7F RID: 60031 RVA: 0x00379478 File Offset: 0x00377678
[Token(Token = "0x600EA7F")]
[Address(RVA = "0x166E3F0", Offset = "0x166CDF0", VA = "0x18166E3F0")]
public Tool SpawnConsumableForLocalPlayer(string BFMHPKIEKIF, long? NJCHOELCFME, Vector3 DDHPAFKBMON, Quaternion IGPENJBJADK, float FNJKKNKLDPB, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN)
{
if (!PlayerRoomRoleManager.IPCFEPKLJNG)
{
NotificationManager instance = SingletonMonoBehaviour.Instance;
}
ConsumableInfo consumableInfo = this.TryGetConsumableInfo(BFMHPKIEKIF);
if (consumableInfo != 0)
{
Dictionary<string, object> dictionary = new Dictionary();
int actorNumber = PhotonNetwork.LocalPlayer.actorNumber;
dictionary.Add("Owner", actorNumber);
dictionary.Add("Purpose", actorNumber);
dictionary.Add("ConsumableType", BFMHPKIEKIF);
dictionary.Add("ConsumableId", actorNumber);
string consumableToolName = consumableInfo.ConsumableToolName;
if (actorNumber == 0)
{
}
string name = this.defaultConsumableToolPrefab.name;
int viewIdField = base.photonView.viewIdField;
float z = DDHPAFKBMON.z;
Tool tool;
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = tool.<FLFJCIPBAPA>k__BackingField;
int num = 0;
if (<FLFJCIPBAPA>k__BackingField != num)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField2 = tool.<FLFJCIPBAPA>k__BackingField;
int num2 = 0;
<FLFJCIPBAPA>k__BackingField2.HICLCBMIPIN = num2 != 0;
}
}
Debug.LogError("Spawn Consumable For Local Player: Unable to find consumable");
throw new NullReferenceException();
}
// Token: 0x0600EA80 RID: 60032 RVA: 0x00379568 File Offset: 0x00377768
[Token(Token = "0x600EA80")]
[Address(RVA = "0x166E780", Offset = "0x166D180", VA = "0x18166E780")]
public GameObject SpawnConsumableImposter(string BFMHPKIEKIF)
{
ConsumableItem orLoadConsumablePrefab = this.GetOrLoadConsumablePrefab(BFMHPKIEKIF);
int num = 0;
if (!(orLoadConsumablePrefab != num))
{
}
GameObject gameObject = orLoadConsumablePrefab.gameObject;
int num2 = 0;
GameObject gameObject2 = JODFIHBJHJM.EIJJOKINEIL(gameObject, num2, true).gameObject;
gameObject2.layer = 5;
return gameObject2;
}
// Token: 0x0600EA81 RID: 60033 RVA: 0x003795B8 File Offset: 0x003777B8
[Token(Token = "0x600EA81")]
[Address(RVA = "0x166DB90", Offset = "0x166C590", VA = "0x18166DB90")]
private void JAHAJMKIEFD(OOCCCGPICOG BAJGNABECMN)
{
Func<ConsumableManager.DKKBNGODEOM, bool> func = delegate(ConsumableManager.DKKBNGODEOM c)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
ConsumableManager.DKKBNGODEOM dkkbngodeom;
if (dkkbngodeom != 0)
{
if (ConsumableManager.<>c.<>9__40_1 == 0)
{
ConsumableManager.<>c.<>9__40_1 = delegate(string e)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
}
LinkedList<ConsumableManager.DKKBNGODEOM> fllfjeooncc = this.FLLFJEOONCC;
}
}
// Token: 0x0600EA82 RID: 60034 RVA: 0x00379610 File Offset: 0x00377810
[Token(Token = "0x600EA82")]
[Address(RVA = "0x166DE30", Offset = "0x166C830", VA = "0x18166DE30")]
private IEnumerator KFCOBPNHEAK()
{
int num;
ConsumableManager.BOPFCJIBDON bopfcjibdon = new ConsumableManager.BOPFCJIBDON(num);
num = 0;
bopfcjibdon.<>4__this = this;
throw new NullReferenceException();
}
// Token: 0x0600EA83 RID: 60035 RVA: 0x00379634 File Offset: 0x00377834
[Token(Token = "0x600EA83")]
[Address(RVA = "0x166B470", Offset = "0x1669E70", VA = "0x18166B470")]
private void AJGKEJPEJMI(OOCCCGPICOG BAJGNABECMN)
{
LinkedListNode head;
float num2;
do
{
int num = 0;
if (!OOCCCGPICOG.BDBLGMKABNK(BAJGNABECMN, num))
{
return;
}
ConsumableInfo <JDADGBIDGIB>k__BackingField = BAJGNABECMN.<JDADGBIDGIB>k__BackingField;
if (<JDADGBIDGIB>k__BackingField == 0 || <JDADGBIDGIB>k__BackingField.LimitType > ConsumableManager.FFCJLEMFFAJ.Time || !this.<EJMJIFKMMDN>k__BackingField.ContainsValue(BAJGNABECMN))
{
return;
}
float time = Time.time;
head = this.FLLFJEOONCC.head;
}
while (head != 0 && num2 > num2 && head.Next != 0);
LinkedList<ConsumableManager.DKKBNGODEOM> fllfjeooncc = this.FLLFJEOONCC;
if (head != 0)
{
throw new NullReferenceException();
}
}
// Token: 0x0600EA84 RID: 60036 RVA: 0x003796B0 File Offset: 0x003778B0
[Token(Token = "0x600EA84")]
[Address(RVA = "0x166CB90", Offset = "0x166B590", VA = "0x18166CB90")]
public IPromise<List<OOCCCGPICOG>> GetAllTransferableConsumableTypesByCreatorId(int OEMFFOMNDPB)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary = this.<MPOGFALEMEO>k__BackingField;
bool flag;
if (!flag)
{
IPromise<List<OOCCCGPICOG>> promise = FOEHJBDMMBH.AFMKIHFMMBI(OEMFFOMNDPB);
Func<List<OOCCCGPICOG>, List<OOCCCGPICOG>> func = delegate(List<OOCCCGPICOG> consumables)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary2 = this.<MPOGFALEMEO>k__BackingField;
int creatorId = OEMFFOMNDPB;
dictionary2.Add(creatorId, consumables);
Func<OOCCCGPICOG, string> <>9__43_ = ConsumableManager.<>c.<>9__43_3;
if (<>9__43_ == 0)
{
ConsumableManager.<>c.<>9__43_3 = (OOCCCGPICOG c) => c.<CNJALCEBPMC>k__BackingField;
}
IEnumerable enumerable2 = Enumerable.GroupBy<OOCCCGPICOG, string>(consumables, <>9__43_);
Func<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG> func3;
if (ConsumableManager.<>c.<>9__43_4 == 0)
{
func3 = (IGrouping<string, OOCCCGPICOG> c) => Enumerable.Last<OOCCCGPICOG>(c);
ConsumableManager.<>c.<>9__43_4 = func3;
}
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Select<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG>(enumerable2, func3));
};
}
if (ConsumableManager.<>c.<>9__43_0 == 0)
{
ConsumableManager.<>c.<>9__43_0 = (OOCCCGPICOG c) => c.<CNJALCEBPMC>k__BackingField;
}
Func<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG> func2;
if (ConsumableManager.<>c.<>9__43_1 == 0)
{
func2 = (IGrouping<string, OOCCCGPICOG> c) => Enumerable.Last<OOCCCGPICOG>(c);
ConsumableManager.<>c.<>9__43_1 = func2;
}
IEnumerable enumerable;
List<OOCCCGPICOG> list = Enumerable.ToList<OOCCCGPICOG>(Enumerable.Select<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG>(enumerable, func2));
IPromise<OOCCCGPICOG> promise2;
return promise2;
}
// Token: 0x0600EA85 RID: 60037 RVA: 0x00379750 File Offset: 0x00377950
[Token(Token = "0x600EA85")]
[Address(RVA = "0x166D710", Offset = "0x166C110", VA = "0x18166D710")]
public IPromise<List<OOCCCGPICOG>> GetTransferableConsumablesOfTypeByCreatorId(string BFMHPKIEKIF, int OEMFFOMNDPB)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary = this.<MPOGFALEMEO>k__BackingField;
bool flag;
if (!flag)
{
IPromise<List<OOCCCGPICOG>> promise = FOEHJBDMMBH.AFMKIHFMMBI(OEMFFOMNDPB);
Func<OOCCCGPICOG, bool> <>9__2;
Func<List<OOCCCGPICOG>, List<OOCCCGPICOG>> func = delegate(List<OOCCCGPICOG> consumables)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary2 = this.<MPOGFALEMEO>k__BackingField;
int creatorId = OEMFFOMNDPB;
dictionary2.Add(creatorId, consumables);
Func<OOCCCGPICOG, bool> <>9__ = <>9__2;
if (<>9__ == 0)
{
Func<OOCCCGPICOG, bool> func3 = delegate(OOCCCGPICOG c)
{
string consumableType = BFMHPKIEKIF;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, consumableType);
};
<>9__2 = func3;
}
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Where<OOCCCGPICOG>(consumables, <>9__));
};
}
Func<OOCCCGPICOG, bool> func2 = delegate(OOCCCGPICOG c)
{
string consumableType2 = BFMHPKIEKIF;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, consumableType2);
};
IEnumerable<OOCCCGPICOG> enumerable;
List<OOCCCGPICOG> list = Enumerable.ToList<OOCCCGPICOG>(enumerable);
throw new NullReferenceException();
}
// Token: 0x0600EA86 RID: 60038 RVA: 0x003797BC File Offset: 0x003779BC
[Token(Token = "0x600EA86")]
[Address(RVA = "0x166CFF0", Offset = "0x166B9F0", VA = "0x18166CFF0")]
public OOCCCGPICOG GetLatestNonActiveNonTransferableConsumableByType(string BFMHPKIEKIF)
{
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Func<OOCCCGPICOG, bool> func = delegate(OOCCCGPICOG pc)
{
string consumableType = BFMHPKIEKIF;
bool flag = string.Equals(pc.<CNJALCEBPMC>k__BackingField, consumableType);
if (!flag)
{
return flag;
}
return !pc.<OLCLLOHLPEH>k__BackingField;
};
IEnumerable<OOCCCGPICOG> enumerable = Enumerable.Where<OOCCCGPICOG>(list, func);
Func<OOCCCGPICOG, DateTime> <>9__45_ = ConsumableManager.<>c.<>9__45_1;
if (<>9__45_ == 0)
{
ConsumableManager.<>c.<>9__45_1 = (OOCCCGPICOG pc) => pc.<IPLPEOMCNPJ>k__BackingField;
}
return Enumerable.FirstOrDefault<OOCCCGPICOG>(Enumerable.OrderByDescending<OOCCCGPICOG, DateTime>(enumerable, <>9__45_));
}
// Token: 0x0600EA87 RID: 60039 RVA: 0x00379828 File Offset: 0x00377A28
[Token(Token = "0x600EA87")]
[Address(RVA = "0x166D4F0", Offset = "0x166BEF0", VA = "0x18166D4F0")]
public int GetRemainingCount(OOCCCGPICOG BAJGNABECMN)
{
OOCCCGPICOG consumable = BAJGNABECMN;
ConsumableInfo <JDADGBIDGIB>k__BackingField = BAJGNABECMN.<JDADGBIDGIB>k__BackingField;
ConsumableManager.FFCJLEMFFAJ limitType = <JDADGBIDGIB>k__BackingField.LimitType;
if (<JDADGBIDGIB>k__BackingField != 0)
{
if (<JDADGBIDGIB>k__BackingField == 0)
{
return BAJGNABECMN.<MAAELOFEKIJ>k__BackingField;
}
if (<JDADGBIDGIB>k__BackingField == 0 || limitType == ConsumableManager.FFCJLEMFFAJ.Time)
{
int num = BAJGNABECMN.<MAAELOFEKIJ>k__BackingField;
if (BAJGNABECMN.<OLCLLOHLPEH>k__BackingField)
{
LinkedList<ConsumableManager.DKKBNGODEOM> fllfjeooncc = this.FLLFJEOONCC;
Func<ConsumableManager.DKKBNGODEOM, bool> func = delegate(ConsumableManager.DKKBNGODEOM ct)
{
long <JPAOOKPLEDB>k__BackingField = consumable.<JPAOOKPLEDB>k__BackingField;
return "{il2cpp field on {'constant4' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x10}" == <JPAOOKPLEDB>k__BackingField;
};
IEnumerable<ConsumableManager.DKKBNGODEOM> enumerable = Enumerable.Where<ConsumableManager.DKKBNGODEOM>(fllfjeooncc, func);
Func<ConsumableManager.DKKBNGODEOM, float> <>9__46_ = ConsumableManager.<>c.<>9__46_1;
if (<>9__46_ == 0)
{
ConsumableManager.<>c.<>9__46_1 = (ConsumableManager.DKKBNGODEOM ct) => ct.HPIOFBILNMC;
}
float num2 = Enumerable.FirstOrDefault<float>(Enumerable.Select<ConsumableManager.DKKBNGODEOM, float>(enumerable, <>9__46_));
int num3 = 0;
if (num2 > (float)num3)
{
int num4 = 0;
float time = Time.time;
num += num4;
}
}
return num;
}
}
return 0;
}
// Token: 0x0600EA88 RID: 60040 RVA: 0x003798F4 File Offset: 0x00377AF4
[Token(Token = "0x600EA88")]
[Address(RVA = "0x166CE50", Offset = "0x166B850", VA = "0x18166CE50")]
public OOCCCGPICOG GetConsumableById(long NJCHOELCFME)
{
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Func<OOCCCGPICOG, bool> func = delegate(OOCCCGPICOG pc)
{
long consumableId = NJCHOELCFME;
return pc.<JPAOOKPLEDB>k__BackingField == consumableId;
};
IEnumerable<OOCCCGPICOG> enumerable = Enumerable.Where<OOCCCGPICOG>(list, func);
Func<OOCCCGPICOG, DateTime> <>9__47_ = ConsumableManager.<>c.<>9__47_1;
if (<>9__47_ == 0)
{
ConsumableManager.<>c.<>9__47_1 = (OOCCCGPICOG pc) => pc.<IPLPEOMCNPJ>k__BackingField;
}
return Enumerable.FirstOrDefault<OOCCCGPICOG>(Enumerable.OrderByDescending<OOCCCGPICOG, DateTime>(enumerable, <>9__47_));
}
// Token: 0x0600EA89 RID: 60041 RVA: 0x00379960 File Offset: 0x00377B60
[Token(Token = "0x600EA89")]
[Address(RVA = "0x166D990", Offset = "0x166C390", VA = "0x18166D990")]
public bool IsConsumableOfTypeActive(string GEDCEIDOKJL)
{
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary = this.<EJMJIFKMMDN>k__BackingField;
if (this.TryGetConsumableInfo(GEDCEIDOKJL) != 0)
{
}
bool flag;
if (!flag)
{
return flag;
}
throw new NullReferenceException();
}
// Token: 0x0600EA8A RID: 60042 RVA: 0x00379994 File Offset: 0x00377B94
[Token(Token = "0x600EA8A")]
[Address(RVA = "0x166D160", Offset = "0x166BB60", VA = "0x18166D160")]
public List<OOCCCGPICOG> GetLatestPurchasedNonTransferableConsumablesInCategory(ConsumableManager.KIDKMAOBOIG DJFBMCIDJNK)
{
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Func<OOCCCGPICOG, bool> func = delegate(OOCCCGPICOG c)
{
ConsumableManager.KIDKMAOBOIG category = DJFBMCIDJNK;
return c.<MPBLJOGNHKP>k__BackingField == category;
};
IEnumerable<OOCCCGPICOG> enumerable = Enumerable.Where<OOCCCGPICOG>(list, func);
Func<OOCCCGPICOG, string> <>9__49_ = ConsumableManager.<>c.<>9__49_1;
if (<>9__49_ == 0)
{
ConsumableManager.<>c.<>9__49_1 = (OOCCCGPICOG c) => c.<CNJALCEBPMC>k__BackingField;
}
IEnumerable enumerable2 = Enumerable.GroupBy<OOCCCGPICOG, string>(enumerable, <>9__49_);
Func<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG> func2;
if (ConsumableManager.<>c.<>9__49_2 == 0)
{
func2 = (IGrouping<string, OOCCCGPICOG> c) => Enumerable.Last<OOCCCGPICOG>(c);
ConsumableManager.<>c.<>9__49_2 = func2;
}
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Select<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG>(enumerable2, func2));
}
// Token: 0x0600EA8B RID: 60043 RVA: 0x00379A30 File Offset: 0x00377C30
[Token(Token = "0x600EA8B")]
[Address(RVA = "0x166CAD0", Offset = "0x166B4D0", VA = "0x18166CAD0")]
public List<OOCCCGPICOG> GetAllPurchasedNonTransferableConsumablesOfType(string GEDCEIDOKJL)
{
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Func<OOCCCGPICOG, bool> func = delegate(OOCCCGPICOG c)
{
string type = GEDCEIDOKJL;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, type);
};
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Where<OOCCCGPICOG>(list, func));
}
// Token: 0x0600EA8C RID: 60044 RVA: 0x00379A70 File Offset: 0x00377C70
[Token(Token = "0x600EA8C")]
[Address(RVA = "0x166CA60", Offset = "0x166B460", VA = "0x18166CA60")]
public OOCCCGPICOG GetActiveConsumableInCategory(ConsumableManager.KIDKMAOBOIG DJFBMCIDJNK)
{
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary = this.<EJMJIFKMMDN>k__BackingField;
throw new NullReferenceException();
}
// Token: 0x0600EA8D RID: 60045 RVA: 0x00379A8C File Offset: 0x00377C8C
[Token(Token = "0x600EA8D")]
[Address(RVA = "0x166DA60", Offset = "0x166C460", VA = "0x18166DA60")]
public bool IsHairDyeConsumableActive(string CBCHEMNOLBO)
{
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary = this.<EJMJIFKMMDN>k__BackingField;
int num = 0;
bool flag = dictionary.TryGetValue(6, num);
int num2 = 0;
if (flag && num2 != 0)
{
int num3 = 0;
if (num2 != 0 && num3 != 0)
{
return true;
}
}
throw new NullReferenceException();
}
// Token: 0x0600EA8E RID: 60046 RVA: 0x00379ACC File Offset: 0x00377CCC
[Token(Token = "0x600EA8E")]
[Address(RVA = "0x166CFC0", Offset = "0x166B9C0", VA = "0x18166CFC0")]
public ConsumableManager.KIDKMAOBOIG GetConsumableCategory(string AKAMDLHKMGM)
{
ConsumableInfo consumableInfo = this.TryGetConsumableInfo(AKAMDLHKMGM);
if (consumableInfo != 0)
{
return consumableInfo.Category;
}
return ConsumableManager.KIDKMAOBOIG.Invalid;
}
// Token: 0x0600EA8F RID: 60047 RVA: 0x00379AF0 File Offset: 0x00377CF0
[Token(Token = "0x600EA8F")]
[Address(RVA = "0x166EA90", Offset = "0x166D490", VA = "0x18166EA90")]
public ConsumableInfo TryGetConsumableInfo(string AKAMDLHKMGM)
{
Dictionary<string, ConsumableInfo> lppdcfejbga = this.LPPDCFEJBGA;
int num = 0;
bool flag = lppdcfejbga.TryGetValue(AKAMDLHKMGM, num);
throw new NullReferenceException();
}
// Token: 0x0600EA90 RID: 60048 RVA: 0x00379B14 File Offset: 0x00377D14
[Token(Token = "0x600EA90")]
[Address(RVA = "0x166D380", Offset = "0x166BD80", VA = "0x18166D380")]
public ConsumableItem GetOrLoadConsumablePrefab(string GEDCEIDOKJL)
{
int num = 0;
if (num == 0 && !this.NJMOJCFCNJI.TryGetValue(GEDCEIDOKJL, num) && this.LPPDCFEJBGA.TryGetValue(GEDCEIDOKJL, num))
{
ConsumableItem consumableItem = Resources.Load<ConsumableItem>(num);
int num2 = 0;
if (consumableItem != num2)
{
this.NJMOJCFCNJI.Add(GEDCEIDOKJL, consumableItem);
}
}
Debug.LogError("Tried to GetConsumablePrefab for empty type!");
throw new NullReferenceException();
}
// Token: 0x0600EA91 RID: 60049 RVA: 0x00379B78 File Offset: 0x00377D78
[Token(Token = "0x600EA91")]
[Address(RVA = "0x166D930", Offset = "0x166C330", VA = "0x18166D930")]
public void InvalidateTransferableConsumablesByCreatorId(int OEMFFOMNDPB)
{
bool flag = this.<MPOGFALEMEO>k__BackingField.Remove(OEMFFOMNDPB);
}
// Token: 0x0600EA92 RID: 60050 RVA: 0x00379B98 File Offset: 0x00377D98
[Token(Token = "0x600EA92")]
[Address(RVA = "0x166DD70", Offset = "0x166C770", VA = "0x18166DD70")]
private void JJEGNEPGBNA(OOCCCGPICOG BAJGNABECMN, bool CNEIBILGFCO)
{
Action<OOCCCGPICOG, bool> hncngjflmel = this.HNCNGJFLMEL;
if (hncngjflmel != 0)
{
hncngjflmel(BAJGNABECMN, CNEIBILGFCO);
}
Debug.LogError("Error raising OnActiveConsumableChanged: " + BAJGNABECMN);
}
// Token: 0x0600EA93 RID: 60051 RVA: 0x00379BC8 File Offset: 0x00377DC8
[Token(Token = "0x600EA93")]
[Address(RVA = "0x166C9A0", Offset = "0x166B3A0", VA = "0x18166C9A0")]
private void FGAIIFEMKKE(OOCCCGPICOG BAJGNABECMN, bool AKJFIEJBCJA)
{
Action<OOCCCGPICOG, bool> bnfpeinedcc = this.BNFPEINEDCC;
if (bnfpeinedcc != 0)
{
bnfpeinedcc(BAJGNABECMN, AKJFIEJBCJA);
}
Debug.LogError("Error raising OnPurchasedConsumableChanged: " + BAJGNABECMN);
}
// Token: 0x0600EA94 RID: 60052 RVA: 0x00379BF8 File Offset: 0x00377DF8
[Token(Token = "0x600EA94")]
[Address(RVA = "0x166B390", Offset = "0x1669D90", VA = "0x18166B390")]
private void AFKMKIAPOPL()
{
int <OIBJLPBDMML>k__BackingField = BPHGKAEDBPE.<OIBJLPBDMML>k__BackingField;
bool flag = this.<MPOGFALEMEO>k__BackingField.Remove(<OIBJLPBDMML>k__BackingField);
}
// Token: 0x0600EA95 RID: 60053 RVA: 0x00379C20 File Offset: 0x00377E20
[Token(Token = "0x600EA95")]
[Address(RVA = "0x166DEA0", Offset = "0x166C8A0", VA = "0x18166DEA0")]
private void LJNJNJPEHJI(OOCCCGPICOG BAJGNABECMN)
{
if (!BAJGNABECMN.<JJIMAAMFCLN>k__BackingField)
{
this.<KBFCNIPECEB>k__BackingField.Add(BAJGNABECMN);
this.FGAIIFEMKKE(BAJGNABECMN, true);
return;
}
Dictionary<int, List<OOCCCGPICOG>> dictionary = this.<MPOGFALEMEO>k__BackingField;
bool flag;
if (!flag)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary2 = this.<MPOGFALEMEO>k__BackingField;
dictionary2[flag] = new List { BAJGNABECMN };
}
throw new NullReferenceException();
}
// Token: 0x0600EA96 RID: 60054 RVA: 0x00379C7C File Offset: 0x00377E7C
[Token(Token = "0x600EA96")]
[Address(RVA = "0x166BF30", Offset = "0x166A930", VA = "0x18166BF30")]
private void BKKNBEAIHFN(long NJCHOELCFME)
{
OOCCCGPICOG oocccgpicog2;
for (;;)
{
int num = 0;
List<OOCCCGPICOG> list = this.<KBFCNIPECEB>k__BackingField;
Predicate<OOCCCGPICOG> predicate = delegate(OOCCCGPICOG c)
{
long consumableId = NJCHOELCFME;
return c.<JPAOOKPLEDB>k__BackingField == consumableId;
};
OOCCCGPICOG oocccgpicog = ListExt.RemoveWhere<OOCCCGPICOG>(list, predicate);
OOCCCGPICOG consumable = oocccgpicog;
if (oocccgpicog == 0)
{
return;
}
if ((consumable.<JJIMAAMFCLN>k__BackingField ? 1 : 0) != num)
{
Dictionary<int, List<OOCCCGPICOG>> dictionary = this.<MPOGFALEMEO>k__BackingField;
bool flag;
if (flag)
{
break;
}
}
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary2 = this.<EJMJIFKMMDN>k__BackingField;
OOCCCGPICOG consumable7 = consumable;
if (dictionary2.ContainsValue(consumable7))
{
int <MPBLJOGNHKP>k__BackingField = (int)consumable.<MPBLJOGNHKP>k__BackingField;
if ((consumable.<JDADGBIDGIB>k__BackingField.AutoActivateNextItem ? 1 : 0) != num)
{
List<OOCCCGPICOG> list2 = this.<KBFCNIPECEB>k__BackingField;
Func<OOCCCGPICOG, bool> func = delegate(OOCCCGPICOG pc)
{
string <CNJALCEBPMC>k__BackingField = pc.<CNJALCEBPMC>k__BackingField;
string <CNJALCEBPMC>k__BackingField2 = consumable.<CNJALCEBPMC>k__BackingField;
return string.Equals(<CNJALCEBPMC>k__BackingField, <CNJALCEBPMC>k__BackingField2);
};
IEnumerable<OOCCCGPICOG> enumerable = Enumerable.Where<OOCCCGPICOG>(list2, func);
Func<OOCCCGPICOG, DateTime> func2;
if (ConsumableManager.<>c.<>9__61_2 == 0)
{
func2 = (OOCCCGPICOG pc) => pc.<IPLPEOMCNPJ>k__BackingField;
ConsumableManager.<>c.<>9__61_2 = func2;
}
oocccgpicog2 = Enumerable.FirstOrDefault<OOCCCGPICOG>(Enumerable.OrderByDescending<OOCCCGPICOG, DateTime>(enumerable, func2));
}
if (oocccgpicog2 != 0)
{
}
if (oocccgpicog2 != 0)
{
}
if (num != -1)
{
}
if (num == 0)
{
OOCCCGPICOG consumable2 = consumable;
BPHGKAEDBPE.CBEOHBCIPEA cbeohbcipea;
if (ConsumableManager.<>c.<>9__61_3 == 0)
{
cbeohbcipea = delegate(string error)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
ConsumableManager.<>c.<>9__61_3 = cbeohbcipea;
}
int num2 = 0;
IEnumerator enumerator = FOEHJBDMMBH.PKHAMBFCEJI(consumable2, num2 != 0, cbeohbcipea);
Dictionary<ConsumableManager.KIDKMAOBOIG, OOCCCGPICOG> dictionary3 = this.<EJMJIFKMMDN>k__BackingField;
ConsumableManager.KIDKMAOBOIG <MPBLJOGNHKP>k__BackingField2 = consumable.<MPBLJOGNHKP>k__BackingField;
bool flag2 = dictionary3.Remove(<MPBLJOGNHKP>k__BackingField2);
int num3 = 0;
OOCCCGPICOG consumable3 = consumable;
this.JJEGNEPGBNA(consumable3, num3 != 0);
int num4 = 0;
if (OOCCCGPICOG.BDBLGMKABNK(oocccgpicog2, num4))
{
goto Block_8;
}
}
}
}
OOCCCGPICOG consumable4 = okplgghobpb.consumable;
int num5 = 0;
OOCCCGPICOG consumable5 = okplgghobpb.consumable;
this.FGAIIFEMKKE(consumable5, num5 != 0);
OOCCCGPICOG consumable6 = okplgghobpb.consumable;
string friendlyName = consumable6.<JDADGBIDGIB>k__BackingField.FriendlyName;
ConsumableManager.KIDKMAOBOIG <MPBLJOGNHKP>k__BackingField3 = consumable6.<MPBLJOGNHKP>k__BackingField;
return;
Block_8:
int num6 = 0;
this.ActivateConsumable(oocccgpicog2, num6 != 0);
throw new NullReferenceException();
}
// Token: 0x0600EA97 RID: 60055 RVA: 0x00379E54 File Offset: 0x00378054
[Token(Token = "0x600EA97")]
[Address(RVA = "0x166EB80", Offset = "0x166D580", VA = "0x18166EB80")]
public ConsumableManager()
{
Dictionary<string, ConsumableInfo> dictionary = new Dictionary();
this.LPPDCFEJBGA = dictionary;
Dictionary<string, ConsumableItem> dictionary2 = new Dictionary();
this.NJMOJCFCNJI = dictionary2;
LinkedList<ConsumableManager.DKKBNGODEOM> linkedList = new LinkedList();
this.FLLFJEOONCC = linkedList;
base..ctor();
}
// Token: 0x04009B45 RID: 39749
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4009B45")]
[SerializeField]
private ConsumableTool defaultConsumableToolPrefab;
// Token: 0x04009B46 RID: 39750
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x4009B46")]
[SerializeField]
private ConsumableCollectionRuntimeConfig consumableCollection;
// Token: 0x04009B4A RID: 39754
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x4009B4A")]
private Dictionary<string, ConsumableInfo> LPPDCFEJBGA;
// Token: 0x04009B4B RID: 39755
[global::Cpp2IlInjected.FieldOffset(Offset = "0x80")]
[Token(Token = "0x4009B4B")]
private Dictionary<string, ConsumableItem> NJMOJCFCNJI;
// Token: 0x04009B4C RID: 39756
[Token(Token = "0x4009B4C")]
private const float OLCOPMKCBDB = 60f;
// Token: 0x04009B4D RID: 39757
[global::Cpp2IlInjected.FieldOffset(Offset = "0x88")]
[Token(Token = "0x4009B4D")]
private LinkedList<ConsumableManager.DKKBNGODEOM> FLLFJEOONCC;
// Token: 0x02002134 RID: 8500
[Token(Token = "0x2002134")]
public enum FFCJLEMFFAJ
{
// Token: 0x04009B4F RID: 39759
[Token(Token = "0x4009B4F")]
Invalid = -1,
// Token: 0x04009B50 RID: 39760
[Token(Token = "0x4009B50")]
Usage,
// Token: 0x04009B51 RID: 39761
[Token(Token = "0x4009B51")]
Time,
// Token: 0x04009B52 RID: 39762
[Token(Token = "0x4009B52")]
RealWorldTime
}
// Token: 0x02002135 RID: 8501
[Token(Token = "0x2002135")]
public enum KIDKMAOBOIG
{
// Token: 0x04009B54 RID: 39764
[Token(Token = "0x4009B54")]
Invalid = -1,
// Token: 0x04009B55 RID: 39765
[Token(Token = "0x4009B55")]
CameraFilter,
// Token: 0x04009B56 RID: 39766
[Token(Token = "0x4009B56")]
Potion_Head = 2,
// Token: 0x04009B57 RID: 39767
[Token(Token = "0x4009B57")]
Potion_Hand,
// Token: 0x04009B58 RID: 39768
[Token(Token = "0x4009B58")]
Food,
// Token: 0x04009B59 RID: 39769
[Token(Token = "0x4009B59")]
KO_Customization,
// Token: 0x04009B5A RID: 39770
[Token(Token = "0x4009B5A")]
Potion_HairDye,
// Token: 0x04009B5B RID: 39771
[Token(Token = "0x4009B5B")]
Coupon
}
// Token: 0x02002136 RID: 8502
[Token(Token = "0x2002136")]
private struct DKKBNGODEOM
{
// Token: 0x04009B5C RID: 39772
[global::Cpp2IlInjected.FieldOffset(Offset = "0x0")]
[Token(Token = "0x4009B5C")]
public OOCCCGPICOG BAJGNABECMN;
// Token: 0x04009B5D RID: 39773
[global::Cpp2IlInjected.FieldOffset(Offset = "0x8")]
[Token(Token = "0x4009B5D")]
public float HPIOFBILNMC;
}
// Token: 0x0200213A RID: 8506
[Token(Token = "0x200213A")]
[CompilerGenerated]
private sealed class JHIJHOMNCKN
{
// Token: 0x0600EAB9 RID: 60089 RVA: 0x0037A434 File Offset: 0x00378634
[Token(Token = "0x600EAB9")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public JHIJHOMNCKN()
{
}
// Token: 0x0600EABA RID: 60090 RVA: 0x0037A448 File Offset: 0x00378648
[Token(Token = "0x600EABA")]
[Address(RVA = "0x17B0A30", Offset = "0x17AF430", VA = "0x1817B0A30")]
internal void <DownloadPurchasedConsumables>b__0(string error, List<OOCCCGPICOG> selections)
{
if (selections != 0)
{
this.<>4__this.<KBFCNIPECEB>k__BackingField.AddRange(selections);
List<OOCCCGPICOG> <KBFCNIPECEB>k__BackingField = this.<>4__this.<KBFCNIPECEB>k__BackingField;
Comparison<OOCCCGPICOG> <>9__32_ = ConsumableManager.<>c.<>9__32_1;
if (<>9__32_ == 0)
{
ConsumableManager.<>c.<>9__32_1 = delegate(OOCCCGPICOG x, OOCCCGPICOG y)
{
DateTime <IPLPEOMCNPJ>k__BackingField = x.<IPLPEOMCNPJ>k__BackingField;
DateTime <IPLPEOMCNPJ>k__BackingField2 = y.<IPLPEOMCNPJ>k__BackingField;
return DateTime.Compare(<IPLPEOMCNPJ>k__BackingField, <IPLPEOMCNPJ>k__BackingField2);
};
}
<KBFCNIPECEB>k__BackingField.Sort(<>9__32_);
}
BPHGKAEDBPE.HADGLCCBNHM(this.callback, error);
}
// Token: 0x04009B78 RID: 39800
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B78")]
public ConsumableManager <>4__this;
// Token: 0x04009B79 RID: 39801
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009B79")]
public BPHGKAEDBPE.CBEOHBCIPEA callback;
}
// Token: 0x0200213B RID: 8507
[Token(Token = "0x200213B")]
[CompilerGenerated]
private sealed class DOANPNOOBAD
{
// Token: 0x0600EABB RID: 60091 RVA: 0x0037A4B0 File Offset: 0x003786B0
[Token(Token = "0x600EABB")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public DOANPNOOBAD()
{
}
// Token: 0x0600EABC RID: 60092 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600EABC")]
[Address(RVA = "0x179BD90", Offset = "0x179A790", VA = "0x18179BD90")]
internal bool <RemoveFromActiveTimedConsumableQueue>b__0(ConsumableManager.DKKBNGODEOM c)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x04009B7A RID: 39802
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B7A")]
public OOCCCGPICOG consumable;
}
// Token: 0x0200213D RID: 8509
[Token(Token = "0x200213D")]
[CompilerGenerated]
private sealed class LLEOPOOCNCG
{
// Token: 0x0600EAC3 RID: 60099 RVA: 0x0037A600 File Offset: 0x00378800
[Token(Token = "0x600EAC3")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public LLEOPOOCNCG()
{
}
// Token: 0x0600EAC4 RID: 60100 RVA: 0x0037A614 File Offset: 0x00378814
[Token(Token = "0x600EAC4")]
[Address(RVA = "0x17B0BB0", Offset = "0x17AF5B0", VA = "0x1817B0BB0")]
internal List<OOCCCGPICOG> <GetAllTransferableConsumableTypesByCreatorId>b__2(List<OOCCCGPICOG> consumables)
{
Dictionary<int, List<OOCCCGPICOG>> <MPOGFALEMEO>k__BackingField = this.<>4__this.<MPOGFALEMEO>k__BackingField;
int num = this.creatorId;
<MPOGFALEMEO>k__BackingField.Add(num, consumables);
Func<OOCCCGPICOG, string> <>9__43_ = ConsumableManager.<>c.<>9__43_3;
if (<>9__43_ == 0)
{
ConsumableManager.<>c.<>9__43_3 = (OOCCCGPICOG c) => c.<CNJALCEBPMC>k__BackingField;
}
IEnumerable enumerable = Enumerable.GroupBy<OOCCCGPICOG, string>(consumables, <>9__43_);
Func<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG> func;
if (ConsumableManager.<>c.<>9__43_4 == 0)
{
func = (IGrouping<string, OOCCCGPICOG> c) => Enumerable.Last<OOCCCGPICOG>(c);
ConsumableManager.<>c.<>9__43_4 = func;
}
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Select<IGrouping<string, OOCCCGPICOG>, OOCCCGPICOG>(enumerable, func));
}
// Token: 0x04009B7F RID: 39807
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B7F")]
public ConsumableManager <>4__this;
// Token: 0x04009B80 RID: 39808
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009B80")]
public int creatorId;
}
// Token: 0x0200213E RID: 8510
[Token(Token = "0x200213E")]
[CompilerGenerated]
private sealed class BFCGKOAPJEC
{
// Token: 0x0600EAC5 RID: 60101 RVA: 0x0037A698 File Offset: 0x00378898
[Token(Token = "0x600EAC5")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public BFCGKOAPJEC()
{
}
// Token: 0x0600EAC6 RID: 60102 RVA: 0x0037A6AC File Offset: 0x003788AC
[Token(Token = "0x600EAC6")]
[Address(RVA = "0x4B0D60", Offset = "0x4AF760", VA = "0x1804B0D60")]
internal bool <GetTransferableConsumablesOfTypeByCreatorId>b__0(OOCCCGPICOG c)
{
string text = this.consumableType;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, text);
}
// Token: 0x0600EAC7 RID: 60103 RVA: 0x0037A6D4 File Offset: 0x003788D4
[Token(Token = "0x600EAC7")]
[Address(RVA = "0x1798B80", Offset = "0x1797580", VA = "0x181798B80")]
internal List<OOCCCGPICOG> <GetTransferableConsumablesOfTypeByCreatorId>b__1(List<OOCCCGPICOG> consumables)
{
Dictionary<int, List<OOCCCGPICOG>> <MPOGFALEMEO>k__BackingField = this.<>4__this.<MPOGFALEMEO>k__BackingField;
int num = this.creatorId;
<MPOGFALEMEO>k__BackingField.Add(num, consumables);
Func<OOCCCGPICOG, bool> func = this.<>9__2;
if (func == 0)
{
Func<OOCCCGPICOG, bool> func2 = delegate(OOCCCGPICOG c)
{
string text = this.consumableType;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, text);
};
this.<>9__2 = func2;
}
return Enumerable.ToList<OOCCCGPICOG>(Enumerable.Where<OOCCCGPICOG>(consumables, func));
}
// Token: 0x0600EAC8 RID: 60104 RVA: 0x0037A730 File Offset: 0x00378930
[Token(Token = "0x600EAC8")]
[Address(RVA = "0x4B0D60", Offset = "0x4AF760", VA = "0x1804B0D60")]
internal bool <GetTransferableConsumablesOfTypeByCreatorId>b__2(OOCCCGPICOG c)
{
string text = this.consumableType;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, text);
}
// Token: 0x04009B81 RID: 39809
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B81")]
public string consumableType;
// Token: 0x04009B82 RID: 39810
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009B82")]
public ConsumableManager <>4__this;
// Token: 0x04009B83 RID: 39811
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009B83")]
public int creatorId;
// Token: 0x04009B84 RID: 39812
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4009B84")]
public Func<OOCCCGPICOG, bool> <>9__2;
}
// Token: 0x0200213F RID: 8511
[Token(Token = "0x200213F")]
[CompilerGenerated]
private sealed class OILBDNFLMKD
{
// Token: 0x0600EAC9 RID: 60105 RVA: 0x0037A758 File Offset: 0x00378958
[Token(Token = "0x600EAC9")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public OILBDNFLMKD()
{
}
// Token: 0x0600EACA RID: 60106 RVA: 0x0037A76C File Offset: 0x0037896C
[Token(Token = "0x600EACA")]
[Address(RVA = "0x17B0D90", Offset = "0x17AF790", VA = "0x1817B0D90")]
internal bool <GetLatestNonActiveNonTransferableConsumableByType>b__0(OOCCCGPICOG pc)
{
string text = this.consumableType;
bool flag = string.Equals(pc.<CNJALCEBPMC>k__BackingField, text);
if (!flag)
{
return flag;
}
return !pc.<OLCLLOHLPEH>k__BackingField;
}
// Token: 0x04009B85 RID: 39813
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B85")]
public string consumableType;
}
// Token: 0x02002140 RID: 8512
[Token(Token = "0x2002140")]
[CompilerGenerated]
private sealed class BMPAPIDNKAC
{
// Token: 0x0600EACB RID: 60107 RVA: 0x0037A7A4 File Offset: 0x003789A4
[Token(Token = "0x600EACB")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public BMPAPIDNKAC()
{
}
// Token: 0x0600EACC RID: 60108 RVA: 0x0037A7B8 File Offset: 0x003789B8
[Token(Token = "0x600EACC")]
[Address(RVA = "0x1798C50", Offset = "0x1797650", VA = "0x181798C50")]
internal bool <GetRemainingCount>b__0(ConsumableManager.DKKBNGODEOM ct)
{
long <JPAOOKPLEDB>k__BackingField = this.consumable.<JPAOOKPLEDB>k__BackingField;
return "{il2cpp field on {'constant4' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x10}" == <JPAOOKPLEDB>k__BackingField;
}
// Token: 0x04009B86 RID: 39814
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B86")]
public OOCCCGPICOG consumable;
}
// Token: 0x02002141 RID: 8513
[Token(Token = "0x2002141")]
[CompilerGenerated]
private sealed class ODJCBMEABHI
{
// Token: 0x0600EACD RID: 60109 RVA: 0x0037A7E0 File Offset: 0x003789E0
[Token(Token = "0x600EACD")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public ODJCBMEABHI()
{
}
// Token: 0x0600EACE RID: 60110 RVA: 0x0037A7F4 File Offset: 0x003789F4
[Token(Token = "0x600EACE")]
[Address(RVA = "0x74DC80", Offset = "0x74C680", VA = "0x18074DC80")]
internal bool <GetConsumableById>b__0(OOCCCGPICOG pc)
{
long num = this.consumableId;
return pc.<JPAOOKPLEDB>k__BackingField == num;
}
// Token: 0x04009B87 RID: 39815
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B87")]
public long consumableId;
}
// Token: 0x02002142 RID: 8514
[Token(Token = "0x2002142")]
[CompilerGenerated]
private sealed class DKELPJNFIDO
{
// Token: 0x0600EACF RID: 60111 RVA: 0x0037A818 File Offset: 0x00378A18
[Token(Token = "0x600EACF")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public DKELPJNFIDO()
{
}
// Token: 0x0600EAD0 RID: 60112 RVA: 0x0037A82C File Offset: 0x00378A2C
[Token(Token = "0x600EAD0")]
[Address(RVA = "0x179BD70", Offset = "0x179A770", VA = "0x18179BD70")]
internal bool <GetLatestPurchasedNonTransferableConsumablesInCategory>b__0(OOCCCGPICOG c)
{
ConsumableManager.KIDKMAOBOIG kidkmaoboig = this.category;
return c.<MPBLJOGNHKP>k__BackingField == kidkmaoboig;
}
// Token: 0x04009B88 RID: 39816
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B88")]
public ConsumableManager.KIDKMAOBOIG category;
}
// Token: 0x02002143 RID: 8515
[Token(Token = "0x2002143")]
[CompilerGenerated]
private sealed class PLNPAHNMEIH
{
// Token: 0x0600EAD1 RID: 60113 RVA: 0x0037A850 File Offset: 0x00378A50
[Token(Token = "0x600EAD1")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public PLNPAHNMEIH()
{
}
// Token: 0x0600EAD2 RID: 60114 RVA: 0x0037A864 File Offset: 0x00378A64
[Token(Token = "0x600EAD2")]
[Address(RVA = "0x4B0D60", Offset = "0x4AF760", VA = "0x1804B0D60")]
internal bool <GetAllPurchasedNonTransferableConsumablesOfType>b__0(OOCCCGPICOG c)
{
string text = this.type;
return string.Equals(c.<CNJALCEBPMC>k__BackingField, text);
}
// Token: 0x04009B89 RID: 39817
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B89")]
public string type;
}
// Token: 0x02002144 RID: 8516
[Token(Token = "0x2002144")]
[CompilerGenerated]
private sealed class OKPLGGHOBPB
{
// Token: 0x0600EAD3 RID: 60115 RVA: 0x0037A88C File Offset: 0x00378A8C
[Token(Token = "0x600EAD3")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public OKPLGGHOBPB()
{
}
// Token: 0x0600EAD4 RID: 60116 RVA: 0x0037A8A0 File Offset: 0x00378AA0
[Token(Token = "0x600EAD4")]
[Address(RVA = "0x74DC80", Offset = "0x74C680", VA = "0x18074DC80")]
internal bool <Consumables_OnConsumableRemoved>b__0(OOCCCGPICOG c)
{
long num = this.consumableId;
return c.<JPAOOKPLEDB>k__BackingField == num;
}
// Token: 0x0600EAD5 RID: 60117 RVA: 0x0037A8C4 File Offset: 0x00378AC4
[Token(Token = "0x600EAD5")]
[Address(RVA = "0x17B0DD0", Offset = "0x17AF7D0", VA = "0x1817B0DD0")]
internal bool <Consumables_OnConsumableRemoved>b__1(OOCCCGPICOG pc)
{
string <CNJALCEBPMC>k__BackingField = pc.<CNJALCEBPMC>k__BackingField;
string <CNJALCEBPMC>k__BackingField2 = this.consumable.<CNJALCEBPMC>k__BackingField;
return string.Equals(<CNJALCEBPMC>k__BackingField, <CNJALCEBPMC>k__BackingField2);
}
// Token: 0x04009B8A RID: 39818
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009B8A")]
public long consumableId;
// Token: 0x04009B8B RID: 39819
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009B8B")]
public OOCCCGPICOG consumable;
}
}
}