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

505 lines
18 KiB
C#

using System;
using System.Runtime.CompilerServices;
using Cpp2IlInjected;
using RecRoom.Avatars.Data.Runtime;
using RecRoom.Avatars.Data.Shared;
using RecRoom.Core.Imposters;
using RRUI.Data;
using UnityEngine;
using UnityEngine.UI;
// Token: 0x0200073D RID: 1853
[Token(Token = "0x200073D")]
[RequireComponent(typeof(RawImage))]
public class ImposterRawImage : MonoBehaviour
{
// Token: 0x170008E9 RID: 2281
// (get) Token: 0x060035BF RID: 13759 RVA: 0x000DDCE4 File Offset: 0x000DBEE4
// (set) Token: 0x060035C0 RID: 13760 RVA: 0x000DDCF8 File Offset: 0x000DBEF8
[Token(Token = "0x170008E9")]
public MJLPNOMEFKG NBHLHGDAHKJ
{
[Token(Token = "0x60035BF")]
[Address(RVA = "0x423D40", Offset = "0x422B40", VA = "0x180423D40")]
get;
[Token(Token = "0x60035C0")]
[Address(RVA = "0x466B90", Offset = "0x465990", VA = "0x180466B90")]
private set;
}
// Token: 0x170008EA RID: 2282
// (get) Token: 0x060035C1 RID: 13761 RVA: 0x0000220F File Offset: 0x0000040F
// (set) Token: 0x060035C2 RID: 13762 RVA: 0x000DDD0C File Offset: 0x000DBF0C
[Token(Token = "0x170008EA")]
public AvatarItem? NJFKKOFHBKN
{
[Token(Token = "0x60035C1")]
[Address(RVA = "0x884B50", Offset = "0x883950", VA = "0x180884B50")]
[CompilerGenerated]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
[Token(Token = "0x60035C2")]
[Address(RVA = "0x884080", Offset = "0x882E80", VA = "0x180884080")]
[CompilerGenerated]
private set
{
}
}
// Token: 0x170008EB RID: 2283
// (get) Token: 0x060035C3 RID: 13763 RVA: 0x000DDD1C File Offset: 0x000DBF1C
// (set) Token: 0x060035C4 RID: 13764 RVA: 0x000DDD30 File Offset: 0x000DBF30
[Token(Token = "0x170008EB")]
public Texture MKDANEHFPMD
{
[Token(Token = "0x60035C3")]
[Address(RVA = "0x4391F0", Offset = "0x437FF0", VA = "0x1804391F0")]
get;
[Token(Token = "0x60035C4")]
[Address(RVA = "0x7D58F0", Offset = "0x7D46F0", VA = "0x1807D58F0")]
private set;
}
// Token: 0x170008EC RID: 2284
// (get) Token: 0x060035C5 RID: 13765 RVA: 0x000DDD44 File Offset: 0x000DBF44
[Token(Token = "0x170008EC")]
private bool DOLCINHKLNM
{
[Token(Token = "0x60035C5")]
[Address(RVA = "0x8846F0", Offset = "0x8834F0", VA = "0x1808846F0")]
get
{
while (this.<IPAKFAFGINE>k__BackingField == (ulong)0L)
{
}
return true;
}
}
// Token: 0x170008ED RID: 2285
// (get) Token: 0x060035C6 RID: 13766 RVA: 0x000DDD60 File Offset: 0x000DBF60
[Token(Token = "0x170008ED")]
private int JJBNHODPBNK
{
[Token(Token = "0x60035C6")]
[Address(RVA = "0x884320", Offset = "0x883120", VA = "0x180884320")]
get
{
/*
An exception occurred when decompiling this method (060035C6)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 ImposterRawImage::MNBMOIPEDFA()
---> System.Exception: Basic block has to end with unconditional control flow.
{
IL_00:
brtrue(IL_00, cne:bool(ldfld:JIBNNKFFHAP(ImposterRawImage::size, ldloc:ImposterRawImage(this)), ldc.i4:JIBNNKFFHAP(0)))
}
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.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
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: 0x060035C7 RID: 13767 RVA: 0x000DDD78 File Offset: 0x000DBF78
[Token(Token = "0x60035C7")]
[Address(RVA = "0x883B10", Offset = "0x882910", VA = "0x180883B10")]
protected void Awake()
{
ImposterRawImage.JIBNNKFFHAP jibnnkffhap = this.size;
if (jibnnkffhap == ImposterRawImage.JIBNNKFFHAP.Custom)
{
}
int num = (int)jibnnkffhap;
RenderTexture renderTexture = JODFIHBJHJM.JGHJHCOJJEH((int)jibnnkffhap, num);
this.LDEKHANDCBO = renderTexture;
renderTexture.name = "ImposterRawImage";
Texture texture = this.defaultTexture;
this.OBDMDODHLGD(texture);
}
// Token: 0x060035C8 RID: 13768 RVA: 0x000DDDC0 File Offset: 0x000DBFC0
[Token(Token = "0x60035C8")]
[Address(RVA = "0x8845C0", Offset = "0x8833C0", VA = "0x1808845C0")]
protected void OnDestroy()
{
OKNNKFGFODL avatarHairOrBeardColorChangedEvent = AvatarCustomizationModel.AvatarHairOrBeardColorChangedEvent;
Action action = new Action(this.Clear);
avatarHairOrBeardColorChangedEvent.BIHKNNPGGKP(action);
this.PNLMHPALAFJ();
this.HOKNACHKOPK();
RenderTexture ldekhandcbo = this.LDEKHANDCBO;
int num = 0;
if (ldekhandcbo != num)
{
OMCHJHPFBDN.KBFLHNONOHF(this.LDEKHANDCBO);
this.LDEKHANDCBO = (ulong)0L;
}
}
// Token: 0x060035C9 RID: 13769 RVA: 0x000DDE20 File Offset: 0x000DC020
[Token(Token = "0x60035C9")]
[Address(RVA = "0x884740", Offset = "0x883540", VA = "0x180884740")]
private void PNLMHPALAFJ()
{
if (this.HHPKLCPOFHL != 0)
{
JCOINEEFENJ<GameObject> hhpklcpofhl = this.HHPKLCPOFHL;
this.HHPKLCPOFHL = (ulong)0L;
}
if (this.PDAKDJMFJJI != 0)
{
CDJFFFCFLMF pdakdjmfjji = this.PDAKDJMFJJI;
this.PDAKDJMFJJI = (ulong)0L;
}
}
// Token: 0x060035CA RID: 13770 RVA: 0x000DDE68 File Offset: 0x000DC068
[Token(Token = "0x60035CA")]
[Address(RVA = "0x883FE0", Offset = "0x882DE0", VA = "0x180883FE0")]
private void HOKNACHKOPK()
{
GameObject dmpjkiioecj = this.DMPJKIIOECJ;
int num = 0;
if (dmpjkiioecj != num)
{
global::UnityEngine.Object.Destroy(this.DMPJKIIOECJ);
this.DMPJKIIOECJ = (ulong)0L;
}
}
// Token: 0x060035CB RID: 13771 RVA: 0x000DDE9C File Offset: 0x000DC09C
[Token(Token = "0x60035CB")]
[Address(RVA = "0x883E30", Offset = "0x882C30", VA = "0x180883E30")]
private void BODANDCPNCA()
{
RenderTexture ldekhandcbo = this.LDEKHANDCBO;
int num = 0;
if (ldekhandcbo != num)
{
OMCHJHPFBDN.KBFLHNONOHF(this.LDEKHANDCBO);
this.LDEKHANDCBO = (ulong)0L;
}
}
// Token: 0x060035CC RID: 13772 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60035CC")]
[Address(RVA = "0x8848E0", Offset = "0x8836E0", VA = "0x1808848E0")]
public void Set(ImposterRawImage.POJHBPNMEAL ONGBFDACHHG)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060035CD RID: 13773 RVA: 0x000DDED0 File Offset: 0x000DC0D0
[Token(Token = "0x60035CD")]
[Address(RVA = "0x884840", Offset = "0x883640", VA = "0x180884840")]
public void Set(AvatarItem LACNEKHKOII)
{
int num = 0;
int num2 = 0;
int num3 = 0;
this.BDJFGEJFPPO(num, num3, num2);
}
// Token: 0x060035CE RID: 13774 RVA: 0x000DDEEC File Offset: 0x000DC0EC
[Token(Token = "0x60035CE")]
[Address(RVA = "0x884AF0", Offset = "0x8838F0", VA = "0x180884AF0")]
public void Set(MJLPNOMEFKG NAAEMBKDEGI)
{
int num = 0;
int num2 = 0;
this.BDJFGEJFPPO(num, NAAEMBKDEGI, num2);
}
// Token: 0x060035CF RID: 13775 RVA: 0x000DDF08 File Offset: 0x000DC108
[Token(Token = "0x60035CF")]
[Address(RVA = "0x8847F0", Offset = "0x8835F0", VA = "0x1808847F0")]
public void Set(Texture CAKFKAGPMBF)
{
int num = 0;
int num2 = 0;
this.BDJFGEJFPPO(num, num2, CAKFKAGPMBF);
}
// Token: 0x060035D0 RID: 13776 RVA: 0x000DDF24 File Offset: 0x000DC124
[Token(Token = "0x60035D0")]
[Address(RVA = "0x883EB0", Offset = "0x882CB0", VA = "0x180883EB0")]
public void Clear()
{
int num = 0;
int num2 = 0;
int num3 = 0;
this.BDJFGEJFPPO(num, num3, num2);
}
// Token: 0x060035D1 RID: 13777 RVA: 0x000DDF40 File Offset: 0x000DC140
[Token(Token = "0x60035D1")]
[Address(RVA = "0x883BB0", Offset = "0x8829B0", VA = "0x180883BB0")]
private void BDJFGEJFPPO(AvatarItem? LACNEKHKOII, MJLPNOMEFKG NAAEMBKDEGI, Texture GCKOCHNIODH)
{
int num = 0;
AvatarItem? avatarItem = this.<ILOHMGPEJAL>k__BackingField;
if (this.<IPAKFAFGINE>k__BackingField != NAAEMBKDEGI || !(this.<JDALJAOLCOD>k__BackingField == GCKOCHNIODH))
{
this.<IPAKFAFGINE>k__BackingField = NAAEMBKDEGI;
this.<JDALJAOLCOD>k__BackingField = GCKOCHNIODH;
this.MNNMLBIBDNL();
OKNNKFGFODL avatarHairOrBeardColorChangedEvent = AvatarCustomizationModel.AvatarHairOrBeardColorChangedEvent;
Action action = new Action(this.Clear);
avatarHairOrBeardColorChangedEvent.BIHKNNPGGKP(action);
OutfitType outfitType;
OutfitType outfitType2;
if (num != 0 && (outfitType == OutfitType.Beard || outfitType2 == OutfitType.Hair))
{
OKNNKFGFODL avatarHairOrBeardColorChangedEvent2 = AvatarCustomizationModel.AvatarHairOrBeardColorChangedEvent;
Action action2 = new Action(this.Clear);
int num2 = 0;
avatarHairOrBeardColorChangedEvent2.BPAJKKAGPKB(action2, num2 != 0);
}
}
}
// Token: 0x060035D2 RID: 13778 RVA: 0x000DDFD4 File Offset: 0x000DC1D4
[Token(Token = "0x60035D2")]
[Address(RVA = "0x884330", Offset = "0x883130", VA = "0x180884330")]
private void MNNMLBIBDNL()
{
this.PNLMHPALAFJ();
this.HOKNACHKOPK();
Texture texture = this.<JDALJAOLCOD>k__BackingField;
if (texture == 0)
{
}
this.OBDMDODHLGD(texture);
if (this.<IPAKFAFGINE>k__BackingField == (ulong)0L)
{
}
DABKFAIHBBP dabkfaihbbp = this.LHDMPPEKGGM();
Func<DABKFAIHBBP> func = new Func(this.DBJBHEIDJON);
int num = 0;
num += num;
num++;
Action action = new Action(this.GPHBNDGEOML);
}
// Token: 0x060035D3 RID: 13779 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x60035D3")]
[Address(RVA = "0x8840A0", Offset = "0x882EA0", VA = "0x1808840A0")]
protected DABKFAIHBBP LHDMPPEKGGM()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x060035D4 RID: 13780 RVA: 0x000DE03C File Offset: 0x000DC23C
[Token(Token = "0x60035D4")]
[Address(RVA = "0x883F00", Offset = "0x882D00", VA = "0x180883F00")]
protected CDJFFFCFLMF DBJBHEIDJON()
{
GameObject dmpjkiioecj = this.DMPJKIIOECJ;
RenderTexture ldekhandcbo = this.LDEKHANDCBO;
ImposterRenderConfig imposterRenderConfig = this.imposterRenderConfig;
CDJFFFCFLMF cdjfffcflmf = QueuedVisualImposter.QueueRenderPreMadeImposterToTexture(dmpjkiioecj, ldekhandcbo, imposterRenderConfig, true);
this.PDAKDJMFJJI = cdjfffcflmf;
DABKFAIHBBP dabkfaihbbp = cdjfffcflmf.MOAAINIDMGC("Unable to render imposter image");
return this.PDAKDJMFJJI;
}
// Token: 0x060035D5 RID: 13781 RVA: 0x000DE088 File Offset: 0x000DC288
[Token(Token = "0x60035D5")]
[Address(RVA = "0x8844D0", Offset = "0x8832D0", VA = "0x1808844D0")]
private void OBDMDODHLGD(Texture CAKFKAGPMBF)
{
int num = 0;
if (CAKFKAGPMBF != num)
{
}
RawImage rawImage = this.rawImage;
Color color = rawImage.color;
this.rawImage.texture = CAKFKAGPMBF;
}
// Token: 0x060035D6 RID: 13782 RVA: 0x000DE0C8 File Offset: 0x000DC2C8
[Token(Token = "0x60035D6")]
[Address(RVA = "0x884B40", Offset = "0x883940", VA = "0x180884B40")]
public ImposterRawImage()
{
}
// Token: 0x060035D7 RID: 13783 RVA: 0x000DE0E8 File Offset: 0x000DC2E8
[Token(Token = "0x60035D7")]
[Address(RVA = "0x883FB0", Offset = "0x882DB0", VA = "0x180883FB0")]
[CompilerGenerated]
private void GPHBNDGEOML()
{
RenderTexture ldekhandcbo = this.LDEKHANDCBO;
this.OBDMDODHLGD(ldekhandcbo);
this.HOKNACHKOPK();
}
// Token: 0x060035D8 RID: 13784 RVA: 0x000DE10C File Offset: 0x000DC30C
[Token(Token = "0x60035D8")]
[Address(RVA = "0x403B30", Offset = "0x402930", VA = "0x180403B30")]
[CompilerGenerated]
private void JFGFJCNIINL(GameObject NNNMGKGMIFG)
{
this.DMPJKIIOECJ = NNNMGKGMIFG;
}
// Token: 0x04002C8A RID: 11402
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4002C8A")]
[SerializeField]
[Header("General")]
[Tooltip("Texture shown when the imposter texture is not available")]
private Texture defaultTexture;
// Token: 0x04002C8B RID: 11403
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4002C8B")]
[SerializeField]
[DDPIINEJFMD(JIBDPHMGEGO.Self, false, false, false)]
private RawImage rawImage;
// Token: 0x04002C8C RID: 11404
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4002C8C")]
[SerializeField]
[Header("Imposter Rendering")]
[Tooltip("Pixel size of the rendered imposter")]
private ImposterRawImage.JIBNNKFFHAP size = (ImposterRawImage.JIBNNKFFHAP)((ulong)1024L);
// Token: 0x04002C8D RID: 11405
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4002C8D")]
[SerializeField]
[OMAIFIIBMNL("size", 0)]
[Tooltip("Custom pixel size for rendered imposter")]
private int customSize;
// Token: 0x04002C8E RID: 11406
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4002C8E")]
[SerializeField]
[Tooltip("Configuration specifying render properties for the imposter")]
private ImposterRenderConfig imposterRenderConfig;
// Token: 0x04002C8F RID: 11407
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4002C8F")]
private RenderTexture LDEKHANDCBO;
// Token: 0x04002C90 RID: 11408
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4002C90")]
private GameObject DMPJKIIOECJ;
// Token: 0x04002C91 RID: 11409
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4002C91")]
private JCOINEEFENJ<GameObject> HHPKLCPOFHL;
// Token: 0x04002C92 RID: 11410
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x4002C92")]
private CDJFFFCFLMF PDAKDJMFJJI;
// Token: 0x0200073E RID: 1854
[Token(Token = "0x200073E")]
public class POJHBPNMEAL
{
// Token: 0x170008EE RID: 2286
// (get) Token: 0x060035D9 RID: 13785 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x170008EE")]
public AvatarItem? NJFKKOFHBKN
{
[Token(Token = "0x60035D9")]
[Address(RVA = "0x899630", Offset = "0x898430", VA = "0x180899630")]
[CompilerGenerated]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
}
// Token: 0x170008EF RID: 2287
// (get) Token: 0x060035DA RID: 13786 RVA: 0x000DE120 File Offset: 0x000DC320
[Token(Token = "0x170008EF")]
public MJLPNOMEFKG PBCMKJKIDJM
{
[Token(Token = "0x60035DA")]
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
get;
}
// Token: 0x170008F0 RID: 2288
// (get) Token: 0x060035DB RID: 13787 RVA: 0x000DE134 File Offset: 0x000DC334
[Token(Token = "0x170008F0")]
public Texture MKDANEHFPMD
{
[Token(Token = "0x60035DB")]
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
get;
}
// Token: 0x060035DC RID: 13788 RVA: 0x000DE148 File Offset: 0x000DC348
[Token(Token = "0x60035DC")]
[Address(RVA = "0x899680", Offset = "0x898480", VA = "0x180899680")]
public POJHBPNMEAL(AvatarItem LACNEKHKOII)
{
int num = 0;
this.<ILOHMGPEJAL>k__BackingField = num;
}
// Token: 0x060035DD RID: 13789 RVA: 0x000DE164 File Offset: 0x000DC364
[Token(Token = "0x60035DD")]
[Address(RVA = "0x899650", Offset = "0x898450", VA = "0x180899650")]
public POJHBPNMEAL(MJLPNOMEFKG LHKDGCMGAKD)
{
this.PBCMKJKIDJM = LHKDGCMGAKD;
}
// Token: 0x060035DE RID: 13790 RVA: 0x000DE180 File Offset: 0x000DC380
[Token(Token = "0x60035DE")]
[Address(RVA = "0x899710", Offset = "0x898510", VA = "0x180899710")]
public POJHBPNMEAL(Texture GCKOCHNIODH)
{
this.MKDANEHFPMD = GCKOCHNIODH;
}
}
// Token: 0x0200073F RID: 1855
[Token(Token = "0x200073F")]
public enum JIBNNKFFHAP
{
// Token: 0x04002C9A RID: 11418
[Token(Token = "0x4002C9A")]
Custom,
// Token: 0x04002C9B RID: 11419
[Token(Token = "0x4002C9B")]
XS_128 = 128,
// Token: 0x04002C9C RID: 11420
[Token(Token = "0x4002C9C")]
S_256 = 256,
// Token: 0x04002C9D RID: 11421
[Token(Token = "0x4002C9D")]
M_512 = 512,
// Token: 0x04002C9E RID: 11422
[Token(Token = "0x4002C9E")]
L_1024 = 1024,
// Token: 0x04002C9F RID: 11423
[Token(Token = "0x4002C9F")]
XL_2048 = 2048
}
}