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

979 lines
33 KiB
C#

using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using Photon.Pun;
using RecRoom.Async;
using RecRoom.Avatar.Data.Runtime;
using RecRoom.Avatar.Data.Shared;
using RecRoom.Core;
using RecRoom.DataStructures.ResourceHandles;
using UnityEngine;
namespace RecRoom.Avatar.Outfit
{
// Token: 0x020021C7 RID: 8647
[Token(Token = "0x20021C7")]
[StructLayout(3)]
public class OutfitTool : MonoBehaviourPun
{
// Token: 0x170027E6 RID: 10214
// (get) Token: 0x0600EE41 RID: 60993 RVA: 0x003879A0 File Offset: 0x00385BA0
[Token(Token = "0x170027E6")]
public static OutfitTool GJELAAICDMC
{
[Token(Token = "0x600EE41")]
[Address(RVA = "0x1D117F0", Offset = "0x1D101F0", VA = "0x181D117F0")]
get
{
OutfitTool laidkdhadak = OutfitTool.LAIDKDHADAK;
int num = 0;
if (laidkdhadak == num)
{
OutfitTool.LAIDKDHADAK = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.SpawnDormOutfitForLocalPlayer();
OutfitTool.LAIDKDHADAK.<PEPMCNPDBJD>k__BackingField = true;
}
return OutfitTool.LAIDKDHADAK;
}
}
// Token: 0x170027E7 RID: 10215
// (get) Token: 0x0600EE42 RID: 60994 RVA: 0x003879E4 File Offset: 0x00385BE4
[Token(Token = "0x170027E7")]
public Player PLEAGBOMPHC
{
[Token(Token = "0x600EE42")]
[Address(RVA = "0x1D11AC0", Offset = "0x1D104C0", VA = "0x181D11AC0")]
get
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
if (tool != num)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
int num2 = 0;
if (<FLFJCIPBAPA>k__BackingField != num2)
{
return this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField.<APAJHLAPLCB>k__BackingField;
}
}
throw new NullReferenceException();
}
}
// Token: 0x170027E8 RID: 10216
// (get) Token: 0x0600EE43 RID: 60995 RVA: 0x00387A38 File Offset: 0x00385C38
[Token(Token = "0x170027E8")]
public bool BOOLNLGPKOE
{
[Token(Token = "0x600EE43")]
[Address(RVA = "0x1D11720", Offset = "0x1D10120", VA = "0x181D11720")]
get
{
Player wearer = this.PLEAGBOMPHC;
int num = 0;
bool flag = wearer != num;
if (!flag)
{
return flag;
}
return ((IAsyncResult)this.PLEAGBOMPHC).IsCompleted;
}
}
// Token: 0x170027E9 RID: 10217
// (get) Token: 0x0600EE44 RID: 60996 RVA: 0x00387A70 File Offset: 0x00385C70
// (set) Token: 0x0600EE45 RID: 60997 RVA: 0x00387A84 File Offset: 0x00385C84
[Token(Token = "0x170027E9")]
public OutfitTool.CIGAFIMHKNA DAIOGLFJPGM
{
[Token(Token = "0x600EE44")]
[Address(RVA = "0x549060", Offset = "0x547A60", VA = "0x180549060")]
get
{
return this.JIKGGMCEOBJ;
}
[Token(Token = "0x600EE45")]
[Address(RVA = "0x1D11BA0", Offset = "0x1D105A0", VA = "0x181D11BA0")]
set
{
if (this.JIKGGMCEOBJ != value)
{
this.JIKGGMCEOBJ = value;
if (value == OutfitTool.CIGAFIMHKNA.Wearing || value == OutfitTool.CIGAFIMHKNA.Attaching)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
int num = 0;
if (<FLFJCIPBAPA>k__BackingField != num && this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField.HICLCBMIPIN)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField2 = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
int num2 = 0;
<FLFJCIPBAPA>k__BackingField2.HICLCBMIPIN = num2 != 0;
OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
instance.MarkNotNew(igjpehncmno);
}
}
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField3 = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
int num3 = 0;
if (<FLFJCIPBAPA>k__BackingField3 != num3 && this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField.<MHCDCIGJNNA>k__BackingField)
{
OutfitTool.CIGAFIMHKNA jikggmceobj = this.JIKGGMCEOBJ;
if (jikggmceobj != OutfitTool.CIGAFIMHKNA.Wearing)
{
if (jikggmceobj != OutfitTool.CIGAFIMHKNA.NotWearing)
{
goto IL_EE;
}
if (this.EKJIEKFMFMH.OPMAIMKLJCP() && this.<KJCGHECBBMN>k__BackingField)
{
AvatarItem igjpehncmno2 = this.IGJPEHNCMNO;
}
}
this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField.OBDMCACJNDD = true;
}
IL_EE:
if (this.EquipStateChanged != 0)
{
}
}
}
}
// Token: 0x170027EA RID: 10218
// (get) Token: 0x0600EE46 RID: 60998 RVA: 0x00387B90 File Offset: 0x00385D90
[Token(Token = "0x170027EA")]
public bool AJOPLDFLMLO
{
[Token(Token = "0x600EE46")]
[Address(RVA = "0x1D11710", Offset = "0x1D10110", VA = "0x181D11710")]
get
{
return this.JIKGGMCEOBJ == OutfitTool.CIGAFIMHKNA.Wearing;
}
}
// Token: 0x170027EB RID: 10219
// (get) Token: 0x0600EE47 RID: 60999 RVA: 0x00387BA8 File Offset: 0x00385DA8
// (set) Token: 0x0600EE48 RID: 61000 RVA: 0x00387BBC File Offset: 0x00385DBC
[Token(Token = "0x170027EB")]
public bool CMLHEEHNDEK
{
[Token(Token = "0x600EE47")]
[Address(RVA = "0x11BC390", Offset = "0x11BAD90", VA = "0x1811BC390")]
get;
[Token(Token = "0x600EE48")]
[Address(RVA = "0x11BB590", Offset = "0x11B9F90", VA = "0x1811BB590")]
private set;
}
// Token: 0x170027EC RID: 10220
// (get) Token: 0x0600EE49 RID: 61001 RVA: 0x00387BD0 File Offset: 0x00385DD0
// (set) Token: 0x0600EE4A RID: 61002 RVA: 0x00387BE4 File Offset: 0x00385DE4
[Token(Token = "0x170027EC")]
public bool NEFBHAOCDEH
{
[Token(Token = "0x600EE49")]
[Address(RVA = "0x1616120", Offset = "0x1614B20", VA = "0x181616120")]
get;
[Token(Token = "0x600EE4A")]
[Address(RVA = "0x16162B0", Offset = "0x1614CB0", VA = "0x1816162B0")]
private set;
}
// Token: 0x170027ED RID: 10221
// (get) Token: 0x0600EE4B RID: 61003 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x170027ED")]
public AvatarItem NJFKKOFHBKN
{
[Token(Token = "0x600EE4B")]
[Address(RVA = "0x130FCF0", Offset = "0x130E6F0", VA = "0x18130FCF0")]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x170027EE RID: 10222
// (get) Token: 0x0600EE4C RID: 61004 RVA: 0x00387BF8 File Offset: 0x00385DF8
[Token(Token = "0x170027EE")]
public AvatarItemData IHPLAJLADMP
{
[Token(Token = "0x600EE4C")]
[Address(RVA = "0x4B81A0", Offset = "0x4B6BA0", VA = "0x1804B81A0")]
get
{
/*
An exception occurred when decompiling this method (0600EE4C)
ICSharpCode.Decompiler.DecompilerException: Error decompiling RecRoom.Avatar.Data.Shared.AvatarItemData RecRoom.Avatar.Outfit.OutfitTool::get_AvatarItemData()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:AvatarItem(var_0_06, ldfld:AvatarItem(OutfitTool::IGJPEHNCMNO, ldloc:OutfitTool(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: 0x170027EF RID: 10223
// (get) Token: 0x0600EE4D RID: 61005 RVA: 0x00387C0C File Offset: 0x00385E0C
[Token(Token = "0x170027EF")]
public Renderer GNCEHPBKKFP
{
[Token(Token = "0x600EE4D")]
[Address(RVA = "0x1D117D0", Offset = "0x1D101D0", VA = "0x181D117D0")]
get
{
return this.renderSetup._itemRenderer;
}
}
// Token: 0x170027F0 RID: 10224
// (get) Token: 0x0600EE4E RID: 61006 RVA: 0x00387C2C File Offset: 0x00385E2C
[Token(Token = "0x170027F0")]
public ToolCollider GOGEFPCNPJC
{
[Token(Token = "0x600EE4E")]
[Address(RVA = "0x1D11950", Offset = "0x1D10350", VA = "0x181D11950")]
get
{
ToolCollider jocneojnhpc = this.JOCNEOJNHPC;
int num = 0;
if (jocneojnhpc == num)
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num2 = 0;
int num3 = 0;
if (tool != num3)
{
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
if (tool2.NNBALFKKNDO != 0)
{
int num4 = 0;
if (num4 < num2)
{
num4 += num4;
if (num4 == num2)
{
goto IL_61;
}
num4++;
}
int num5 = 0;
this.JOCNEOJNHPC = tool2;
IL_61:
num5 += num5;
}
}
int num6 = 0;
this.JOCNEOJNHPC = num6;
}
return this.JOCNEOJNHPC;
}
}
// Token: 0x170027F1 RID: 10225
// (get) Token: 0x0600EE4F RID: 61007 RVA: 0x00387CB8 File Offset: 0x00385EB8
// (set) Token: 0x0600EE50 RID: 61008 RVA: 0x00387CCC File Offset: 0x00385ECC
[Token(Token = "0x170027F1")]
public Tool PBBJCLJPFMI
{
[Token(Token = "0x600EE4F")]
[Address(RVA = "0x52F5A0", Offset = "0x52DFA0", VA = "0x18052F5A0")]
get;
[Token(Token = "0x600EE50")]
[Address(RVA = "0x52F840", Offset = "0x52E240", VA = "0x18052F840")]
private set;
}
// Token: 0x0600EE51 RID: 61009 RVA: 0x00387CE0 File Offset: 0x00385EE0
[Token(Token = "0x600EE51")]
[Address(RVA = "0x1D0FA40", Offset = "0x1D0E440", VA = "0x181D0FA40", Slot = "13")]
protected override void Awake()
{
base..ctor();
Tool component = base.GetComponent<Tool>();
this.<MBFGOCOFHHM>k__BackingField = component;
int num = 0;
if (component == num)
{
Debug.LogError(base.name + " is missing a tool component.");
}
ActionEvent<AvatarItemSelection> mhofjjepedo = IGFKPPKAIHD.MHOFJJEPEDO;
Action<AvatarItemSelection> action = new Action(this.JAEPAFAOJFE);
IGFKPPKAIHD.MHOFJJEPEDO = mhofjjepedo + action;
ActionEvent<AvatarItemSelection> negbfknablh = IGFKPPKAIHD.NEGBFKNABLH;
Action<AvatarItemSelection> action2 = new Action(this.LECNJBBOHAC);
IGFKPPKAIHD.NEGBFKNABLH = negbfknablh + action2;
}
// Token: 0x0600EE52 RID: 61010 RVA: 0x00387D64 File Offset: 0x00385F64
[Token(Token = "0x600EE52")]
[Address(RVA = "0x1D112F0", Offset = "0x1D0FCF0", VA = "0x181D112F0")]
private void Start()
{
int num;
for (;;)
{
num = 0;
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num2 = 0;
int num3 = 0;
if (tool == num3)
{
goto IL_161;
}
this.<MBFGOCOFHHM>k__BackingField.HeldCollisionLayer = (DAJFOCGPHGP)((ulong)13L);
if (this.<MBFGOCOFHHM>k__BackingField.InstantiationParameters == 0)
{
goto IL_9C;
}
bool flag = this.<MBFGOCOFHHM>k__BackingField.InstantiationParameters.TryGetValue("AvatarItem", num2);
if (!flag)
{
goto IL_9C;
}
if (!flag || flag)
{
if (flag)
{
goto IL_7C;
}
if (num == 0 || num != 0)
{
break;
}
}
}
AvatarItem avatarItem = AvatarItem.GOODJMOBMEM(num);
IPromise promise = this.SetSelectedItemAsync(num);
IL_7C:
int num4 = 0;
this.IGJPEHNCMNO = num4;
this.IGJPEHNCMNO._avatarItemVisualData = num4;
this.<KJCGHECBBMN>k__BackingField = num4 != 0;
IL_9C:
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
Tool.DIMPKKAHGAC dimpkkahgac = new Tool.DIMPKKAHGAC(this.GNDJDFKHLFH);
tool2.CustomHandSpacePickupTransformModifier = dimpkkahgac;
Tool tool3 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> postPickupEvent = tool3.PostPickupEvent;
Action<Tool> action = new Action(this.HAAIALDMMEL);
ActionEvent<Tool> actionEvent = postPickupEvent + action;
tool3.PostPickupEvent = actionEvent;
Tool tool4 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> preReleaseEvent = tool4.PreReleaseEvent;
Action<Tool> action2 = new Action(this.BGEJPLCKLPA);
ActionEvent<Tool> actionEvent2 = preReleaseEvent + action2;
tool4.PreReleaseEvent = actionEvent2;
Tool tool5 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> postReleaseEvent = tool5.PostReleaseEvent;
Action<Tool> action3 = new Action(this.OIOCPLEKMEK);
ActionEvent<Tool> actionEvent3 = postReleaseEvent + action3;
tool5.PostReleaseEvent = actionEvent3;
this.<MBFGOCOFHHM>k__BackingField.DODDBBEOJNN = true;
return;
IL_161:
SafeDestroy.GameObject(base.gameObject);
}
// Token: 0x0600EE53 RID: 61011 RVA: 0x00387EE0 File Offset: 0x003860E0
[Token(Token = "0x600EE53")]
[Address(RVA = "0x1D10C60", Offset = "0x1D0F660", VA = "0x181D10C60", Slot = "14")]
protected override void OnDestroy()
{
base.OnDestroy();
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
if (tool != num)
{
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> postPickupEvent = tool2.PostPickupEvent;
Action<Tool> action = new Action(this.HAAIALDMMEL);
ActionEvent<Tool> actionEvent = postPickupEvent - action;
tool2.PostPickupEvent = actionEvent;
Tool tool3 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> preReleaseEvent = tool3.PreReleaseEvent;
Action<Tool> action2 = new Action(this.BGEJPLCKLPA);
ActionEvent<Tool> actionEvent2 = preReleaseEvent - action2;
tool3.PreReleaseEvent = actionEvent2;
Tool tool4 = this.<MBFGOCOFHHM>k__BackingField;
ActionEvent<Tool> postReleaseEvent = tool4.PostReleaseEvent;
Action<Tool> action3 = new Action(this.OIOCPLEKMEK);
ActionEvent<Tool> actionEvent3 = postReleaseEvent - action3;
tool4.PostReleaseEvent = actionEvent3;
}
ActionEvent<Color, PlayerAvatar.AvatarColorType> onLocalPlayerHairColorChanged = PlayerAvatar.OnLocalPlayerHairColorChanged;
Action<Color, PlayerAvatar.AvatarColorType> action4 = new Action(this.KDJGKINGGEL);
ActionEvent<Color> actionEvent4;
PlayerAvatar.OnLocalPlayerHairColorChanged = actionEvent4;
ActionEvent<AvatarItemSelection> mhofjjepedo = IGFKPPKAIHD.MHOFJJEPEDO;
Action<AvatarItemSelection> action5 = new Action(this.JAEPAFAOJFE);
IGFKPPKAIHD.MHOFJJEPEDO = mhofjjepedo - action5;
ActionEvent<AvatarItemSelection> negbfknablh = IGFKPPKAIHD.NEGBFKNABLH;
Action<AvatarItemSelection> action6 = new Action(this.LECNJBBOHAC);
IGFKPPKAIHD.NEGBFKNABLH = negbfknablh - action6;
}
// Token: 0x0600EE54 RID: 61012 RVA: 0x00388008 File Offset: 0x00386208
[Token(Token = "0x600EE54")]
[Address(RVA = "0x1D10F60", Offset = "0x1D0F960", VA = "0x181D10F60")]
private void OnTriggerEnter(Collider GLPOLGOBLAA)
{
if (GLPOLGOBLAA.gameObject.KHHDLOKCNHC((IIBIOPCKHGK)((uint)1053184)) && this.EquipOnCollision && this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE && this.IOGJPBNCCOG)
{
int num = 0;
Player player;
ulong num2;
if (player != num && this.BOOLNLGPKOE && (ulong)this.<MBFGOCOFHHM>k__BackingField.<PBCNKLKCIHJ>k__BackingField.HECJOOCGPLM != num2 && this.<KJCGHECBBMN>k__BackingField)
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag;
if (!flag || this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE)
{
}
}
}
}
// Token: 0x0600EE55 RID: 61013 RVA: 0x003880A0 File Offset: 0x003862A0
[Token(Token = "0x600EE55")]
[Address(RVA = "0x1D10010", Offset = "0x1D0EA10", VA = "0x181D10010")]
private void JAEPAFAOJFE(AvatarItemSelection NLNHFEEMFBN)
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag;
if (flag)
{
Player.GAHEJKDCLLE ekjiekfmfmh = this.EKJIEKFMFMH;
Player.GAHEJKDCLLE bodyPart = NLNHFEEMFBN._bodyPart;
if (ekjiekfmfmh != bodyPart)
{
bool flag2 = ekjiekfmfmh.OPMAIMKLJCP();
if (!flag2 || !flag2)
{
return;
}
}
int num = 0;
this.DAIOGLFJPGM = (OutfitTool.CIGAFIMHKNA)num;
}
}
// Token: 0x0600EE56 RID: 61014 RVA: 0x003880EC File Offset: 0x003862EC
[Token(Token = "0x600EE56")]
[Address(RVA = "0x1D10740", Offset = "0x1D0F140", VA = "0x181D10740")]
private void LECNJBBOHAC(AvatarItemSelection NLNHFEEMFBN)
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag;
if (flag)
{
Player.GAHEJKDCLLE ekjiekfmfmh = this.EKJIEKFMFMH;
Player.GAHEJKDCLLE bodyPart = NLNHFEEMFBN._bodyPart;
if (ekjiekfmfmh != bodyPart)
{
bool flag2 = ekjiekfmfmh.OPMAIMKLJCP();
if (!flag2 || !flag2)
{
return;
}
}
this.DAIOGLFJPGM = OutfitTool.CIGAFIMHKNA.NotWearing;
}
}
// Token: 0x0600EE57 RID: 61015 RVA: 0x00388134 File Offset: 0x00386334
[Token(Token = "0x600EE57")]
[Address(RVA = "0x1D10090", Offset = "0x1D0EA90", VA = "0x181D10090")]
private void KDJGKINGGEL(Color GJAINANBOCB, PlayerAvatar.AvatarColorType CFOCEHNGAEH)
{
if (this.<KJCGHECBBMN>k__BackingField)
{
Renderer itemRenderer = this.renderSetup._itemRenderer;
int num = 0;
if (!(itemRenderer == num))
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag;
if ((flag ? PlayerAvatar.AvatarColorType.Hair : PlayerAvatar.AvatarColorType.Skin) == CFOCEHNGAEH)
{
Material material = this.renderSetup._itemRenderer.GetMaterial();
}
}
}
}
// Token: 0x0600EE58 RID: 61016 RVA: 0x00388188 File Offset: 0x00386388
[Token(Token = "0x600EE58")]
[Address(RVA = "0x1D110F0", Offset = "0x1D0FAF0", VA = "0x181D110F0")]
public IPromise SetSelectedItemAsync(AvatarItem IOBEPGLJNIP)
{
this.<KJCGHECBBMN>k__BackingField = true;
this.DAIOGLFJPGM = OutfitTool.CIGAFIMHKNA.None;
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
string text;
base.gameObject.name = text;
OutfitRenderSetup outfitRenderSetup = this.renderSetup;
AvatarItem item;
AvatarItem item3 = item;
outfitRenderSetup.NPCPLFAONFO();
outfitRenderSetup.NAGNBENONGJ(true);
outfitRenderSetup.ABCOCFGCFCL = item3;
IResourceHandle<OCJGMOHBPDH> resourceHandle;
outfitRenderSetup.JCPCLCFKPIB = resourceHandle;
Action<OCJGMOHBPDH> action = new Action(outfitRenderSetup.ONBJAODKAOL);
Action action2 = delegate
{
OutfitTool <>4__this = this;
int num = 0;
if (!(<>4__this == num))
{
OutfitTool <>4__this2 = this;
AvatarItem item2 = item;
<>4__this2.MCCIOEDEPNC(item2);
}
};
throw new NullReferenceException();
}
// Token: 0x0600EE59 RID: 61017 RVA: 0x00388210 File Offset: 0x00386410
[Token(Token = "0x600EE59")]
[Address(RVA = "0x1D0FD10", Offset = "0x1D0E710", VA = "0x181D0FD10")]
private void FDDGKCHAGKD()
{
int num = 0;
this.IGJPEHNCMNO = num;
this.IGJPEHNCMNO._avatarItemVisualData = num;
this.<KJCGHECBBMN>k__BackingField = num != 0;
}
// Token: 0x0600EE5A RID: 61018 RVA: 0x0038823C File Offset: 0x0038643C
[Token(Token = "0x600EE5A")]
[Address(RVA = "0x1D107F0", Offset = "0x1D0F1F0", VA = "0x181D107F0")]
private void MCCIOEDEPNC(AvatarItem IOBEPGLJNIP)
{
int num = 0;
Player.GAHEJKDCLLE gahejkdclle;
this.EKJIEKFMFMH = gahejkdclle;
Player wearer = this.PLEAGBOMPHC;
int num2 = 0;
if (wearer != num2)
{
Player wearer2 = this.PLEAGBOMPHC;
if (wearer == (ulong)20L)
{
string displayedBeardColorGuid = wearer2.playerAvatar.KMBHIGEIJHH;
}
string text = wearer2.playerAvatar.JJDCGAMBGFO;
if (!string.IsNullOrEmpty(text))
{
Color color = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG.FindHairColor(text, true).color;
bool flag = wearer == (ulong)20L;
if ((this.<KJCGHECBBMN>k__BackingField ? 1 : 0) != num)
{
Renderer itemRenderer = this.renderSetup._itemRenderer;
int num3 = 0;
if (!(itemRenderer == num3))
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag2;
if (flag2 == flag)
{
Material material = this.renderSetup._itemRenderer.GetMaterial();
int pokihafiphe = OutfitTool.POKIHAFIPHE;
material.SetColor(pokihafiphe, color);
}
}
}
}
if (!this.BOOLNLGPKOE)
{
goto IL_114;
}
ActionEvent<Color, PlayerAvatar.AvatarColorType> onLocalPlayerHairColorChanged = PlayerAvatar.OnLocalPlayerHairColorChanged;
Action<Color, PlayerAvatar.AvatarColorType> action = new Action(this.KDJGKINGGEL);
ActionEvent<Color, PlayerAvatar.AvatarColorType> actionEvent = onLocalPlayerHairColorChanged + action;
}
ActionEvent<Color, PlayerAvatar.AvatarColorType> onLocalPlayerHairColorChanged2 = PlayerAvatar.OnLocalPlayerHairColorChanged;
Action<Color, PlayerAvatar.AvatarColorType> action2 = new Action(this.KDJGKINGGEL);
PlayerAvatar.OnLocalPlayerHairColorChanged = onLocalPlayerHairColorChanged2 - action2;
IL_114:
if (this.BOOLNLGPKOE)
{
PlayerAvatar playerAvatar = this.PLEAGBOMPHC.playerAvatar;
}
}
// Token: 0x0600EE5B RID: 61019 RVA: 0x0038837C File Offset: 0x0038657C
[Token(Token = "0x600EE5B")]
[Address(RVA = "0x1D0FC90", Offset = "0x1D0E690", VA = "0x181D0FC90")]
public void DontCollideWithPlayer(float BJJEDIGOMGC)
{
this.IOGJPBNCCOG = false;
Action action = new Action(this.OINKGNACAIK);
ISchedulerPromise schedulerPromise = this.InvokeInUpdate(BJJEDIGOMGC, action);
}
// Token: 0x0600EE5C RID: 61020 RVA: 0x003883A8 File Offset: 0x003865A8
[Token(Token = "0x600EE5C")]
[Address(RVA = "0x1D0FE20", Offset = "0x1D0E820", VA = "0x181D0FE20")]
public Player.GAHEJKDCLLE GetEquipTargetPlayerBodyPart()
{
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
Player.GAHEJKDCLLE gahejkdclle;
return gahejkdclle;
}
// Token: 0x0600EE5D RID: 61021 RVA: 0x003883C4 File Offset: 0x003865C4
[Token(Token = "0x600EE5D")]
[Address(RVA = "0x1D0F990", Offset = "0x1D0E390", VA = "0x181D0F990")]
public void ApplyToPlayer(Player IEKDDPPNFPF)
{
OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
if (instance.IsAvatarItemUnlocked(igjpehncmno))
{
AvatarItem igjpehncmno2 = this.IGJPEHNCMNO;
}
}
// Token: 0x0600EE5E RID: 61022 RVA: 0x003883F8 File Offset: 0x003865F8
[Token(Token = "0x600EE5E")]
[Address(RVA = "0x1D101C0", Offset = "0x1D0EBC0", VA = "0x181D101C0")]
private void KMMADAPBIFF(Player IEKDDPPNFPF, Player.GAHEJKDCLLE NMKAKHOEMGB)
{
while (this.JIKGGMCEOBJ != OutfitTool.CIGAFIMHKNA.Attaching)
{
int num = 0;
if (!(IEKDDPPNFPF != num))
{
object[] array = new object[4];
if ("SetOutfitToPlayer has null player. BodyPart : " != 0)
{
}
array[0] = "SetOutfitToPlayer has null player. BodyPart : ";
if ("SetOutfitToPlayer has null player. BodyPart : " != 0)
{
}
array[1] = "SetOutfitToPlayer has null player. BodyPart : ";
if (" - " != 0)
{
}
array[2] = " - ";
string gameObjectHierarchy = base.gameObject.GetGameObjectHierarchy();
if (gameObjectHierarchy != 0)
{
}
array[3] = gameObjectHierarchy;
Debug.LogError(string.Concat(array));
return;
}
PlayerAvatar playerAvatar = IEKDDPPNFPF.playerAvatar;
int num2 = 0;
AvatarItem igjpehncmno = this.IGJPEHNCMNO;
bool flag = playerAvatar.IsWearingTrialVersion(igjpehncmno, num2);
OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem igjpehncmno2 = this.IGJPEHNCMNO;
bool flag2 = instance.IsAvatarItemUnlocked(igjpehncmno2);
if (this.JIKGGMCEOBJ == (OutfitTool.CIGAFIMHKNA)num2 && flag == flag2)
{
if (!flag2)
{
goto IL_10A;
}
PlayerAvatar playerAvatar2 = IEKDDPPNFPF.playerAvatar;
AvatarItem igjpehncmno3 = this.IGJPEHNCMNO;
if (playerAvatar2.IsWearing(igjpehncmno3, num2))
{
goto IL_10A;
}
}
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
int num3 = 0;
if (<FLFJCIPBAPA>k__BackingField != num3)
{
PlayerSpawnedEquipment <FLFJCIPBAPA>k__BackingField2 = this.<MBFGOCOFHHM>k__BackingField.<FLFJCIPBAPA>k__BackingField;
PlayerAvatar playerAvatar3 = IEKDDPPNFPF.playerAvatar;
AvatarItem igjpehncmno4 = this.IGJPEHNCMNO;
if (this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE)
{
this.DAIOGLFJPGM = OutfitTool.CIGAFIMHKNA.Attaching;
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
OKIMOMGKKDH ekjclgjfign = OKIMOMGKKDH.EKJCLGJFIGN;
tool.IKEGONLJBPP = ekjclgjfign;
throw new NullReferenceException();
}
continue;
}
IL_10A:
if (this.<MBFGOCOFHHM>k__BackingField.FNFNLDBILFE)
{
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
OKIMOMGKKDH ekjclgjfign2 = OKIMOMGKKDH.EKJCLGJFIGN;
tool2.IKEGONLJBPP = ekjclgjfign2;
}
PlayerAvatar playerAvatar4 = IEKDDPPNFPF.playerAvatar;
AvatarItem igjpehncmno5 = this.IGJPEHNCMNO;
break;
}
}
// Token: 0x0600EE5F RID: 61023 RVA: 0x00388598 File Offset: 0x00386798
[Token(Token = "0x600EE5F")]
[Address(RVA = "0x1D0FE50", Offset = "0x1D0E850", VA = "0x181D0FE50")]
private void HAAIALDMMEL(Tool EGFEJGHDNAI)
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
tool.SetUsingGravityRigidBody(num != 0);
ToolCollider jocneojnhpc = this.JOCNEOJNHPC;
int num2 = 0;
if (jocneojnhpc == num2)
{
Tool tool2 = this.<MBFGOCOFHHM>k__BackingField;
int num3 = 0;
int num4 = 0;
if (tool2 != num4 && this.<MBFGOCOFHHM>k__BackingField.NNBALFKKNDO != 0)
{
int num5 = 0;
if (num5 < num3)
{
num5 += num5;
if (num5 == num3)
{
goto IL_6A;
}
num5++;
}
int num6 = 0;
IL_6A:
num6 += num6;
}
int num7 = 0;
this.JOCNEOJNHPC = num7;
}
ulong num8;
this.JOCNEOJNHPC.enabled = num8 != 0UL;
}
// Token: 0x0600EE60 RID: 61024 RVA: 0x00388634 File Offset: 0x00386834
[Token(Token = "0x600EE60")]
[Address(RVA = "0x1D0FC00", Offset = "0x1D0E600", VA = "0x181D0FC00")]
private void BGEJPLCKLPA(Tool NBHJPDBHDHB)
{
if (this.<MBFGOCOFHHM>k__BackingField.PAJGCGDFHKK)
{
this.IOGJPBNCCOG = false;
Action action = new Action(this.OINKGNACAIK);
ISchedulerPromise schedulerPromise = this.InvokeInUpdate(1f, action);
}
}
// Token: 0x0600EE61 RID: 61025 RVA: 0x00388678 File Offset: 0x00386878
[Token(Token = "0x600EE61")]
[Address(RVA = "0x1D10BD0", Offset = "0x1D0F5D0", VA = "0x181D10BD0")]
private void OIOCPLEKMEK(Tool EGFEJGHDNAI)
{
if (this.<MBFGOCOFHHM>k__BackingField.PAJGCGDFHKK)
{
Tool tool = this.<MBFGOCOFHHM>k__BackingField;
int num = 0;
tool.SetUsingGravityRigidBody(num != 0);
OutfitTool.CIGAFIMHKNA jikggmceobj = this.JIKGGMCEOBJ;
if (jikggmceobj == OutfitTool.CIGAFIMHKNA.Attaching || jikggmceobj != OutfitTool.CIGAFIMHKNA.Wearing)
{
int num2 = 0;
this.DAIOGLFJPGM = (OutfitTool.CIGAFIMHKNA)num2;
}
if (this.<PEPMCNPDBJD>k__BackingField)
{
int num3 = 0;
EGFEJGHDNAI.PAJGCGDFHKK = num3 != 0;
}
}
}
// Token: 0x0600EE62 RID: 61026 RVA: 0x003886D8 File Offset: 0x003868D8
[Token(Token = "0x600EE62")]
[Address(RVA = "0x1D107C0", Offset = "0x1D0F1C0", VA = "0x181D107C0")]
private bool LHMCGNJOABN(Player IEKDDPPNFPF)
{
OutfitTool.CIGAFIMHKNA jikggmceobj = this.JIKGGMCEOBJ;
if (jikggmceobj != OutfitTool.CIGAFIMHKNA.Attaching)
{
return jikggmceobj == OutfitTool.CIGAFIMHKNA.Wearing;
}
int num = 0;
this.DAIOGLFJPGM = (OutfitTool.CIGAFIMHKNA)num;
return true;
}
// Token: 0x0600EE63 RID: 61027 RVA: 0x00388700 File Offset: 0x00386900
[Token(Token = "0x600EE63")]
[Address(RVA = "0x1D0FFE0", Offset = "0x1D0E9E0", VA = "0x181D0FFE0")]
private void IPJELGFGGLL(Player IEKDDPPNFPF)
{
OutfitTool.CIGAFIMHKNA jikggmceobj = this.JIKGGMCEOBJ;
if (jikggmceobj == OutfitTool.CIGAFIMHKNA.Attaching)
{
int num = 0;
this.DAIOGLFJPGM = (OutfitTool.CIGAFIMHKNA)num;
return;
}
if (jikggmceobj != OutfitTool.CIGAFIMHKNA.Wearing)
{
this.DAIOGLFJPGM = (OutfitTool.CIGAFIMHKNA)((uint)1);
return;
}
}
// Token: 0x0600EE64 RID: 61028 RVA: 0x00388730 File Offset: 0x00386930
[Token(Token = "0x600EE64")]
[Address(RVA = "0x1D0FD20", Offset = "0x1D0E720", VA = "0x181D0FD20")]
private void GNDJDFKHLFH(Transform BGCMCCOABIJ, bool JKGLJIHNJFJ, ref Vector3 DDHPAFKBMON, ref Quaternion IGPENJBJADK)
{
float z = Vector3.zero.z;
DDHPAFKBMON.z = z;
Transform transform = base.transform;
}
// Token: 0x0600EE65 RID: 61029 RVA: 0x0038875C File Offset: 0x0038695C
[Token(Token = "0x600EE65")]
[Address(RVA = "0x1D116F0", Offset = "0x1D100F0", VA = "0x181D116F0")]
public OutfitTool()
{
}
// Token: 0x0600EE67 RID: 61031 RVA: 0x003887C8 File Offset: 0x003869C8
[Token(Token = "0x600EE67")]
[Address(RVA = "0x10235D0", Offset = "0x1021FD0", VA = "0x1810235D0")]
[CompilerGenerated]
private void OINKGNACAIK()
{
this.IOGJPBNCCOG = true;
}
// Token: 0x04009E42 RID: 40514
[Token(Token = "0x4009E42")]
private static readonly int POKIHAFIPHE = Shader.PropertyToID("_Red_Col");
// Token: 0x04009E43 RID: 40515
[Token(Token = "0x4009E43")]
private static OutfitTool LAIDKDHADAK;
// Token: 0x04009E44 RID: 40516
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4009E44")]
[NonSerialized]
public bool EquipOnCollision = true;
// Token: 0x04009E45 RID: 40517
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x4009E45")]
public Action<OutfitTool.CIGAFIMHKNA> EquipStateChanged;
// Token: 0x04009E46 RID: 40518
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x4009E46")]
private OutfitTool.CIGAFIMHKNA JIKGGMCEOBJ = (OutfitTool.CIGAFIMHKNA)((ulong)4294967295L);
// Token: 0x04009E49 RID: 40521
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
[Token(Token = "0x4009E49")]
private AvatarItem IGJPEHNCMNO;
// Token: 0x04009E4A RID: 40522
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
[Token(Token = "0x4009E4A")]
private bool IOGJPBNCCOG = true;
// Token: 0x04009E4B RID: 40523
[global::Cpp2IlInjected.FieldOffset(Offset = "0x6C")]
[Token(Token = "0x4009E4B")]
private Player.GAHEJKDCLLE EKJIEKFMFMH = (Player.GAHEJKDCLLE)((ulong)4294967295L);
// Token: 0x04009E4C RID: 40524
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
[Token(Token = "0x4009E4C")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)]
private OutfitRenderSetup renderSetup;
// Token: 0x04009E4D RID: 40525
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
[Token(Token = "0x4009E4D")]
private ToolCollider JOCNEOJNHPC;
// Token: 0x04009E4F RID: 40527
[Token(Token = "0x4009E4F")]
public static string AVATAR_ITEM_INSTANTIATION_PARAM_KEY = "AvatarItem";
// Token: 0x020021C8 RID: 8648
[Token(Token = "0x20021C8")]
public enum CIGAFIMHKNA
{
// Token: 0x04009E51 RID: 40529
[Token(Token = "0x4009E51")]
None = -1,
// Token: 0x04009E52 RID: 40530
[Token(Token = "0x4009E52")]
Wearing,
// Token: 0x04009E53 RID: 40531
[Token(Token = "0x4009E53")]
NotWearing,
// Token: 0x04009E54 RID: 40532
[Token(Token = "0x4009E54")]
Attaching
}
// Token: 0x020021C9 RID: 8649
[Token(Token = "0x20021C9")]
[CompilerGenerated]
private sealed class NPKDDKOPLOJ
{
// Token: 0x0600EE68 RID: 61032 RVA: 0x003887DC File Offset: 0x003869DC
[Token(Token = "0x600EE68")]
[Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")]
public NPKDDKOPLOJ()
{
}
// Token: 0x0600EE69 RID: 61033 RVA: 0x003887F0 File Offset: 0x003869F0
[Token(Token = "0x600EE69")]
[Address(RVA = "0x1D0E3D0", Offset = "0x1D0CDD0", VA = "0x181D0E3D0")]
internal void <SetSelectedItemAsync>b__0()
{
OutfitTool outfitTool = this.<>4__this;
int num = 0;
if (!(outfitTool == num))
{
OutfitTool outfitTool2 = this.<>4__this;
AvatarItem avatarItem = this.item;
outfitTool2.MCCIOEDEPNC(avatarItem);
}
}
// Token: 0x04009E55 RID: 40533
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009E55")]
public OutfitTool <>4__this;
// Token: 0x04009E56 RID: 40534
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E56")]
public AvatarItem item;
}
}
}