Files
2026-04-10 22:50:51 +02:00

355 lines
14 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using RecRoom.Avatars.Data.Runtime;
using RecRoom.Avatars.Outfit;
using RecRoom.Consumable;
using RecRoom.Core;
using UnityEngine;
// Token: 0x020003D0 RID: 976
[Token(Token = "0x20003D0")]
public class ImposterSpawnManager : SingletonMonoBehaviour<ImposterSpawnManager>
{
// Token: 0x06001EDD RID: 7901 RVA: 0x0007F59C File Offset: 0x0007D79C
[Token(Token = "0x6001EDD")]
[Address(RVA = "0x885630", Offset = "0x884430", VA = "0x180885630")]
static ImposterSpawnManager()
{
int[] mfnpklonkmi = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi2 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi3 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi4 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi5 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi6 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi7 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi8 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi9 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi10 = ImposterSpawnManager.MFNPKLONKMI;
int[] mfnpklonkmi11 = ImposterSpawnManager.MFNPKLONKMI;
}
// Token: 0x17000585 RID: 1413
// (get) Token: 0x06001EDE RID: 7902 RVA: 0x0007F604 File Offset: 0x0007D804
[Token(Token = "0x17000585")]
private int FFMLOLDJEJA
{
[Token(Token = "0x6001EDE")]
[Address(RVA = "0x885450", Offset = "0x884250", VA = "0x180885450")]
get
{
KHINMMJIENE ndakfemhfon = this.NDAKFEMHFON;
return ImposterSpawnManager.MFNPKLONKMI[this];
}
}
// Token: 0x06001EDF RID: 7903 RVA: 0x0007F62C File Offset: 0x0007D82C
[Token(Token = "0x6001EDF")]
[Address(RVA = "0x884B70", Offset = "0x883970", VA = "0x180884B70", Slot = "4")]
protected override void Awake()
{
base.Awake();
KHINMMJIENE khinmmjiene;
this.NDAKFEMHFON = khinmmjiene;
}
// Token: 0x06001EE0 RID: 7904 RVA: 0x0007F650 File Offset: 0x0007D850
[Token(Token = "0x6001EE0")]
[Address(RVA = "0x885550", Offset = "0x884350", VA = "0x180885550")]
private void Start()
{
Scheduler instance = SingletonMonoBehaviour.ONCPNMDGGKG;
Stack<ImposterSpawnManager.KNICAPDOFDI> pbaokcmdcnh = this.PBAOKCMDCNH;
ImposterSpawnManager.AHKDNPMOLAH ahkdnpmolah;
ahkdnpmolah.System.IDisposable.Dispose();
ahkdnpmolah.<>1__state = (int)((ulong)0L);
ahkdnpmolah.<>4__this = this;
ahkdnpmolah.queue = pbaokcmdcnh;
KFBABPAPIMB kfbabpapimb = instance.Run(this, ahkdnpmolah);
}
// Token: 0x06001EE1 RID: 7905 RVA: 0x0007F698 File Offset: 0x0007D898
[Token(Token = "0x6001EE1")]
[Address(RVA = "0x8854F0", Offset = "0x8842F0", VA = "0x1808854F0", Slot = "5")]
protected override void OnDestroy()
{
this.PBAOKCMDCNH.Clear();
base.OnDestroy();
}
// Token: 0x06001EE2 RID: 7906 RVA: 0x0007F6BC File Offset: 0x0007D8BC
[Token(Token = "0x6001EE2")]
[Address(RVA = "0x885380", Offset = "0x884180", VA = "0x180885380")]
public JCOINEEFENJ<GameObject> LoadItemAsync(AvatarItem LACNEKHKOII)
{
ImposterSpawnManager.KNICAPDOFDI knicapdofdi;
knicapdofdi.NAAEMBKDEGI = (ulong)0L;
DCLIBCDKJNF<GameObject> dclibcdkjnf = new DCLIBCDKJNF();
knicapdofdi.BAINEAGHDEH = dclibcdkjnf;
this.PBAOKCMDCNH.Push(knicapdofdi);
DCLIBCDKJNF<GameObject> baineaghdeh = knicapdofdi.BAINEAGHDEH;
throw new NullReferenceException();
}
// Token: 0x06001EE3 RID: 7907 RVA: 0x0007F6F8 File Offset: 0x0007D8F8
[Token(Token = "0x6001EE3")]
[Address(RVA = "0x8852A0", Offset = "0x8840A0", VA = "0x1808852A0")]
public JCOINEEFENJ<GameObject> LoadItemAsync(MJLPNOMEFKG NAAEMBKDEGI)
{
ImposterSpawnManager.KNICAPDOFDI knicapdofdi;
knicapdofdi.NAAEMBKDEGI = NAAEMBKDEGI;
if (NAAEMBKDEGI.<KFFMMFIJKJM>k__BackingField == CDFEDFLKOBE.OutfitItem)
{
}
DCLIBCDKJNF<GameObject> dclibcdkjnf = new DCLIBCDKJNF();
knicapdofdi.BAINEAGHDEH = dclibcdkjnf;
this.PBAOKCMDCNH.Push(knicapdofdi);
DCLIBCDKJNF<GameObject> baineaghdeh = knicapdofdi.BAINEAGHDEH;
throw new NullReferenceException();
}
// Token: 0x06001EE4 RID: 7908 RVA: 0x0007F73C File Offset: 0x0007D93C
[Token(Token = "0x6001EE4")]
[Address(RVA = "0x885230", Offset = "0x884030", VA = "0x180885230")]
private IEnumerator<KENFJGFMIPM> LPJIOPNMHJD(Stack<ImposterSpawnManager.KNICAPDOFDI> MJHMBNIDGCA)
{
/*
An exception occurred when decompiling this method (06001EE4)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerator`1<KENFJGFMIPM> ImposterSpawnManager::LPJIOPNMHJD(System.Collections.Generic.Stack`1<ImposterSpawnManager/KNICAPDOFDI>)
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
call:void(AHKDNPMOLAH::System.IDisposable.Dispose, ldloc:AHKDNPMOLAH(var_0))
stfld:ImposterSpawnManager(AHKDNPMOLAH::<>4__this, ldloc:AHKDNPMOLAH(var_0), ldloc:ImposterSpawnManager(this))
stfld:int32(AHKDNPMOLAH::<>1__state, ldloc:AHKDNPMOLAH(var_0), conv.u8:uint64[exp:int32](ldc.i8:int64[exp:uint64](0)))
stfld:class [System]System.Collections.Generic.Stack`1<class ImposterSpawnManager/KNICAPDOFDI>(AHKDNPMOLAH::queue, ldloc:AHKDNPMOLAH(var_0), ldloc:class [System]System.Collections.Generic.Stack`1<class ImposterSpawnManager/KNICAPDOFDI>(MJHMBNIDGCA))
}
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: 0x06001EE5 RID: 7909 RVA: 0x0007F768 File Offset: 0x0007D968
[Token(Token = "0x6001EE5")]
[Address(RVA = "0x884C40", Offset = "0x883A40", VA = "0x180884C40")]
private DABKFAIHBBP BEHEGDPEALL(Stack<ImposterSpawnManager.KNICAPDOFDI> MJHMBNIDGCA)
{
do
{
ImposterSpawnManager.KNICAPDOFDI knicapdofdi = MJHMBNIDGCA.Pop();
ImposterSpawnManager.KNICAPDOFDI loadRequest = knicapdofdi;
DCLIBCDKJNF<GameObject> baineaghdeh = knicapdofdi.BAINEAGHDEH;
CBLLFJEDOII<GameObject> cbllfjedoii = new CBLLFJEDOII();
ImposterSpawnManager.KNICAPDOFDI loadRequest2 = loadRequest;
MJLPNOMEFKG naaembkdegi = loadRequest2.NAAEMBKDEGI;
MJLPNOMEFKG currentItem = naaembkdegi;
if (loadRequest2.NAAEMBKDEGI == (ulong)0L)
{
OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem lacnekhkoii = loadRequest.LACNEKHKOII;
PMGCJEPKFOF<OutfitRenderSetup> pmgcjepkfof = instance.SpawnOutfitImposter(lacnekhkoii);
if (ImposterSpawnManager.<>c.<>9__15_0 == 0)
{
ImposterSpawnManager.<>c.<>9__15_0 = (OutfitRenderSetup v) => v.gameObject;
}
}
if (naaembkdegi.<KFFMMFIJKJM>k__BackingField > CDFEDFLKOBE.Query)
{
goto IL_13E;
}
OutfitManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
}
while (ImposterSpawnManager.<>c.<>9__15_2 != 0);
ImposterSpawnManager.<>c.<>9__15_2 = (OutfitRenderSetup v) => v.gameObject;
EquipmentManager instance3 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
MJLPNOMEFKG currentItem3 = mmehliapfgb.currentItem;
string <MGPPFEKOLNK>k__BackingField = currentItem3.<MGPPFEKOLNK>k__BackingField;
string <JOGJIAPDHFB>k__BackingField = currentItem3.<JOGJIAPDHFB>k__BackingField;
GameObject gameObject = instance3.SpawnEquipmentImposter(<JOGJIAPDHFB>k__BackingField, <MGPPFEKOLNK>k__BackingField);
ConsumableManager instance4 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
string <CNJALCEBPMC>k__BackingField = mmehliapfgb.currentItem.<CNJALCEBPMC>k__BackingField;
GameObject gameObject2 = instance4.SpawnConsumableImposter(<CNJALCEBPMC>k__BackingField);
MJLPNOMEFKG currentItem2 = mmehliapfgb.currentItem;
GiftBoxMerchVisual giftBoxMerchVisual;
bool flag = giftBoxMerchVisual.SetGiftDrop(currentItem2);
GameObject gameObject3 = giftBoxMerchVisual.gameObject;
OutfitManager instance5 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
string <MCGDGOKLALG>k__BackingField = mmehliapfgb.currentItem.<MCGDGOKLALG>k__BackingField;
GameObject gameObject4 = instance5.SpawnHairDyeImposter(<MCGDGOKLALG>k__BackingField);
IL_13E:
PMGCJEPKFOF<GameObject> pmgcjepkfof2 = JJEKJGALHKO.MKLIDFOGIGO<GameObject>(0);
Action<GameObject> action = delegate(GameObject visualGo)
{
if (!mmehliapfgb.loadRequest.BAINEAGHDEH.HLBOMBLINAL)
{
int num = 0;
if (visualGo != num)
{
global::UnityEngine.Object.Destroy(visualGo);
return;
}
}
int num2 = 0;
if (visualGo != num2)
{
if (mmehliapfgb.currentItem != 0)
{
}
OutfitManager instance6 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem lacnekhkoii2 = mmehliapfgb.loadRequest.LACNEKHKOII;
string itemFriendlyName = instance6.GetItemFriendlyName(lacnekhkoii2);
visualGo.name = itemFriendlyName;
}
mmehliapfgb.loadRequest.BAINEAGHDEH.OOOIENHGNCA(visualGo);
};
DCLIBCDKJNF<GameObject> baineaghdeh2 = mmehliapfgb.loadRequest.BAINEAGHDEH;
throw new NullReferenceException();
}
// Token: 0x06001EE6 RID: 7910 RVA: 0x0007F8DC File Offset: 0x0007DADC
[Token(Token = "0x6001EE6")]
[Address(RVA = "0x885900", Offset = "0x884700", VA = "0x180885900")]
public ImposterSpawnManager()
{
Stack<ImposterSpawnManager.KNICAPDOFDI> stack = new Stack();
this.PBAOKCMDCNH = stack;
base..ctor();
}
// Token: 0x06001EE7 RID: 7911 RVA: 0x0007F8FC File Offset: 0x0007DAFC
[Token(Token = "0x6001EE7")]
[Address(RVA = "0x47AAB0", Offset = "0x4798B0", VA = "0x18047AAB0")]
[CompilerGenerated]
private void EHBABGCALID()
{
}
// Token: 0x0400176A RID: 5994
[Token(Token = "0x400176A")]
private static readonly int[] MFNPKLONKMI = new int[11];
// Token: 0x0400176B RID: 5995
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400176B")]
[SerializeField]
private GiftBoxMerchVisual giftBoxMerchVisualPrefab;
// Token: 0x0400176C RID: 5996
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400176C")]
private readonly Stack<ImposterSpawnManager.KNICAPDOFDI> PBAOKCMDCNH;
// Token: 0x0400176D RID: 5997
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400176D")]
private int KBCKLJLADDF;
// Token: 0x0400176E RID: 5998
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400176E")]
private KHINMMJIENE NDAKFEMHFON;
// Token: 0x020003D1 RID: 977
[Token(Token = "0x20003D1")]
private class KNICAPDOFDI
{
// Token: 0x06001EE8 RID: 7912 RVA: 0x0007F90C File Offset: 0x0007DB0C
[Token(Token = "0x6001EE8")]
[Address(RVA = "0x897100", Offset = "0x895F00", VA = "0x180897100")]
public KNICAPDOFDI(MJLPNOMEFKG NAAEMBKDEGI)
{
this.NAAEMBKDEGI = NAAEMBKDEGI;
if (NAAEMBKDEGI.<KFFMMFIJKJM>k__BackingField == CDFEDFLKOBE.OutfitItem)
{
}
DCLIBCDKJNF<GameObject> dclibcdkjnf = new DCLIBCDKJNF();
this.BAINEAGHDEH = dclibcdkjnf;
}
// Token: 0x06001EE9 RID: 7913 RVA: 0x0007F944 File Offset: 0x0007DB44
[Token(Token = "0x6001EE9")]
[Address(RVA = "0x897190", Offset = "0x895F90", VA = "0x180897190")]
public KNICAPDOFDI(AvatarItem LACNEKHKOII)
{
this.NAAEMBKDEGI = (ulong)0L;
DCLIBCDKJNF<GameObject> dclibcdkjnf = new DCLIBCDKJNF();
this.BAINEAGHDEH = dclibcdkjnf;
}
// Token: 0x0400176F RID: 5999
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x400176F")]
public MJLPNOMEFKG NAAEMBKDEGI;
// Token: 0x04001770 RID: 6000
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4001770")]
public AvatarItem LACNEKHKOII;
// Token: 0x04001771 RID: 6001
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4001771")]
public DCLIBCDKJNF<GameObject> BAINEAGHDEH;
}
// Token: 0x020003D3 RID: 979
[Token(Token = "0x20003D3")]
[CompilerGenerated]
private sealed class MMEHLIAPFGB
{
// Token: 0x06001EF0 RID: 7920 RVA: 0x0007FA80 File Offset: 0x0007DC80
[Token(Token = "0x6001EF0")]
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
public MMEHLIAPFGB()
{
}
// Token: 0x06001EF1 RID: 7921 RVA: 0x0007FA94 File Offset: 0x0007DC94
[Token(Token = "0x6001EF1")]
[Address(RVA = "0x899170", Offset = "0x897F70", VA = "0x180899170")]
internal void <LoadNextImposter>b__1(GameObject visualGo)
{
if (!this.loadRequest.BAINEAGHDEH.HLBOMBLINAL)
{
int num = 0;
if (visualGo != num)
{
global::UnityEngine.Object.Destroy(visualGo);
return;
}
}
int num2 = 0;
if (visualGo != num2)
{
if (this.currentItem != 0)
{
}
OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG;
AvatarItem lacnekhkoii = this.loadRequest.LACNEKHKOII;
string itemFriendlyName = instance.GetItemFriendlyName(lacnekhkoii);
visualGo.name = itemFriendlyName;
}
this.loadRequest.BAINEAGHDEH.OOOIENHGNCA(visualGo);
}
// Token: 0x04001776 RID: 6006
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4001776")]
public ImposterSpawnManager.KNICAPDOFDI loadRequest;
// Token: 0x04001777 RID: 6007
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4001777")]
public MJLPNOMEFKG currentItem;
}
}