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

1650 lines
64 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using RecRoom.Avatars.Data.Runtime;
using RecRoom.Avatars.Data.Shared;
using RecRoom.Avatars.Face;
using UnityEngine;
namespace RecRoom.Avatars.Outfit
{
// Token: 0x020024AF RID: 9391
[Token(Token = "0x20024AF")]
public class OutfitManager : NetworkedSingletonMonoBehaviour<OutfitManager>
{
// Token: 0x0600F03F RID: 61503 RVA: 0x0036E9E8 File Offset: 0x0036CBE8
[Token(Token = "0x600F03F")]
[Address(RVA = "0x1D11120", Offset = "0x1D10120", VA = "0x181D11120")]
public EOBKJELFMIA GetBrowsableAvatarItemByGuid(string COFLAJFOPEN)
{
Dictionary<string, EOBKJELFMIA> khlonollnnf = this.KHLONOLLNNF;
int num = 0;
bool flag = khlonollnnf.TryGetValue(COFLAJFOPEN, num);
throw new NullReferenceException();
}
// Token: 0x0600F040 RID: 61504 RVA: 0x0036EA0C File Offset: 0x0036CC0C
[Token(Token = "0x600F040")]
[Address(RVA = "0x1D14C20", Offset = "0x1D13C20", VA = "0x181D14C20")]
public bool TryGetBrowsableAvatarItemByGuid(string COFLAJFOPEN, out EOBKJELFMIA IOBEPGLJNIP)
{
Dictionary<string, EOBKJELFMIA> khlonollnnf = this.KHLONOLLNNF;
bool flag;
return flag;
}
// Token: 0x0600F041 RID: 61505 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600F041")]
[Address(RVA = "0x1D111A0", Offset = "0x1D101A0", VA = "0x181D111A0")]
public DABKFAIHBBP GetBrowsableAvatarItemsByGuids(List<string> BOIHKFECIGG, List<EOBKJELFMIA> LLCIDEKMKBG)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600F042 RID: 61506 RVA: 0x0036EA28 File Offset: 0x0036CC28
[Token(Token = "0x600F042")]
[Address(RVA = "0x1D11640", Offset = "0x1D10640", VA = "0x181D11640")]
public PMGCJEPKFOF<IReadOnlyList<string>> GetFilteredAvatarItemGuids(string KHFJLAPFOFI, bool HFFCNFLNFPE, EOBKJELFMIA.PFIGBFIKKEG MKAMFBICAAH, EOBKJELFMIA.LFFHCBCBCJJ ALMICNFABOK)
{
List<string> dmgkekjiema = OutfitManager.DMGKEKJIEMA;
PMGCJEPKFOF<string> pmgcjepkfof;
return pmgcjepkfof;
}
// Token: 0x0600F043 RID: 61507 RVA: 0x0036EA40 File Offset: 0x0036CC40
[Token(Token = "0x600F043")]
[Address(RVA = "0x1D133F0", Offset = "0x1D123F0", VA = "0x181D133F0")]
private void KGJKDAPMLEM(bool EGKKFNODGHG)
{
int num;
do
{
num = 0;
this.KHLONOLLNNF.Clear();
this.EBMJIJKHKJA.Clear();
HashSet<AvatarItem> nkihcllango = this.NKIHCLLANGO;
HashSet<AvatarItem> nkihcllango2 = this.NKIHCLLANGO;
num += num;
num++;
EOBKJELFMIA eobkjelfmia = new EOBKJELFMIA();
OutfitManager.AvatarItemMetadata avatarItemMetadata;
eobkjelfmia.<FLFHILBLCOG>k__BackingField = avatarItemMetadata;
eobkjelfmia.<OHIGJIBAPHD>k__BackingField = num;
eobkjelfmia.<FPECCGKDEMF>k__BackingField = true;
this.BLBNKOIALHE(eobkjelfmia);
eobkjelfmia += eobkjelfmia;
}
while (num != 0);
if (EGKKFNODGHG)
{
PMGCJEPKFOF<BKFGFHDDNFG> pmgcjepkfof = GEAPBDGCKMB.PGIMFDLBHON(DGOHCPBKOHD.Watch);
Action<BKFGFHDDNFG> action = new Action(this.MJGDMNODGJO);
if (OutfitManager.<>c.<>9__9_0 == 0)
{
OutfitManager.<>c.<>9__9_0 = delegate
{
OutfitManager.BrowsableItemsChangedEvent.CNFDGDEOPPF();
};
}
}
}
// Token: 0x0600F044 RID: 61508 RVA: 0x0036EAF8 File Offset: 0x0036CCF8
[Token(Token = "0x600F044")]
[Address(RVA = "0x1D13C00", Offset = "0x1D12C00", VA = "0x181D13C00")]
private DABKFAIHBBP LFGLKGGBJHF()
{
PMGCJEPKFOF<BKFGFHDDNFG> pmgcjepkfof = GEAPBDGCKMB.PGIMFDLBHON(DGOHCPBKOHD.Watch);
Action<BKFGFHDDNFG> action = new Action(this.MJGDMNODGJO);
throw new NullReferenceException();
}
// Token: 0x0600F045 RID: 61509 RVA: 0x0036EB20 File Offset: 0x0036CD20
[Token(Token = "0x600F045")]
[Address(RVA = "0x1D128F0", Offset = "0x1D118F0", VA = "0x181D128F0")]
private void HNPFOAIMPNG(AvatarItem LACNEKHKOII)
{
OutfitManager.AvatarItemMetadata avatarItemMetadata;
this.BLBNKOIALHE(new EOBKJELFMIA
{
<FLFHILBLCOG>k__BackingField = avatarItemMetadata,
<OHIGJIBAPHD>k__BackingField = (ulong)0L,
<FPECCGKDEMF>k__BackingField = true
});
}
// Token: 0x0600F046 RID: 61510 RVA: 0x0036EB58 File Offset: 0x0036CD58
[Token(Token = "0x600F046")]
[Address(RVA = "0x1D129A0", Offset = "0x1D119A0", VA = "0x181D129A0")]
private EOBKJELFMIA IDKKJAFCBAN(AvatarItem LACNEKHKOII)
{
EOBKJELFMIA eobkjelfmia = new EOBKJELFMIA();
OutfitManager.AvatarItemMetadata avatarItemMetadata;
eobkjelfmia.<FLFHILBLCOG>k__BackingField = avatarItemMetadata;
eobkjelfmia.<OHIGJIBAPHD>k__BackingField = (ulong)0L;
eobkjelfmia.<FPECCGKDEMF>k__BackingField = false;
this.BLBNKOIALHE(eobkjelfmia);
return eobkjelfmia;
}
// Token: 0x0600F047 RID: 61511 RVA: 0x0036EB90 File Offset: 0x0036CD90
[Token(Token = "0x600F047")]
[Address(RVA = "0x1D11010", Offset = "0x1D10010", VA = "0x181D11010")]
private void GOOHDGKHHNM(AvatarItem LACNEKHKOII, HOJMGAMMIAD EBMJDCLJJHG)
{
MJLPNOMEFKG <IPAKFAFGINE>k__BackingField = EBMJDCLJJHG.<IPAKFAFGINE>k__BackingField;
OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata();
string <FNIGMBMFOJL>k__BackingField = <IPAKFAFGINE>k__BackingField.<FNIGMBMFOJL>k__BackingField;
avatarItemMetadata.FriendlyName = <FNIGMBMFOJL>k__BackingField;
string <ILKJJMACHPC>k__BackingField = <IPAKFAFGINE>k__BackingField.<ILKJJMACHPC>k__BackingField;
avatarItemMetadata.Tooltip = <ILKJJMACHPC>k__BackingField;
PGCHMNKBEFJ <IGOLNCKNKMK>k__BackingField = <IPAKFAFGINE>k__BackingField.<IGOLNCKNKMK>k__BackingField;
avatarItemMetadata.Rarity = <IGOLNCKNKMK>k__BackingField;
this.BLBNKOIALHE(new EOBKJELFMIA
{
<FLFHILBLCOG>k__BackingField = avatarItemMetadata,
<OHIGJIBAPHD>k__BackingField = EBMJDCLJJHG,
<FPECCGKDEMF>k__BackingField = false
});
}
// Token: 0x0600F048 RID: 61512 RVA: 0x0036EC04 File Offset: 0x0036CE04
[Token(Token = "0x600F048")]
[Address(RVA = "0x1D10250", Offset = "0x1D0F250", VA = "0x181D10250")]
private void BLBNKOIALHE(EOBKJELFMIA FOAHCAIKPLO)
{
string text;
this.EBMJIJKHKJA.Add(text);
this.KHLONOLLNNF[text] = FOAHCAIKPLO;
}
// Token: 0x0600F049 RID: 61513 RVA: 0x0036EC30 File Offset: 0x0036CE30
[Token(Token = "0x600F049")]
[Address(RVA = "0x1D13BE0", Offset = "0x1D12BE0", VA = "0x181D13BE0")]
private static MJLPNOMEFKG KNJALGGCDMK(HOJMGAMMIAD EBMJDCLJJHG)
{
return EBMJDCLJJHG.<IPAKFAFGINE>k__BackingField;
}
// Token: 0x0600F04A RID: 61514 RVA: 0x0036EC4C File Offset: 0x0036CE4C
[Token(Token = "0x600F04A")]
[Address(RVA = "0x1D13B70", Offset = "0x1D12B70", VA = "0x181D13B70")]
private string KHKKLFCKBNK(string COFLAJFOPEN)
{
OutfitManager.AvatarItemMetadata <FLFHILBLCOG>k__BackingField;
do
{
EOBKJELFMIA browsableAvatarItemByGuid = this.GetBrowsableAvatarItemByGuid(COFLAJFOPEN);
if (browsableAvatarItemByGuid == 0)
{
break;
}
<FLFHILBLCOG>k__BackingField = browsableAvatarItemByGuid.<FLFHILBLCOG>k__BackingField;
}
while (<FLFHILBLCOG>k__BackingField != 0 && <FLFHILBLCOG>k__BackingField.FriendlyName != 0);
return string.Empty;
}
// Token: 0x0600F04B RID: 61515 RVA: 0x0036EC80 File Offset: 0x0036CE80
[Token(Token = "0x600F04B")]
[Address(RVA = "0x1D12D20", Offset = "0x1D11D20", VA = "0x181D12D20")]
private PGCHMNKBEFJ JDFLLLCACOE(string COFLAJFOPEN)
{
/*
An exception occurred when decompiling this method (0600F04B)
ICSharpCode.Decompiler.DecompilerException: Error decompiling PGCHMNKBEFJ RecRoom.Avatars.Outfit.OutfitManager::JDFLLLCACOE(System.String)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_1:
stloc:PGCHMNKBEFJ(var_3_1F, ldfld:PGCHMNKBEFJ(AvatarItemMetadata::Rarity, ldloc:AvatarItemMetadata(var_1_12)))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x0600F04C RID: 61516 RVA: 0x0036ECAC File Offset: 0x0036CEAC
[Token(Token = "0x600F04C")]
[Address(RVA = "0x1D10440", Offset = "0x1D0F440", VA = "0x181D10440")]
private bool CGOEAHBPNJF(string COFLAJFOPEN)
{
EOBKJELFMIA browsableAvatarItemByGuid = this.GetBrowsableAvatarItemByGuid(COFLAJFOPEN);
if (browsableAvatarItemByGuid == 0)
{
throw new NullReferenceException();
}
HOJMGAMMIAD <OHIGJIBAPHD>k__BackingField = browsableAvatarItemByGuid.<OHIGJIBAPHD>k__BackingField;
if (<OHIGJIBAPHD>k__BackingField != 0)
{
bool <EFFHIKNPACF>k__BackingField = <OHIGJIBAPHD>k__BackingField.<IPAKFAFGINE>k__BackingField.<EFFHIKNPACF>k__BackingField;
return 0 == 1;
}
return 0 == 1;
}
// Token: 0x0600F04D RID: 61517 RVA: 0x0036ECEC File Offset: 0x0036CEEC
[Token(Token = "0x600F04D")]
[Address(RVA = "0x1D10D40", Offset = "0x1D0FD40", VA = "0x181D10D40")]
private long? FLMEEADKAHA(string COFLAJFOPEN)
{
EOBKJELFMIA eobkjelfmia;
if (eobkjelfmia == 0)
{
return;
}
HOJMGAMMIAD <OHIGJIBAPHD>k__BackingField = eobkjelfmia.<OHIGJIBAPHD>k__BackingField;
if (<OHIGJIBAPHD>k__BackingField != 0)
{
long num = <OHIGJIBAPHD>k__BackingField.PCPFENLLBOC(ACDKILABNNC.RecCenterTokens);
return;
}
}
// Token: 0x0600F04E RID: 61518 RVA: 0x0036ED14 File Offset: 0x0036CF14
[Token(Token = "0x600F04E")]
[Address(RVA = "0x1D12A60", Offset = "0x1D11A60", VA = "0x181D12A60")]
private int INENIONEEOH(string COFLAJFOPEN)
{
EOBKJELFMIA browsableAvatarItemByGuid = this.GetBrowsableAvatarItemByGuid(COFLAJFOPEN);
if (browsableAvatarItemByGuid == 0)
{
return int.MaxValue;
}
if (browsableAvatarItemByGuid.PDPOGMFOACI)
{
return 0;
}
if (browsableAvatarItemByGuid.<OHIGJIBAPHD>k__BackingField != 0)
{
return 1;
}
return 2;
}
// Token: 0x0600F04F RID: 61519 RVA: 0x0036ED4C File Offset: 0x0036CF4C
[Token(Token = "0x600F04F")]
[Address(RVA = "0x1D137D0", Offset = "0x1D127D0", VA = "0x181D137D0")]
private void KHBIOENJIFC(List<string> BNGMFBNNBDJ, EOBKJELFMIA.PFIGBFIKKEG MKAMFBICAAH)
{
int num = MKAMFBICAAH - EOBKJELFMIA.PFIGBFIKKEG.Alphabetical;
if (num != 0)
{
if (num != 0)
{
if (num != 0)
{
if (num != 1)
{
Func<string, long?> func = new Func(this.FLMEEADKAHA);
IOrderedEnumerable<string> orderedEnumerable = Enumerable.OrderByDescending<string, long?>(BNGMFBNNBDJ, func);
Func<string, string> func2 = new Func(this.KHKKLFCKBNK);
IOrderedEnumerable<string> orderedEnumerable2 = Enumerable.ThenBy<string, string>(orderedEnumerable, func2);
Func<string, PGCHMNKBEFJ> func3 = new Func(this.JDFLLLCACOE);
IOrderedEnumerable<string> orderedEnumerable3 = Enumerable.OrderByDescending<string, PGCHMNKBEFJ>(BNGMFBNNBDJ, func3);
Func<string, bool> func4 = new Func(this.CGOEAHBPNJF);
IOrderedEnumerable<string> orderedEnumerable4 = Enumerable.ThenByDescending<string, bool>(orderedEnumerable3, func4);
Func<string, string> func5 = new Func(this.KHKKLFCKBNK);
IOrderedEnumerable<string> orderedEnumerable5 = Enumerable.OrderByDescending<string, string>(BNGMFBNNBDJ, func5);
}
Func<string, long?> func6 = new Func(this.FLMEEADKAHA);
IOrderedEnumerable<string> orderedEnumerable6 = Enumerable.OrderBy<string, long?>(BNGMFBNNBDJ, func6);
}
Func<string, PGCHMNKBEFJ> func7 = new Func(this.JDFLLLCACOE);
IOrderedEnumerable<string> orderedEnumerable7 = Enumerable.OrderBy<string, PGCHMNKBEFJ>(BNGMFBNNBDJ, func7);
}
Func<string, int> func8 = new Func(this.INENIONEEOH);
IOrderedEnumerable<string> orderedEnumerable8 = Enumerable.OrderBy<string, int>(BNGMFBNNBDJ, func8);
}
Func<string, string> func9 = new Func(this.KHKKLFCKBNK);
IOrderedEnumerable<string> orderedEnumerable9 = Enumerable.OrderBy<string, string>(BNGMFBNNBDJ, func9);
OutfitManager.ECAAHMIBOOC.Clear();
OutfitManager.ECAAHMIBOOC.AddRange(orderedEnumerable9);
BNGMFBNNBDJ.Clear();
List<string> ecaahmibooc = OutfitManager.ECAAHMIBOOC;
BNGMFBNNBDJ.AddRange(ecaahmibooc);
OutfitManager.ECAAHMIBOOC.Clear();
}
// Token: 0x0600F050 RID: 61520 RVA: 0x0036EE88 File Offset: 0x0036D088
[Token(Token = "0x600F050")]
[Address(RVA = "0x1D14270", Offset = "0x1D13270", VA = "0x181D14270")]
private void ONHCNJEINAK(List<string> LLCIDEKMKBG, string KHFJLAPFOFI, bool HFFCNFLNFPE, EOBKJELFMIA.PFIGBFIKKEG MKAMFBICAAH, EOBKJELFMIA.LFFHCBCBCJJ ALMICNFABOK)
{
int num;
do
{
num = 0;
LLCIDEKMKBG.Clear();
List<string> ebmjijkhkja = this.EBMJIJKHKJA;
List<string>.Enumerator enumerator = LLCIDEKMKBG.GetEnumerator();
bool flag;
if (flag)
{
EOBKJELFMIA eobkjelfmia;
while (eobkjelfmia == 0)
{
}
HOJMGAMMIAD <OHIGJIBAPHD>k__BackingField = eobkjelfmia.<OHIGJIBAPHD>k__BackingField;
if (<OHIGJIBAPHD>k__BackingField != 0 && <OHIGJIBAPHD>k__BackingField.<IPAKFAFGINE>k__BackingField.<EFFHIKNPACF>k__BackingField)
{
continue;
}
bool flag2;
if (!flag2)
{
bool flag3;
while (!flag3)
{
}
}
bool flag4;
bool flag5;
bool flag6;
bool flag7;
bool flag8;
bool flag9;
bool flag10;
bool flag11;
bool flag12;
bool flag13;
if (!flag4 && !flag5 && !flag6 && !flag7 && !flag8 && !flag9 && !flag10 && !flag11 && !flag12 && !flag13)
{
bool flag14;
while (!flag14)
{
}
}
string text2;
if (!KHFJLAPFOFI.LJGBBKKGKOP())
{
string text = eobkjelfmia.<FLFHILBLCOG>k__BackingField.FriendlyName.ToUpperInvariant();
text2 = KHFJLAPFOFI.ToUpperInvariant();
if (!text.Contains(text2))
{
continue;
}
}
LLCIDEKMKBG.Add(text2);
}
}
while (num != 0);
}
// Token: 0x14000109 RID: 265
// (add) Token: 0x0600F051 RID: 61521 RVA: 0x0036EF88 File Offset: 0x0036D188
// (remove) Token: 0x0600F052 RID: 61522 RVA: 0x0036EFB0 File Offset: 0x0036D1B0
[Token(Token = "0x14000109")]
public event Action<AvatarItem> LGHHLODGCFO
{
[Token(Token = "0x600F051")]
[Address(RVA = "0x1D15530", Offset = "0x1D14530", VA = "0x181D15530")]
[CompilerGenerated]
add
{
Action<AvatarItem> lghhlodgcfo;
Delegate @delegate;
do
{
lghhlodgcfo = this.LGHHLODGCFO;
@delegate = Delegate.Combine(lghhlodgcfo, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != lghhlodgcfo)
{
}
}
[Token(Token = "0x600F052")]
[Address(RVA = "0x1D155D0", Offset = "0x1D145D0", VA = "0x181D155D0")]
[CompilerGenerated]
remove
{
Action<AvatarItem> lghhlodgcfo;
Delegate @delegate;
do
{
lghhlodgcfo = this.LGHHLODGCFO;
@delegate = Delegate.Remove(lghhlodgcfo, value);
}
while (@delegate != 0 && @delegate == 0);
while (@delegate != lghhlodgcfo)
{
}
}
}
// Token: 0x1700270C RID: 9996
// (get) Token: 0x0600F053 RID: 61523 RVA: 0x0036EFD8 File Offset: 0x0036D1D8
[Token(Token = "0x1700270C")]
public IReadOnlyCollection<AvatarItem> KOJIFKGBDMG
{
[Token(Token = "0x600F053")]
[Address(RVA = "0x4177D0", Offset = "0x4167D0", VA = "0x1804177D0")]
get
{
/*
An exception occurred when decompiling this method (0600F053)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IReadOnlyCollection`1<RecRoom.Avatars.Data.Runtime.AvatarItem> RecRoom.Avatars.Outfit.OutfitManager::get_UnlockedAvatarItems()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:class [System.Core]System.Collections.Generic.HashSet`1<valuetype RecRoom.Avatars.Data.Runtime.AvatarItem>(var_0_06, ldfld:class [System.Core]System.Collections.Generic.HashSet`1<valuetype RecRoom.Avatars.Data.Runtime.AvatarItem>(OutfitManager::NKIHCLLANGO, ldloc:OutfitManager(this)))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
}
// Token: 0x0600F054 RID: 61524 RVA: 0x0036EFEC File Offset: 0x0036D1EC
[Token(Token = "0x600F054")]
[Address(RVA = "0x1D10720", Offset = "0x1D0F720", VA = "0x181D10720")]
public DABKFAIHBBP DownloadDefaultAvatarItems()
{
PMGCJEPKFOF<List<NLEKGNENMCO.EPFHLDCPAOK>> pmgcjepkfof = NLEKGNENMCO.FNCJPGMPOAN();
Action<List<NLEKGNENMCO.EPFHLDCPAOK>> action = new Action(this.ECFAHFBDGBN);
if (OutfitManager.<>c.<>9__34_1 == 0)
{
OutfitManager.<>c.<>9__34_1 = (string e) => "Failed to download default unlocked avatar items: " + e;
}
throw new NullReferenceException();
}
// Token: 0x0600F055 RID: 61525 RVA: 0x0036F030 File Offset: 0x0036D230
[Token(Token = "0x600F055")]
[Address(RVA = "0x1D10950", Offset = "0x1D0F950", VA = "0x181D10950")]
public DABKFAIHBBP DownloadUnlockedAvatarItems()
{
PMGCJEPKFOF<List<NLEKGNENMCO.EPFHLDCPAOK>> pmgcjepkfof = NLEKGNENMCO.JMILOAEBBAK();
Action<List<NLEKGNENMCO.EPFHLDCPAOK>> action = new Action(this.FFOFCNDPEAN);
if (OutfitManager.<>c.<>9__35_1 == 0)
{
OutfitManager.<>c.<>9__35_1 = (string e) => "Failed to download unlocked avatar items: " + e;
}
throw new NullReferenceException();
}
// Token: 0x0600F056 RID: 61526 RVA: 0x0036F074 File Offset: 0x0036D274
[Token(Token = "0x600F056")]
[Address(RVA = "0x1D10890", Offset = "0x1D0F890", VA = "0x181D10890")]
public PMGCJEPKFOF<List<NLEKGNENMCO.EPFHLDCPAOK>> DownloadLockedAvatarItemDetailsByAvatarItemDescription(List<string> DDMOKHDKAIG)
{
PMGCJEPKFOF<List<NLEKGNENMCO.EPFHLDCPAOK>> pmgcjepkfof = NLEKGNENMCO.KLPMNFCFOLE(DDMOKHDKAIG);
Action<List<NLEKGNENMCO.EPFHLDCPAOK>> action = new Action(this.JFAGMLDKOPN);
throw new NullReferenceException();
}
// Token: 0x0600F057 RID: 61527 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600F057")]
[Address(RVA = "0x1D10500", Offset = "0x1D0F500", VA = "0x181D10500")]
private void CIEHIDMIMIB(List<NLEKGNENMCO.EPFHLDCPAOK> HLBJKPCGMHA, bool EGKKFNODGHG)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600F058 RID: 61528 RVA: 0x0036F09C File Offset: 0x0036D29C
[Token(Token = "0x600F058")]
[Address(RVA = "0x1D102F0", Offset = "0x1D0F2F0", VA = "0x181D102F0")]
private void BPDDIKFOCPE(AvatarItem LACNEKHKOII, NLEKGNENMCO.EPFHLDCPAOK AFOAIPBOACM)
{
HashSet<AvatarItem> nkihcllango = this.NKIHCLLANGO;
bool flag;
if (flag)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag2;
if (!flag2)
{
OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata();
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg2 = this.ONKBHGLCAEG;
}
string <FNIGMBMFOJL>k__BackingField = AFOAIPBOACM.<FNIGMBMFOJL>k__BackingField;
string <ILKJJMACHPC>k__BackingField = AFOAIPBOACM.<ILKJJMACHPC>k__BackingField;
PGCHMNKBEFJ <IGOLNCKNKMK>k__BackingField = AFOAIPBOACM.<IGOLNCKNKMK>k__BackingField;
}
}
// Token: 0x0600F059 RID: 61529 RVA: 0x0036F0F0 File Offset: 0x0036D2F0
[Token(Token = "0x600F059")]
[Address(RVA = "0x1D15160", Offset = "0x1D14160", VA = "0x181D15160")]
public bool UnlockAvatarItemAndMarkNew(string DJHKBMIDFLF)
{
OutfitManager.NKEOOJACMNG nkeoojacmng = new OutfitManager.NKEOOJACMNG();
nkeoojacmng.avatarItemDesc = DJHKBMIDFLF;
nkeoojacmng.<>4__this = this;
HashSet<AvatarItem> nkihcllango = this.NKIHCLLANGO;
bool flag;
if (!flag)
{
return flag;
}
OutfitManager.AvatarItemMetadata avatarItemMetadata;
OutfitManager.AvatarItemMetadata metadata = avatarItemMetadata;
avatarItemMetadata.IsNew = true;
this.EDCLJLEICAC();
if (this.LGHHLODGCFO != 0)
{
}
this.UnlockedAvatarItemsChangedEvent.CNFDGDEOPPF();
PMGCJEPKFOF<List<NLEKGNENMCO.EPFHLDCPAOK>> pmgcjepkfof = NLEKGNENMCO.JMILOAEBBAK();
Action<List<NLEKGNENMCO.EPFHLDCPAOK>> action = delegate(List<NLEKGNENMCO.EPFHLDCPAOK> unlockedAvatarItems)
{
if (unlockedAvatarItems != 0)
{
OutfitManager.NKEOOJACMNG cs$<>8__locals = nkeoojacmng;
Predicate<NLEKGNENMCO.EPFHLDCPAOK> <>9__ = cs$<>8__locals.<>9__1;
if (<>9__ == 0)
{
Predicate<NLEKGNENMCO.EPFHLDCPAOK> predicate = delegate(NLEKGNENMCO.EPFHLDCPAOK uai)
{
string avatarItemDesc = cs$<>8__locals.avatarItemDesc;
return string.Equals(uai.<KHKDPOODHCD>k__BackingField, avatarItemDesc);
};
cs$<>8__locals.<>9__1 = predicate;
}
NLEKGNENMCO.EPFHLDCPAOK epfhldcpaok = unlockedAvatarItems.Find(<>9__);
OutfitManager.AvatarItemMetadata metadata4 = metadata;
string <FNIGMBMFOJL>k__BackingField = epfhldcpaok.<FNIGMBMFOJL>k__BackingField;
metadata4.FriendlyName = <FNIGMBMFOJL>k__BackingField;
OutfitManager.AvatarItemMetadata metadata2 = metadata;
string <ILKJJMACHPC>k__BackingField = epfhldcpaok.<ILKJJMACHPC>k__BackingField;
metadata2.Tooltip = <ILKJJMACHPC>k__BackingField;
OutfitManager.AvatarItemMetadata metadata3 = metadata;
PGCHMNKBEFJ <IGOLNCKNKMK>k__BackingField = epfhldcpaok.<IGOLNCKNKMK>k__BackingField;
metadata3.Rarity = <IGOLNCKNKMK>k__BackingField;
nkeoojacmng.<>4__this.KGJKDAPMLEM(true);
nkeoojacmng.<>4__this.HairColorVault.LinkDyesToWatchStorefront();
bool flag2 = MNHEFLIMKGO.JDJOHHLOEJK();
}
};
throw new NullReferenceException();
}
// Token: 0x0600F05A RID: 61530 RVA: 0x0036F178 File Offset: 0x0036D378
[Token(Token = "0x600F05A")]
[Address(RVA = "0x1D141F0", Offset = "0x1D131F0", VA = "0x181D141F0")]
public void MarkNotNew(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (flag)
{
}
}
// Token: 0x0600F05B RID: 61531 RVA: 0x0036F198 File Offset: 0x0036D398
[Token(Token = "0x600F05B")]
[Address(RVA = "0x1D14120", Offset = "0x1D13120", VA = "0x181D14120")]
public void MarkGiftPackageItemAvailable(string DJHKBMIDFLF)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata();
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg2 = this.ONKBHGLCAEG;
}
}
// Token: 0x0600F05C RID: 61532 RVA: 0x0036F1C8 File Offset: 0x0036D3C8
[Token(Token = "0x600F05C")]
[Address(RVA = "0x1D12C10", Offset = "0x1D11C10", VA = "0x181D12C10")]
public bool IsAvatarItemUnlocked(AvatarItem LACNEKHKOII)
{
HashSet<AvatarItem> nkihcllango = this.NKIHCLLANGO;
bool flag;
return flag;
}
// Token: 0x0600F05D RID: 61533 RVA: 0x0036F1E0 File Offset: 0x0036D3E0
[Token(Token = "0x600F05D")]
[Address(RVA = "0x1D12C70", Offset = "0x1D11C70", VA = "0x181D12C70")]
public bool IsAvatarItemUnlocked(string DJHKBMIDFLF)
{
/*
An exception occurred when decompiling this method (0600F05D)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean RecRoom.Avatars.Outfit.OutfitManager::IsAvatarItemUnlocked(System.String)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:class [System.Core]System.Collections.Generic.HashSet`1<valuetype RecRoom.Avatars.Data.Runtime.AvatarItem>(var_1_06, ldfld:class [System.Core]System.Collections.Generic.HashSet`1<valuetype RecRoom.Avatars.Data.Runtime.AvatarItem>(OutfitManager::NKIHCLLANGO, ldloc:OutfitManager(this)))
}
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
--- End of inner exception stack trace ---
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
*/;
}
// Token: 0x0600F05E RID: 61534 RVA: 0x0036F1F8 File Offset: 0x0036D3F8
[Token(Token = "0x600F05E")]
[Address(RVA = "0x1D12B60", Offset = "0x1D11B60", VA = "0x181D12B60")]
public bool IsAvatarItemAlreadyPurchased(AvatarItem LACNEKHKOII)
{
string text = LACNEKHKOII._avatarItemVisualData.JOPJHHOJMEE();
return SingletonMonoBehaviour.ONCPNMDGGKG.IsOutfitAvailableInGiftPackageQueue(text) || this.IsAvatarItemUnlocked(text);
}
// Token: 0x0600F05F RID: 61535 RVA: 0x0036F230 File Offset: 0x0036D430
[Token(Token = "0x600F05F")]
[Address(RVA = "0x1D12AC0", Offset = "0x1D11AC0", VA = "0x181D12AC0")]
public bool IsAvatarItemAlreadyPurchased(string DJHKBMIDFLF)
{
return SingletonMonoBehaviour.ONCPNMDGGKG.IsOutfitAvailableInGiftPackageQueue(DJHKBMIDFLF) || this.IsAvatarItemUnlocked(DJHKBMIDFLF);
}
// Token: 0x0600F060 RID: 61536 RVA: 0x0036F25C File Offset: 0x0036D45C
[Token(Token = "0x600F060")]
[Address(RVA = "0x1D117D0", Offset = "0x1D107D0", VA = "0x181D117D0")]
public bool GetItemIsNew(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
return flag;
}
throw new NullReferenceException();
}
// Token: 0x0600F061 RID: 61537 RVA: 0x0036F27C File Offset: 0x0036D47C
[Token(Token = "0x600F061")]
[Address(RVA = "0x1D11730", Offset = "0x1D10730", VA = "0x181D11730")]
public string GetItemFriendlyName(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
return string.Empty;
}
throw new NullReferenceException();
}
// Token: 0x0600F062 RID: 61538 RVA: 0x0036F2A0 File Offset: 0x0036D4A0
[Token(Token = "0x600F062")]
[Address(RVA = "0x1D119C0", Offset = "0x1D109C0", VA = "0x181D119C0")]
public string GetItemTooltip(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
return string.Empty;
}
throw new NullReferenceException();
}
// Token: 0x0600F063 RID: 61539 RVA: 0x0036F2C4 File Offset: 0x0036D4C4
[Token(Token = "0x600F063")]
[Address(RVA = "0x1D11930", Offset = "0x1D10930", VA = "0x181D11930")]
public PGCHMNKBEFJ GetItemRarity(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
return PGCHMNKBEFJ.None;
}
throw new NullReferenceException();
}
// Token: 0x0600F064 RID: 61540 RVA: 0x0036F2E4 File Offset: 0x0036D4E4
[Token(Token = "0x600F064")]
[Address(RVA = "0x1D11860", Offset = "0x1D10860", VA = "0x181D11860")]
public OutfitManager.AvatarItemMetadata GetItemMetadata(AvatarItem IOBEPGLJNIP)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag;
if (!flag)
{
new OutfitManager.AvatarItemMetadata().IsNew = false;
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg2 = this.ONKBHGLCAEG;
}
throw new NullReferenceException();
}
// Token: 0x0600F065 RID: 61541 RVA: 0x0036F314 File Offset: 0x0036D514
[Token(Token = "0x600F065")]
[Address(RVA = "0x1D10AD0", Offset = "0x1D0FAD0", VA = "0x181D10AD0")]
private void EDCLJLEICAC()
{
HashSet<AvatarItem> nkihcllango = this.NKIHCLLANGO;
Func<AvatarItem, OutfitType> <>9__51_ = OutfitManager.<>c.<>9__51_0;
if (<>9__51_ == 0)
{
OutfitManager.<>c.<>9__51_0 = delegate(AvatarItem i)
{
throw new NullReferenceException();
};
}
IEnumerable enumerable = Enumerable.GroupBy<AvatarItem, OutfitType>(nkihcllango, <>9__51_);
Func<IGrouping<OutfitType, AvatarItem>, OutfitType> func;
if (OutfitManager.<>c.<>9__51_1 == 0)
{
func = delegate(IGrouping<OutfitType, AvatarItem> g)
{
throw new NullReferenceException();
};
OutfitManager.<>c.<>9__51_1 = func;
}
Func<IGrouping<OutfitType, AvatarItem>, List<AvatarItem>> func2;
if (OutfitManager.<>c.<>9__51_2 == 0)
{
func2 = (IGrouping<OutfitType, AvatarItem> g) => Enumerable.ToList<AvatarItem>(g);
OutfitManager.<>c.<>9__51_2 = func2;
}
Dictionary<IGrouping<OutfitType, AvatarItem>, OutfitType> dictionary = Enumerable.ToDictionary<IGrouping<OutfitType, AvatarItem>, OutfitType, List<AvatarItem>>(enumerable, func, func2);
this.FCBILBFBCGJ = dictionary;
}
// Token: 0x0600F066 RID: 61542 RVA: 0x0036F3A4 File Offset: 0x0036D5A4
[Token(Token = "0x600F066")]
[Address(RVA = "0x1D12630", Offset = "0x1D11630", VA = "0x181D12630")]
public List<AvatarItemSelection> GetRandomUnlockedOutfit()
{
int num;
List<AvatarItemSelection> list;
do
{
num = 0;
list = new List();
Dictionary<OutfitType, List<AvatarItem>> fcbilbfbcgj = this.FCBILBFBCGJ;
bool flag;
if (flag)
{
if (global::UnityEngine.Random.value > 0.5f)
{
continue;
}
bool flag2;
int num2;
if (!flag2)
{
num2 = 0;
if (global::UnityEngine.Random.value > 0.3f)
{
continue;
}
}
while (this.FNPHHGHPGAI <= (ulong)0L)
{
}
AvatarItem avatarItem = ECNNGIFNNNM.NBMJEPIPHGC<AvatarItem>(num2);
int num3 = 0;
int num4 = (int)((OutfitType)num2).LJHEGHEHPEK((AvatarItemHandEquipType)num3);
list.Add(num3);
while (num4 != 2)
{
}
list.Add(num3);
}
}
while (num != 0);
return list;
}
// Token: 0x0600F067 RID: 61543 RVA: 0x0036F444 File Offset: 0x0036D644
[Token(Token = "0x600F067")]
[Address(RVA = "0x1D122F0", Offset = "0x1D112F0", VA = "0x181D122F0")]
public List<AvatarItemSelection> GetRandomInitialOutfit()
{
int num = 0;
List<AvatarItem> initialAvatarItems = AvatarItemWardrobeRuntimeConfig.Config.initialAvatarItems;
Func<AvatarItem, bool> <>9__53_ = OutfitManager.<>c.<>9__53_0;
if (<>9__53_ == 0)
{
OutfitManager.<>c.<>9__53_0 = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)2L;
}
bool flag = OutfitManager.TryGetRandomItem(initialAvatarItems, <>9__53_, num);
List<AvatarItem> initialAvatarItems2 = AvatarItemWardrobeRuntimeConfig.Config.initialAvatarItems;
Func<AvatarItem, bool> func;
if (OutfitManager.<>c.<>9__53_1 == 0)
{
func = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L;
OutfitManager.<>c.<>9__53_1 = func;
}
bool flag2 = OutfitManager.TryGetRandomItem(initialAvatarItems2, func, num);
if (!flag || !flag2)
{
Debug.LogError("Error building initial outfit!");
}
return new List { num, num };
}
// Token: 0x0600F068 RID: 61544 RVA: 0x0036F4FC File Offset: 0x0036D6FC
[Token(Token = "0x600F068")]
[Address(RVA = "0x1D14EE0", Offset = "0x1D13EE0", VA = "0x181D14EE0")]
public static bool TryGetRandomItem(IEnumerable<AvatarItem> NPKMLLECNOF, Func<AvatarItem, bool> LMAJKCLDDIF, out AvatarItem NNLFIDNBHDK)
{
OutfitManager.FNPHHGHPGAI.Clear();
if (LMAJKCLDDIF != 0)
{
List<AvatarItem> fnphhghpgai = OutfitManager.FNPHHGHPGAI;
IEnumerable<AvatarItem> enumerable = Enumerable.Where<AvatarItem>(NPKMLLECNOF, LMAJKCLDDIF);
}
OutfitManager.FNPHHGHPGAI.AddRange(NPKMLLECNOF);
List<AvatarItem> fnphhghpgai2 = OutfitManager.FNPHHGHPGAI;
OutfitManager.FNPHHGHPGAI.Clear();
int num = 0;
NNLFIDNBHDK._avatarItemData = num;
NNLFIDNBHDK._avatarItemVisualData = num;
throw new NullReferenceException();
}
// Token: 0x0600F069 RID: 61545 RVA: 0x0036F558 File Offset: 0x0036D758
[Token(Token = "0x600F069")]
[Address(RVA = "0x1D150E0", Offset = "0x1D140E0", VA = "0x181D150E0")]
public bool TryGetRandomUnlockedItem(Func<AvatarItem, bool> LMAJKCLDDIF, out AvatarItem NNLFIDNBHDK)
{
return OutfitManager.TryGetRandomItem(this.NKIHCLLANGO, LMAJKCLDDIF, ref NNLFIDNBHDK);
}
// Token: 0x0600F06A RID: 61546 RVA: 0x0036F574 File Offset: 0x0036D774
[Token(Token = "0x600F06A")]
[Address(RVA = "0x1D14C90", Offset = "0x1D13C90", VA = "0x181D14C90")]
public bool TryGetDefaultTorsoItem(out AvatarItem JAAMIJFBHDL)
{
List<AvatarItem> defaultTorsoAvatarItems;
Func<AvatarItem, bool> <>9__56_;
do
{
defaultTorsoAvatarItems = AvatarItemWardrobeRuntimeConfig.Config.defaultTorsoAvatarItems;
<>9__56_ = OutfitManager.<>c.<>9__56_0;
if (<>9__56_ == 0)
{
OutfitManager.<>c.<>9__56_0 = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L;
}
}
while (OutfitManager.TryGetRandomItem(defaultTorsoAvatarItems, <>9__56_, ref JAAMIJFBHDL));
Func<AvatarItem, bool> func;
if (OutfitManager.<>c.<>9__56_1 == 0)
{
func = (AvatarItem item) => "{il2cpp field on {'constant1' (constant value of type Cpp2IL.Core.Analysis.Il2CppClassIdentifier)}, offset 0x20}" == (ulong)101L;
OutfitManager.<>c.<>9__56_1 = func;
}
return OutfitManager.TryGetRandomItem(this.NKIHCLLANGO, func, ref JAAMIJFBHDL);
}
// Token: 0x0600F06B RID: 61547 RVA: 0x0036F5EC File Offset: 0x0036D7EC
[Token(Token = "0x600F06B")]
[Address(RVA = "0x1D10DF0", Offset = "0x1D0FDF0", VA = "0x181D10DF0")]
public AvatarBodyShape FindBodyShape(string BIPOJLIEOIB)
{
return this.BodyShapeVault.Find(BIPOJLIEOIB);
}
// Token: 0x0600F06C RID: 61548 RVA: 0x0036F60C File Offset: 0x0036D80C
[Token(Token = "0x600F06C")]
[Address(RVA = "0x1D10E20", Offset = "0x1D0FE20", VA = "0x181D10E20")]
public AvatarFaceShape FindFaceShape(string EBCJKIKPFMG)
{
AvatarFaceShapeVault faceShapeVault = this.FaceShapeVault;
Dictionary<string, AvatarFaceShape> gbehdbbngmh = faceShapeVault.GBEHDBBNGMH;
throw new NullReferenceException();
}
// Token: 0x0600F06D RID: 61549 RVA: 0x0036F648 File Offset: 0x0036D848
[Token(Token = "0x600F06D")]
[Address(RVA = "0x1D11490", Offset = "0x1D10490", VA = "0x181D11490")]
public AvatarCustomizationSettings GetDefaultCustomizationSettings()
{
AvatarCustomizationSettings avatarCustomizationSettings = new AvatarCustomizationSettings();
string guidString = this.FaceStyleSet.Eyes[0].GuidString;
avatarCustomizationSettings.eyeId = guidString;
FaceStyleSet faceStyleSet = this.FaceStyleSet;
if ((ulong)1L == 0UL)
{
}
string guidString2 = faceStyleSet.Mouths[0].GuidString;
avatarCustomizationSettings.mouthId = guidString2;
AvatarFaceShape avatarFaceShape = Enumerable.First<AvatarFaceShape>(this.FaceShapeVault.AvatarFaceShapes);
int num = 0;
if (avatarFaceShape != 0)
{
}
avatarCustomizationSettings.faceShapeId = num;
AvatarBodyShape @default = this.BodyShapeVault.GetDefault();
string guidString3;
if (@default != 0)
{
guidString3 = @default.guidString;
}
avatarCustomizationSettings.bodyShapeId = guidString3;
avatarCustomizationSettings.useHatAnchorParams = true;
return avatarCustomizationSettings;
}
// Token: 0x0600F06E RID: 61550 RVA: 0x0036F6F4 File Offset: 0x0036D8F4
[Token(Token = "0x600F06E")]
[Address(RVA = "0x1D11A60", Offset = "0x1D10A60", VA = "0x181D11A60")]
public AvatarCustomizationSettings GetRandomCustomizationSettings()
{
AvatarCustomizationSettings avatarCustomizationSettings;
HairPatternVault hairPatternVault;
int num3;
do
{
avatarCustomizationSettings = new AvatarCustomizationSettings();
FaceStyleSet faceStyleSet = this.FaceStyleSet;
int length = faceStyleSet.Eyes.Length;
int num = global::UnityEngine.Random.Range(0, length);
string guidString = faceStyleSet.Eyes[num].GuidString;
avatarCustomizationSettings.eyeId = guidString;
FaceStyleSet faceStyleSet2 = this.FaceStyleSet;
int length2 = faceStyleSet2.Mouths.Length;
int num2 = global::UnityEngine.Random.Range(0, length2);
string guidString2 = faceStyleSet2.Mouths[num2].GuidString;
avatarCustomizationSettings.mouthId = guidString2;
hairPatternVault = this.HairPatternVault;
num3 = 0;
if (string.IsNullOrEmpty("") || hairPatternVault.NGGNGAEEKJH.TryGetValue("", num3))
{
}
}
while (num3 != 0);
if (global::UnityEngine.Random.value <= 0.5f)
{
AvatarHairPattern avatarHairPattern = ECNNGIFNNNM.NBMJEPIPHGC<AvatarHairPattern>(hairPatternVault.patterns);
}
string guidString3 = hairPatternVault.Default.guidString;
avatarCustomizationSettings.hairPatternId = guidString3;
HairColorVault hairColorVault = this.HairColorVault;
string guidString4 = this.BEAFBGLAPJE(hairColorVault, "", true).guidString;
avatarCustomizationSettings.hairPrimaryColorId = guidString4;
HairColorVault hairColorVault2 = this.HairColorVault;
string guidString5 = this.BEAFBGLAPJE(hairColorVault2, "", true).guidString;
avatarCustomizationSettings.hairSecondaryColorId = guidString5;
HairColorVault hairColorVault3 = this.HairColorVault;
string guidString6 = this.BEAFBGLAPJE(hairColorVault3, "", true).guidString;
avatarCustomizationSettings.beardColorId = guidString6;
HairColorVault hairColorVault4 = this.HairColorVault;
string guidString7 = this.BEAFBGLAPJE(hairColorVault4, "", true).guidString;
avatarCustomizationSettings.beardSecondaryColorId = guidString7;
string guidString8 = ECNNGIFNNNM.NBMJEPIPHGC<AvatarFaceShape>(this.FaceShapeVault.AvatarFaceShapes).guidString;
avatarCustomizationSettings.faceShapeId = guidString8;
string guidString9 = this.BodyShapeVault.GetRandom().guidString;
avatarCustomizationSettings.bodyShapeId = guidString9;
float num4 = FJFHDHBBFKE.MJKHBBDDDBL(30);
num4 = FJFHDHBBFKE.MJKHBBDDDBL(30);
avatarCustomizationSettings.eyePos = num3;
avatarCustomizationSettings.eyePos.y = (float)0;
float num5 = FJFHDHBBFKE.MJKHBBDDDBL(30);
float num6;
avatarCustomizationSettings.eyeScl = num6;
num5 = FJFHDHBBFKE.MJKHBBDDDBL(30);
num4 = FJFHDHBBFKE.MJKHBBDDDBL(30);
avatarCustomizationSettings.mouthPos = num3;
avatarCustomizationSettings.mouthPos.y = (float)0;
num4 = FJFHDHBBFKE.MJKHBBDDDBL(30);
float num7;
avatarCustomizationSettings.mouthScl = num7;
avatarCustomizationSettings.useHatAnchorParams = true;
return avatarCustomizationSettings;
}
// Token: 0x0600F06F RID: 61551 RVA: 0x0036F948 File Offset: 0x0036DB48
[Token(Token = "0x600F06F")]
[Address(RVA = "0x1D10EB0", Offset = "0x1D0FEB0", VA = "0x181D10EB0")]
public ColorVault.ColorToGuid FindHairColor(string BEIINJFEFJP, bool GNHMIFPDACD = true)
{
HairColorVault hairColorVault = this.HairColorVault;
return this.BEAFBGLAPJE(hairColorVault, BEIINJFEFJP, GNHMIFPDACD);
}
// Token: 0x0600F070 RID: 61552 RVA: 0x0036F968 File Offset: 0x0036DB68
[Token(Token = "0x600F070")]
[Address(RVA = "0x1D10FE0", Offset = "0x1D0FFE0", VA = "0x181D10FE0")]
public ColorVault.ColorToGuid FindSkinColor(string IMLCGOCPBOC, bool GNHMIFPDACD = true)
{
ColorVault skinColorVault = this.SkinColorVault;
return this.BEAFBGLAPJE(skinColorVault, IMLCGOCPBOC, GNHMIFPDACD);
}
// Token: 0x0600F071 RID: 61553 RVA: 0x0036F988 File Offset: 0x0036DB88
[Token(Token = "0x600F071")]
[Address(RVA = "0x1D0FF40", Offset = "0x1D0EF40", VA = "0x181D0FF40")]
private ColorVault.ColorToGuid BEAFBGLAPJE(ColorVault MMHAGMACGKJ, string CBCHEMNOLBO, bool GNHMIFPDACD = true)
{
Dictionary<string, ColorVault.ColorToGuid> kehdhflkclo = MMHAGMACGKJ.KEHDHFLKCLO;
throw new NullReferenceException();
}
// Token: 0x0600F072 RID: 61554 RVA: 0x0036FA3C File Offset: 0x0036DC3C
[Token(Token = "0x600F072")]
[Address(RVA = "0x1D10EE0", Offset = "0x1D0FEE0", VA = "0x181D10EE0")]
public AvatarHairPattern FindHairPattern(string COFLAJFOPEN, bool GNHMIFPDACD = true)
{
HairPatternVault hairPatternVault;
int num;
do
{
hairPatternVault = this.HairPatternVault;
num = 0;
if (hairPatternVault.NGGNGAEEKJH.TryGetValue(COFLAJFOPEN, num))
{
}
}
while (num != 0);
if (GNHMIFPDACD && global::UnityEngine.Random.value <= 0.5f)
{
AvatarHairPattern avatarHairPattern = ECNNGIFNNNM.NBMJEPIPHGC<AvatarHairPattern>(hairPatternVault.patterns);
}
return hairPatternVault.Default;
}
// Token: 0x0600F073 RID: 61555 RVA: 0x0036FA90 File Offset: 0x0036DC90
[Token(Token = "0x600F073")]
[Address(RVA = "0x1D145E0", Offset = "0x1D135E0", VA = "0x181D145E0")]
private AvatarHairPattern PICKKDOCAGJ(HairPatternVault MMHAGMACGKJ, string COFLAJFOPEN, bool GNHMIFPDACD = true)
{
int num;
do
{
num = 0;
if (MMHAGMACGKJ.NGGNGAEEKJH.TryGetValue(COFLAJFOPEN, num))
{
}
}
while (num != 0);
if (GNHMIFPDACD && global::UnityEngine.Random.value <= 0.5f)
{
AvatarHairPattern avatarHairPattern = ECNNGIFNNNM.NBMJEPIPHGC<AvatarHairPattern>(MMHAGMACGKJ.patterns);
}
return MMHAGMACGKJ.Default;
}
// Token: 0x0600F074 RID: 61556 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600F074")]
[Address(RVA = "0x1D13010", Offset = "0x1D12010", VA = "0x181D13010")]
private OutfitTool JHGCPGJHJHF(string FNKOCNMJKLK, Player FAGBHOMBNBP, AvatarItem? LACNEKHKOII, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600F075 RID: 61557 RVA: 0x0036FAE0 File Offset: 0x0036DCE0
[Token(Token = "0x600F075")]
[Address(RVA = "0x1D13CB0", Offset = "0x1D12CB0", VA = "0x181D13CB0")]
private Tool LPGADCJPHHD(string FNKOCNMJKLK, Player FAGBHOMBNBP, string CBCHEMNOLBO, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN)
{
Dictionary<string, object> dictionary = new Dictionary();
int inpoaaaoahi = FAGBHOMBNBP.DBAJDHGDPOL.INPOAAAOAHI;
throw new NullReferenceException();
}
// Token: 0x0600F076 RID: 61558 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600F076")]
[Address(RVA = "0x1D148C0", Offset = "0x1D138C0", VA = "0x181D148C0")]
public PMGCJEPKFOF<OutfitRenderSetup> SpawnOutfitImposter(AvatarItem LACNEKHKOII)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600F077 RID: 61559 RVA: 0x0036FB68 File Offset: 0x0036DD68
[Token(Token = "0x600F077")]
[Address(RVA = "0x1D146E0", Offset = "0x1D136E0", VA = "0x181D146E0")]
public GameObject SpawnHairDyeImposter(string KGKDKGBFDIA)
{
ColorVault.ColorToGuid dyeColor = this.HairColorVault.GetDyeColor(KGKDKGBFDIA);
if (dyeColor != 0)
{
int num = 0;
bool flag = ColorVault.ColorToGuid.BDBLGMKABNK(0, num);
HairDyeRenderSetup hairDyeRenderSetup = this.hairDyeImposterPrefab;
int num2 = 0;
HairDyeRenderSetup hairDyeRenderSetup2 = JODFIHBJHJM.EIJJOKINEIL<HairDyeRenderSetup>(hairDyeRenderSetup, num2, true);
hairDyeRenderSetup2.SetupRenderers(dyeColor);
return hairDyeRenderSetup2.gameObject;
}
throw new NullReferenceException();
}
// Token: 0x0600F078 RID: 61560 RVA: 0x0036FBC0 File Offset: 0x0036DDC0
[Token(Token = "0x600F078")]
[Address(RVA = "0x1D14A50", Offset = "0x1D13A50", VA = "0x181D14A50")]
public OutfitTool SpawnOutfitToolForLocalPlayer(AvatarItem FIDIMMBHIIN, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN)
{
string name = this.outfitToolPrefab.name;
OutfitTool outfitTool;
return outfitTool;
}
// Token: 0x0600F079 RID: 61561 RVA: 0x0036FBE8 File Offset: 0x0036DDE8
[Token(Token = "0x600F079")]
[Address(RVA = "0x1D147C0", Offset = "0x1D137C0", VA = "0x181D147C0")]
public Tool SpawnHairDyeToolForLocalPlayer(string KGKDKGBFDIA, PlayerSpawnedEquipment.IILDIBHEIDO OEFOIFHDBEN)
{
string name = this.hairDyeToolPrefab.name;
Tool tool;
return tool;
}
// Token: 0x0600F07A RID: 61562 RVA: 0x0036FC0C File Offset: 0x0036DE0C
[Token(Token = "0x600F07A")]
[Address(RVA = "0x1D14BC0", Offset = "0x1D13BC0", VA = "0x181D14BC0")]
public OutfitToolUIControl SpawnOutfitUIControl()
{
return global::UnityEngine.Object.Instantiate<OutfitToolUIControl>(this.outfitToolUIControlPrefab);
}
// Token: 0x1700270D RID: 9997
// (get) Token: 0x0600F07B RID: 61563 RVA: 0x0036FC24 File Offset: 0x0036DE24
[Token(Token = "0x1700270D")]
public RecRoomAudioClip[] NIOOLMDKBHO
{
[Token(Token = "0x600F07B")]
[Address(RVA = "0x42D840", Offset = "0x42C840", VA = "0x18042D840")]
get
{
return this.equipSounds;
}
}
// Token: 0x1700270E RID: 9998
// (get) Token: 0x0600F07C RID: 61564 RVA: 0x0036FC38 File Offset: 0x0036DE38
[Token(Token = "0x1700270E")]
public RecRoomAudioClip BFDIIFNGIJH
{
[Token(Token = "0x600F07C")]
[Address(RVA = "0x44C890", Offset = "0x44B890", VA = "0x18044C890")]
get
{
return this.lockedOutfitToolClip;
}
}
// Token: 0x0600F07D RID: 61565 RVA: 0x0036FC4C File Offset: 0x0036DE4C
[Token(Token = "0x600F07D")]
[Address(RVA = "0x1D15410", Offset = "0x1D14410", VA = "0x181D15410")]
public OutfitManager()
{
Dictionary<string, EOBKJELFMIA> dictionary = new Dictionary();
this.KHLONOLLNNF = dictionary;
List<string> list = new List();
this.EBMJIJKHKJA = list;
int num;
int num2;
OKNNKFGFODL oknnkfgfodl = new OKNNKFGFODL(32, num != 0, num2 != 0);
num2 = 0;
num = 0;
this.UnlockedAvatarItemsChangedEvent = oknnkfgfodl;
HashSet<AvatarItem> hashSet = new HashSet();
this.NKIHCLLANGO = hashSet;
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> dictionary2 = new Dictionary();
this.ONKBHGLCAEG = dictionary2;
base..ctor();
}
// Token: 0x0600F07E RID: 61566 RVA: 0x0036FCB0 File Offset: 0x0036DEB0
// Note: this type is marked as 'beforefieldinit'.
[Token(Token = "0x600F07E")]
[Address(RVA = "0x1D15310", Offset = "0x1D14310", VA = "0x181D15310")]
static OutfitManager()
{
int num;
int num2;
OKNNKFGFODL oknnkfgfodl = new OKNNKFGFODL(32, num != 0, num2 != 0);
num2 = 0;
num = 0;
OutfitManager.BrowsableItemsChangedEvent = oknnkfgfodl;
OutfitManager.FNPHHGHPGAI = new List();
}
// Token: 0x0600F07F RID: 61567 RVA: 0x0036FCF0 File Offset: 0x0036DEF0
[Token(Token = "0x600F07F")]
[Address(RVA = "0x1D13F40", Offset = "0x1D12F40", VA = "0x181D13F40")]
[CompilerGenerated]
private void MJGDMNODGJO(BKFGFHDDNFG NHACFCEIPCB)
{
List<HOJMGAMMIAD> jdgebbmdjbc = NHACFCEIPCB.JDGEBBMDJBC;
bool flag;
if (flag)
{
while (!flag)
{
}
EOBKJELFMIA eobkjelfmia;
if (eobkjelfmia == 0)
{
}
}
}
// Token: 0x0600F080 RID: 61568 RVA: 0x0036FD18 File Offset: 0x0036DF18
[Token(Token = "0x600F080")]
[Address(RVA = "0x1D10AC0", Offset = "0x1D0FAC0", VA = "0x181D10AC0")]
[CompilerGenerated]
private void ECFAHFBDGBN(List<NLEKGNENMCO.EPFHLDCPAOK> BOOHBJEEGKH)
{
int num = 0;
this.CIEHIDMIMIB(BOOHBJEEGKH, num != 0);
}
// Token: 0x0600F081 RID: 61569 RVA: 0x0036FD30 File Offset: 0x0036DF30
[Token(Token = "0x600F081")]
[Address(RVA = "0x1D10D30", Offset = "0x1D0FD30", VA = "0x181D10D30")]
[CompilerGenerated]
private void FFOFCNDPEAN(List<NLEKGNENMCO.EPFHLDCPAOK> BOOHBJEEGKH)
{
this.CIEHIDMIMIB(BOOHBJEEGKH, true);
}
// Token: 0x0600F082 RID: 61570 RVA: 0x0036FD48 File Offset: 0x0036DF48
[Token(Token = "0x600F082")]
[Address(RVA = "0x1D12DB0", Offset = "0x1D11DB0", VA = "0x181D12DB0")]
[CompilerGenerated]
private void JFAGMLDKOPN(List<NLEKGNENMCO.EPFHLDCPAOK> MNMHKKIMEFP)
{
bool flag;
if (flag)
{
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = this.ONKBHGLCAEG;
bool flag2;
if (!flag2)
{
OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata();
int num = 0;
this.ONKBHGLCAEG[num] = avatarItemMetadata;
}
object syncRoot = MNMHKKIMEFP._syncRoot;
}
}
// Token: 0x04009E13 RID: 40467
[Token(Token = "0x4009E13")]
private static readonly List<string> DMGKEKJIEMA = new List();
// Token: 0x04009E14 RID: 40468
[Token(Token = "0x4009E14")]
private static readonly List<string> ECAAHMIBOOC = new List();
// Token: 0x04009E15 RID: 40469
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4009E15")]
private readonly Dictionary<string, EOBKJELFMIA> KHLONOLLNNF;
// Token: 0x04009E16 RID: 40470
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4009E16")]
private readonly List<string> EBMJIJKHKJA;
// Token: 0x04009E17 RID: 40471
[Token(Token = "0x4009E17")]
public static readonly OKNNKFGFODL BrowsableItemsChangedEvent;
// Token: 0x04009E18 RID: 40472
[Token(Token = "0x4009E18")]
private static readonly List<AvatarItem> FNPHHGHPGAI;
// Token: 0x04009E1A RID: 40474
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x4009E1A")]
public readonly OKNNKFGFODL UnlockedAvatarItemsChangedEvent;
// Token: 0x04009E1B RID: 40475
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x4009E1B")]
private Dictionary<OutfitType, List<AvatarItem>> FCBILBFBCGJ;
// Token: 0x04009E1C RID: 40476
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x4009E1C")]
private readonly HashSet<AvatarItem> NKIHCLLANGO;
// Token: 0x04009E1D RID: 40477
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x4009E1D")]
private readonly Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> ONKBHGLCAEG;
// Token: 0x04009E1E RID: 40478
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x4009E1E")]
[Header("Face Shapes")]
public AvatarFaceShapeVault FaceShapeVault;
// Token: 0x04009E1F RID: 40479
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x4009E1F")]
[Header("Face Features")]
public FaceStyleSet FaceStyleSet;
// Token: 0x04009E20 RID: 40480
[FieldOffset(Offset = "0x88")]
[Token(Token = "0x4009E20")]
[Header("Body Shapes")]
public AvatarBodyShapeVault BodyShapeVault;
// Token: 0x04009E21 RID: 40481
[FieldOffset(Offset = "0x90")]
[Token(Token = "0x4009E21")]
[Header("Colors")]
public ColorVault SkinColorVault;
// Token: 0x04009E22 RID: 40482
[FieldOffset(Offset = "0x98")]
[Token(Token = "0x4009E22")]
public HairColorVault HairColorVault;
// Token: 0x04009E23 RID: 40483
[FieldOffset(Offset = "0xA0")]
[Token(Token = "0x4009E23")]
[Header("Patterns")]
public HairPatternVault HairPatternVault;
// Token: 0x04009E24 RID: 40484
[FieldOffset(Offset = "0xA8")]
[Token(Token = "0x4009E24")]
[SerializeField]
[Header("Item spawning")]
private GameObject outfitToolPrefab;
// Token: 0x04009E25 RID: 40485
[FieldOffset(Offset = "0xB0")]
[Token(Token = "0x4009E25")]
[SerializeField]
private OutfitRenderSetup outfitImposterPrefab;
// Token: 0x04009E26 RID: 40486
[FieldOffset(Offset = "0xB8")]
[Token(Token = "0x4009E26")]
[SerializeField]
private OutfitToolUIControl outfitToolUIControlPrefab;
// Token: 0x04009E27 RID: 40487
[FieldOffset(Offset = "0xC0")]
[Token(Token = "0x4009E27")]
[SerializeField]
private PermanentHairDyeTool hairDyeToolPrefab;
// Token: 0x04009E28 RID: 40488
[FieldOffset(Offset = "0xC8")]
[Token(Token = "0x4009E28")]
[SerializeField]
private HairDyeRenderSetup hairDyeImposterPrefab;
// Token: 0x04009E29 RID: 40489
[FieldOffset(Offset = "0xD0")]
[Token(Token = "0x4009E29")]
[SerializeField]
[Header("Sounds")]
private RecRoomAudioClip[] equipSounds;
// Token: 0x04009E2A RID: 40490
[FieldOffset(Offset = "0xD8")]
[Token(Token = "0x4009E2A")]
[SerializeField]
private RecRoomAudioClip lockedOutfitToolClip;
// Token: 0x04009E2B RID: 40491
[FieldOffset(Offset = "0xE0")]
[Token(Token = "0x4009E2B")]
[Tooltip("PlayerAvatarDisplay used for debugging purposes")]
public PlayerAvatarDisplay debugDummyPrefab;
// Token: 0x020024B0 RID: 9392
[Token(Token = "0x20024B0")]
public class AvatarItemMetadata
{
// Token: 0x0600F083 RID: 61571 RVA: 0x0036FDB0 File Offset: 0x0036DFB0
[Token(Token = "0x600F083")]
[Address(RVA = "0x1D08C90", Offset = "0x1D07C90", VA = "0x181D08C90")]
public string GetItemStarRarityString()
{
PGCHMNKBEFJ rarity = this.Rarity;
if (rarity > PGCHMNKBEFJ.Uncommon)
{
if (rarity == PGCHMNKBEFJ.Rare)
{
}
if (rarity == PGCHMNKBEFJ.Epic)
{
}
if (rarity != PGCHMNKBEFJ.Legendary)
{
goto IL_24;
}
}
if (rarity == PGCHMNKBEFJ.Common)
{
}
if (rarity == PGCHMNKBEFJ.Uncommon)
{
}
IL_24:
int num = 0;
return string.Concat(Enumerable.Repeat<string>("\ud83d\udfca", num));
}
// Token: 0x0600F084 RID: 61572 RVA: 0x0036FDF4 File Offset: 0x0036DFF4
[Token(Token = "0x600F084")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public AvatarItemMetadata()
{
}
// Token: 0x04009E2C RID: 40492
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E2C")]
public bool IsNew;
// Token: 0x04009E2D RID: 40493
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E2D")]
public string FriendlyName;
// Token: 0x04009E2E RID: 40494
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009E2E")]
public string Tooltip;
// Token: 0x04009E2F RID: 40495
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4009E2F")]
public PGCHMNKBEFJ Rarity;
}
// Token: 0x020024B1 RID: 9393
[Token(Token = "0x20024B1")]
[CompilerGenerated]
private sealed class JHOBBJFPMHA
{
// Token: 0x0600F085 RID: 61573 RVA: 0x0036FE08 File Offset: 0x0036E008
[Token(Token = "0x600F085")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public JHOBBJFPMHA()
{
}
// Token: 0x0600F086 RID: 61574 RVA: 0x0036FE1C File Offset: 0x0036E01C
[Token(Token = "0x600F086")]
[Address(RVA = "0x1D0ED30", Offset = "0x1D0DD30", VA = "0x181D0ED30")]
internal PMGCJEPKFOF<List<EOBKJELFMIA>> <GetBrowsableAvatarItemsByGuids>b__0(List<NLEKGNENMCO.EPFHLDCPAOK> details)
{
int num;
do
{
num = 0;
bool flag;
if (flag)
{
List<EOBKJELFMIA> list = this.results;
OutfitManager outfitManager = this.<>4__this;
Dictionary<AvatarItem, OutfitManager.AvatarItemMetadata> onkbhglcaeg = outfitManager.ONKBHGLCAEG;
bool flag2;
if (!flag2)
{
OutfitManager.AvatarItemMetadata avatarItemMetadata = new OutfitManager.AvatarItemMetadata();
int num2 = 0;
avatarItemMetadata.IsNew = false;
outfitManager.ONKBHGLCAEG[num2] = avatarItemMetadata;
}
EOBKJELFMIA eobkjelfmia = new EOBKJELFMIA();
eobkjelfmia.<FLFHILBLCOG>k__BackingField = eobkjelfmia;
eobkjelfmia.<OHIGJIBAPHD>k__BackingField = num;
eobkjelfmia.<FPECCGKDEMF>k__BackingField = false;
outfitManager.BLBNKOIALHE(eobkjelfmia);
list.Add(eobkjelfmia);
}
}
while (num != 0);
List<EOBKJELFMIA> list2 = this.results;
PMGCJEPKFOF<EOBKJELFMIA> pmgcjepkfof;
return pmgcjepkfof;
}
// Token: 0x04009E30 RID: 40496
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E30")]
public List<EOBKJELFMIA> results;
// Token: 0x04009E31 RID: 40497
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E31")]
public OutfitManager <>4__this;
}
// Token: 0x020024B3 RID: 9395
[Token(Token = "0x20024B3")]
[CompilerGenerated]
private sealed class NKEOOJACMNG
{
// Token: 0x0600F093 RID: 61587 RVA: 0x00370018 File Offset: 0x0036E218
[Token(Token = "0x600F093")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public NKEOOJACMNG()
{
}
// Token: 0x0600F094 RID: 61588 RVA: 0x0037002C File Offset: 0x0036E22C
[Token(Token = "0x600F094")]
[Address(RVA = "0x1D0C540", Offset = "0x1D0B540", VA = "0x181D0C540")]
internal bool <UnlockAvatarItemAndMarkNew>b__1(NLEKGNENMCO.EPFHLDCPAOK uai)
{
string text = this.avatarItemDesc;
return string.Equals(uai.<KHKDPOODHCD>k__BackingField, text);
}
// Token: 0x04009E3D RID: 40509
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E3D")]
public string avatarItemDesc;
// Token: 0x04009E3E RID: 40510
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E3E")]
public OutfitManager <>4__this;
// Token: 0x04009E3F RID: 40511
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009E3F")]
public Predicate<NLEKGNENMCO.EPFHLDCPAOK> <>9__1;
}
// Token: 0x020024B4 RID: 9396
[Token(Token = "0x20024B4")]
[CompilerGenerated]
private sealed class HNBPNFLIOCF
{
// Token: 0x0600F095 RID: 61589 RVA: 0x00370054 File Offset: 0x0036E254
[Token(Token = "0x600F095")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public HNBPNFLIOCF()
{
}
// Token: 0x0600F096 RID: 61590 RVA: 0x00370068 File Offset: 0x0036E268
[Token(Token = "0x600F096")]
[Address(RVA = "0x1D0DA40", Offset = "0x1D0CA40", VA = "0x181D0DA40")]
internal void <UnlockAvatarItemAndMarkNew>b__0(List<NLEKGNENMCO.EPFHLDCPAOK> unlockedAvatarItems)
{
if (unlockedAvatarItems != 0)
{
OutfitManager.NKEOOJACMNG cs$<>8__locals = this.CS$<>8__locals1;
Predicate<NLEKGNENMCO.EPFHLDCPAOK> <>9__ = cs$<>8__locals.<>9__1;
if (<>9__ == 0)
{
Predicate<NLEKGNENMCO.EPFHLDCPAOK> predicate = delegate(NLEKGNENMCO.EPFHLDCPAOK uai)
{
string avatarItemDesc = cs$<>8__locals.avatarItemDesc;
return string.Equals(uai.<KHKDPOODHCD>k__BackingField, avatarItemDesc);
};
cs$<>8__locals.<>9__1 = predicate;
}
NLEKGNENMCO.EPFHLDCPAOK epfhldcpaok = unlockedAvatarItems.Find(<>9__);
OutfitManager.AvatarItemMetadata avatarItemMetadata = this.metadata;
string <FNIGMBMFOJL>k__BackingField = epfhldcpaok.<FNIGMBMFOJL>k__BackingField;
avatarItemMetadata.FriendlyName = <FNIGMBMFOJL>k__BackingField;
OutfitManager.AvatarItemMetadata avatarItemMetadata2 = this.metadata;
string <ILKJJMACHPC>k__BackingField = epfhldcpaok.<ILKJJMACHPC>k__BackingField;
avatarItemMetadata2.Tooltip = <ILKJJMACHPC>k__BackingField;
OutfitManager.AvatarItemMetadata avatarItemMetadata3 = this.metadata;
PGCHMNKBEFJ <IGOLNCKNKMK>k__BackingField = epfhldcpaok.<IGOLNCKNKMK>k__BackingField;
avatarItemMetadata3.Rarity = <IGOLNCKNKMK>k__BackingField;
this.CS$<>8__locals1.<>4__this.KGJKDAPMLEM(true);
this.CS$<>8__locals1.<>4__this.HairColorVault.LinkDyesToWatchStorefront();
bool flag = MNHEFLIMKGO.JDJOHHLOEJK();
}
}
// Token: 0x04009E40 RID: 40512
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E40")]
public OutfitManager.AvatarItemMetadata metadata;
// Token: 0x04009E41 RID: 40513
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E41")]
public OutfitManager.NKEOOJACMNG CS$<>8__locals1;
}
// Token: 0x020024B5 RID: 9397
[Token(Token = "0x20024B5")]
[CompilerGenerated]
private sealed class LHMOIEBGMEH
{
// Token: 0x0600F097 RID: 61591 RVA: 0x0037012C File Offset: 0x0036E32C
[Token(Token = "0x600F097")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public LHMOIEBGMEH()
{
}
// Token: 0x0600F098 RID: 61592 RVA: 0x00370140 File Offset: 0x0036E340
[Token(Token = "0x600F098")]
[Address(RVA = "0x411530", Offset = "0x410530", VA = "0x180411530")]
internal OutfitRenderSetup <SpawnOutfitImposter>b__0()
{
return this.imposterRenderSetup;
}
// Token: 0x04009E42 RID: 40514
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E42")]
public OutfitRenderSetup imposterRenderSetup;
}
}
}