using System; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using Cpp2IlInjected; using RecRoom; using RecRoom.Async; using RecRoom.Avatar; using RecRoom.Avatar.Data.Runtime; using RecRoom.Avatar.Outfit; using RecRoom.Core.Imposters; using UnityEngine; using UnityEngine.UI; namespace RRUI.Data { // Token: 0x02000B42 RID: 2882 [Token(Token = "0x2000B42")] [StructLayout(3)] public class OutfitItemModelController : ModelController { // Token: 0x060047F9 RID: 18425 RVA: 0x00111BAC File Offset: 0x0010FDAC [Token(Token = "0x60047F9")] [Address(RVA = "0x195D470", Offset = "0x195BE70", VA = "0x18195D470")] public OutfitItemModelController() { } // Token: 0x02000B43 RID: 2883 [Token(Token = "0x2000B43")] [Serializable] private class NameTextImpl : TextControllerImpl { // Token: 0x060047FA RID: 18426 RVA: 0x00111BC0 File Offset: 0x0010FDC0 [Token(Token = "0x60047FA")] [Address(RVA = "0x1959A10", Offset = "0x1958410", VA = "0x181959A10", Slot = "27")] protected override void DMAHGBLDMFA() { APAODCKMEKF apaodckmekf; if (NetworkedSingletonMonoBehaviour.ONCPNMDGGKG == 0 || apaodckmekf == 0 || apaodckmekf.k__BackingField.FriendlyName == 0) { } bool flag; if (flag) { } } // Token: 0x060047FB RID: 18427 RVA: 0x00111BF4 File Offset: 0x0010FDF4 [Token(Token = "0x60047FB")] [Address(RVA = "0x1959B20", Offset = "0x1958520", VA = "0x181959B20")] public NameTextImpl() { } } // Token: 0x02000B44 RID: 2884 [Token(Token = "0x2000B44")] [Serializable] private class PriceTagTextImpl : TextControllerImpl { // Token: 0x060047FC RID: 18428 RVA: 0x00111C08 File Offset: 0x0010FE08 [Token(Token = "0x60047FC")] [Address(RVA = "0x19630E0", Offset = "0x1961AE0", VA = "0x1819630E0", Slot = "27")] protected override void DMAHGBLDMFA() { OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; APAODCKMEKF apaodckmekf; bool k__BackingField = apaodckmekf.k__BackingField; OutfitManager instance2 = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; APAODCKMEKF apaodckmekf2; if (apaodckmekf2.OBOHLOOLMKN) { if (k__BackingField) { if (!this.hideIfOwned) { return; } } else { APAODCKMEKF apaodckmekf3; int num = apaodckmekf3.IMJHDGFLNKF; } } } // Token: 0x060047FD RID: 18429 RVA: 0x00111C54 File Offset: 0x0010FE54 [Token(Token = "0x60047FD")] [Address(RVA = "0x19632F0", Offset = "0x1961CF0", VA = "0x1819632F0")] public PriceTagTextImpl() { } // Token: 0x040036B7 RID: 14007 [global::Cpp2IlInjected.FieldOffset(Offset = "0x38")] [Token(Token = "0x40036B7")] [SerializeField] private bool hideIfOwned; } // Token: 0x02000B45 RID: 2885 [Token(Token = "0x2000B45")] [Serializable] private class NewBadgeImageImpl : ImageControllerImpl { // Token: 0x060047FE RID: 18430 RVA: 0x00111C68 File Offset: 0x0010FE68 [Token(Token = "0x60047FE")] [Address(RVA = "0x1959B60", Offset = "0x1958560", VA = "0x181959B60", Slot = "27")] protected override void DMAHGBLDMFA() { OutfitManager instance = NetworkedSingletonMonoBehaviour.ONCPNMDGGKG; int num = 0; APAODCKMEKF apaodckmekf; if (!(instance == num) && apaodckmekf != 0) { APAODCKMEKF apaodckmekf2; bool flag = apaodckmekf2.PDPOGMFOACI; return; } int num2 = 0; instance.enabled = num2 != 0; } // Token: 0x060047FF RID: 18431 RVA: 0x00111CA8 File Offset: 0x0010FEA8 [Token(Token = "0x60047FF")] [Address(RVA = "0x1959C60", Offset = "0x1958660", VA = "0x181959C60")] public NewBadgeImageImpl() { } } // Token: 0x02000B46 RID: 2886 [Token(Token = "0x2000B46")] [Serializable] private class OutfitImposterRenderImpl : ControllerImplementation { // Token: 0x17000CB2 RID: 3250 // (get) Token: 0x06004800 RID: 18432 RVA: 0x00111CBC File Offset: 0x0010FEBC [Token(Token = "0x17000CB2")] private AvatarItem? CurrentAvatarItem { [Token(Token = "0x6004800")] [Address(RVA = "0x195C4E0", Offset = "0x195AEE0", VA = "0x18195C4E0")] get { APAODCKMEKF apaodckmekf; if (NetworkedSingletonMonoBehaviour.ONCPNMDGGKG != 0 && apaodckmekf != 0) { AvatarItem k__BackingField = apaodckmekf.k__BackingField; } int num = 0; this.k__BackingField = num; throw new NullReferenceException(); } } // Token: 0x17000CB3 RID: 3251 // (get) Token: 0x06004801 RID: 18433 RVA: 0x00111CEC File Offset: 0x0010FEEC [Token(Token = "0x17000CB3")] private ColorVault.ColorToGuid CurrentAvatarItemHairColor { [Token(Token = "0x6004801")] [Address(RVA = "0x195C330", Offset = "0x195AD30", VA = "0x18195C330")] get { int num = 0; if (num != 0) { } if (0 != 0) { } ColorVault.ColorToGuid colorToGuid; return colorToGuid; } } // Token: 0x06004802 RID: 18434 RVA: 0x00111D10 File Offset: 0x0010FF10 [Token(Token = "0x6004802")] [Address(RVA = "0x195BFB0", Offset = "0x195A9B0", VA = "0x18195BFB0", Slot = "22")] protected override void OFFLOPLJBBG() { base.OFFLOPLJBBG(); ActionEvent localPlayerCreatedEvent = Player.LocalPlayerCreatedEvent; Action action = new Action(this.PBNBLKMLMAD); Player.LocalPlayerCreatedEvent = localPlayerCreatedEvent + action; } // Token: 0x06004803 RID: 18435 RVA: 0x00111D74 File Offset: 0x0010FF74 [Token(Token = "0x6004803")] [Address(RVA = "0x195BD20", Offset = "0x195A720", VA = "0x18195BD20")] protected void PBNBLKMLMAD() { OutfitRenderSetup outfitRenderSetup = this.outfitRenderPrefab; float z = this.ArbitraryOutfitImposterSpawnPosition.z; Quaternion identity = Quaternion.identity; OutfitRenderSetup outfitRenderSetup2; this.outfitRenderInstance = outfitRenderSetup2; this.BMDKACIAHIK(); bool subscribeToDefaultModelEvents = ((MIGKLLCFKNJ)this).OFMCMEJOOJN; } // Token: 0x06004804 RID: 18436 RVA: 0x00111DB0 File Offset: 0x0010FFB0 [Token(Token = "0x6004804")] [Address(RVA = "0x195BE20", Offset = "0x195A820", VA = "0x18195BE20", Slot = "25")] protected override void MDDAPCCABNK() { base.MDDAPCCABNK(); OutfitRenderSetup outfitRenderSetup = this.outfitRenderInstance; int num = 0; if (outfitRenderSetup != num) { global::UnityEngine.Object.Destroy(this.outfitRenderInstance.gameObject); } RenderTexture renderTexture = this.renderTexture; this.outfitRenderInstance = (ulong)0L; int num2 = 0; if (renderTexture != num2) { SafeDestroy.Asset(this.renderTexture); } ActionEvent localPlayerCreatedEvent = Player.LocalPlayerCreatedEvent; Action action = new Action(this.PBNBLKMLMAD); Player.LocalPlayerCreatedEvent = localPlayerCreatedEvent - action; } // Token: 0x06004805 RID: 18437 RVA: 0x00111E38 File Offset: 0x00110038 [Token(Token = "0x6004805")] [Address(RVA = "0x195C1C0", Offset = "0x195ABC0", VA = "0x18195C1C0", Slot = "23")] protected override void PPAOALHOODL() { base.PPAOALHOODL(); RenderTexture renderTexture = this.renderTexture; int num = 0; if (renderTexture == num) { RenderTexture renderTexture2 = JODFIHBJHJM.JGHJHCOJJEH(180, 180); RawImage rawImage = this.rawImage; this.renderTexture = renderTexture2; rawImage.texture = renderTexture2; } } // Token: 0x06004806 RID: 18438 RVA: 0x00111E8C File Offset: 0x0011008C [Token(Token = "0x6004806")] [Address(RVA = "0x195BBB0", Offset = "0x195A5B0", VA = "0x18195BBB0", Slot = "27")] protected override void DMAHGBLDMFA() { bool flag; if (!flag) { OutfitRenderSetup outfitRenderSetup = this.outfitRenderInstance; int num = 0; if (!(outfitRenderSetup == num)) { AvatarItem? avatarItem = this.lastDrawnAvatarItem; bool flag2; if (!flag2) { ColorVault.ColorToGuid colorToGuid = this.lastDrawnHairColor; ColorVault.ColorToGuid currentAvatarItemHairColor = this.CurrentAvatarItemHairColor; if (!ColorVault.ColorToGuid.BDBLGMKABNK(colorToGuid, currentAvatarItemHairColor)) { return; } } this.BMDKACIAHIK(); } } } // Token: 0x06004807 RID: 18439 RVA: 0x00111EE0 File Offset: 0x001100E0 [Token(Token = "0x6004807")] [Address(RVA = "0x195BD20", Offset = "0x195A720", VA = "0x18195BD20")] private void EMIBAIPHEOD() { OutfitRenderSetup outfitRenderSetup = this.outfitRenderPrefab; float z = this.ArbitraryOutfitImposterSpawnPosition.z; Quaternion identity = Quaternion.identity; OutfitRenderSetup outfitRenderSetup2; this.outfitRenderInstance = outfitRenderSetup2; this.BMDKACIAHIK(); bool subscribeToDefaultModelEvents = ((MIGKLLCFKNJ)this).OFMCMEJOOJN; } // Token: 0x06004808 RID: 18440 RVA: 0x00111F1C File Offset: 0x0011011C [Token(Token = "0x6004808")] [Address(RVA = "0x195BA10", Offset = "0x195A410", VA = "0x18195BA10")] private void BMDKACIAHIK() { ColorVault.ColorToGuid currentAvatarItemHairColor = this.CurrentAvatarItemHairColor; AvatarItem? avatarItemToRender; AvatarItem? avatarItemToRender2 = avatarItemToRender; ColorVault.ColorToGuid avatarHairColorToRender = currentAvatarItemHairColor; RawImage rawImage = this.rawImage; this.lastDrawnAvatarItem = avatarItemToRender2; ColorVault.ColorToGuid avatarHairColorToRender2 = avatarHairColorToRender; this.lastDrawnHairColor = avatarHairColorToRender2; int num = 0; rawImage.enabled = num != 0; OutfitRenderSetup outfitRenderSetup = this.outfitRenderInstance; Action action = delegate { }; } // Token: 0x06004809 RID: 18441 RVA: 0x00111F94 File Offset: 0x00110194 [Token(Token = "0x6004809")] [Address(RVA = "0x195C290", Offset = "0x195AC90", VA = "0x18195C290")] public OutfitImposterRenderImpl() { float z = Vector3.down.z; Vector3 vector; float z2 = vector.z; this.ArbitraryOutfitImposterSpawnPosition.z = z2; base..ctor(); } // Token: 0x0600480A RID: 18442 RVA: 0x00111FC8 File Offset: 0x001101C8 [Token(Token = "0x600480A")] [Address(RVA = "0x195B980", Offset = "0x195A380", VA = "0x18195B980")] [CompilerGenerated] private void BDIJLOJMNOB() { RawImage rawImage = this.rawImage; this.queuedRenderPromise = (ulong)0L; int num = 0; if (rawImage != num) { this.rawImage.enabled = true; } } // Token: 0x040036B8 RID: 14008 [Token(Token = "0x40036B8")] private const int OUTFIT_RENDER_WIDTH = 180; // Token: 0x040036B9 RID: 14009 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40036B9")] private Vector3 ArbitraryOutfitImposterSpawnPosition; // Token: 0x040036BA RID: 14010 [global::Cpp2IlInjected.FieldOffset(Offset = "0x40")] [Token(Token = "0x40036BA")] [SerializeField] [DDPIINEJFMD(JIBDPHMGEGO.Self, false, false)] private RawImage rawImage; // Token: 0x040036BB RID: 14011 [global::Cpp2IlInjected.FieldOffset(Offset = "0x48")] [Token(Token = "0x40036BB")] [SerializeField] private OutfitRenderSetup outfitRenderPrefab; // Token: 0x040036BC RID: 14012 [global::Cpp2IlInjected.FieldOffset(Offset = "0x50")] [Token(Token = "0x40036BC")] [SerializeField] private ImposterRenderConfig imposterConfig; // Token: 0x040036BD RID: 14013 [global::Cpp2IlInjected.FieldOffset(Offset = "0x58")] [Token(Token = "0x40036BD")] [SerializeField] [Tooltip("Outfit renders are staggered. Queue items you are wearing sooner than the long grid of clothes you own.")] private bool prioritiseThisRenderInQueue; // Token: 0x040036BE RID: 14014 [global::Cpp2IlInjected.FieldOffset(Offset = "0x60")] [Token(Token = "0x40036BE")] private OutfitRenderSetup outfitRenderInstance; // Token: 0x040036BF RID: 14015 [global::Cpp2IlInjected.FieldOffset(Offset = "0x68")] [Token(Token = "0x40036BF")] private AvatarItem? lastDrawnAvatarItem; // Token: 0x040036C0 RID: 14016 [global::Cpp2IlInjected.FieldOffset(Offset = "0x80")] [Token(Token = "0x40036C0")] private ColorVault.ColorToGuid lastDrawnHairColor; // Token: 0x040036C1 RID: 14017 [global::Cpp2IlInjected.FieldOffset(Offset = "0x88")] [Token(Token = "0x40036C1")] private RenderTexture renderTexture; // Token: 0x040036C2 RID: 14018 [global::Cpp2IlInjected.FieldOffset(Offset = "0x90")] [Token(Token = "0x40036C2")] private CancelablePromise queuedRenderPromise; // Token: 0x02000B47 RID: 2887 [Token(Token = "0x2000B47")] [CompilerGenerated] private sealed class FJMBLPKONGC { // Token: 0x0600480B RID: 18443 RVA: 0x0003C3EA File Offset: 0x0003A5EA [Token(Token = "0x600480B")] [Address(RVA = "0x3C1670", Offset = "0x3C0070", VA = "0x1803C1670")] public FJMBLPKONGC() { } // Token: 0x0600480C RID: 18444 RVA: 0x0003C3EA File Offset: 0x0003A5EA [Token(Token = "0x600480C")] [Address(RVA = "0x1958620", Offset = "0x1957020", VA = "0x181958620")] internal void b__0() { } // Token: 0x040036C3 RID: 14019 [global::Cpp2IlInjected.FieldOffset(Offset = "0x10")] [Token(Token = "0x40036C3")] public AvatarItem? avatarItemToRender; // Token: 0x040036C4 RID: 14020 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40036C4")] public ColorVault.ColorToGuid avatarHairColorToRender; // Token: 0x040036C5 RID: 14021 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40036C5")] public OutfitItemModelController.OutfitImposterRenderImpl <>4__this; } } // Token: 0x02000B48 RID: 2888 [Token(Token = "0x2000B48")] [Serializable] private class ToggleEquipImpl : ToggleControllerImpl { // Token: 0x0600480D RID: 18445 RVA: 0x00112004 File Offset: 0x00110204 [Token(Token = "0x600480D")] [Address(RVA = "0x1969B40", Offset = "0x1968540", VA = "0x181969B40", Slot = "27")] protected override void DMAHGBLDMFA() { } // Token: 0x0600480E RID: 18446 RVA: 0x00112018 File Offset: 0x00110218 [Token(Token = "0x600480E")] [Address(RVA = "0x1969B90", Offset = "0x1968590", VA = "0x181969B90", Slot = "29")] protected override void IKNMALNFPII() { } // Token: 0x0600480F RID: 18447 RVA: 0x0011202C File Offset: 0x0011022C [Token(Token = "0x600480F")] [Address(RVA = "0x1969BD0", Offset = "0x19685D0", VA = "0x181969BD0")] public ToggleEquipImpl() { } } // Token: 0x02000B49 RID: 2889 [Token(Token = "0x2000B49")] [Serializable] private class ToggleConditionalImpl : ToggleControllerImpl { // Token: 0x06004810 RID: 18448 RVA: 0x00112040 File Offset: 0x00110240 [Token(Token = "0x6004810")] [Address(RVA = "0x1969A70", Offset = "0x1968470", VA = "0x181969A70", Slot = "27")] protected override void DMAHGBLDMFA() { } // Token: 0x06004811 RID: 18449 RVA: 0x00112054 File Offset: 0x00110254 [Token(Token = "0x6004811")] [Address(RVA = "0x1969AC0", Offset = "0x19684C0", VA = "0x181969AC0", Slot = "29")] protected override void IKNMALNFPII() { } // Token: 0x06004812 RID: 18450 RVA: 0x00112068 File Offset: 0x00110268 [Token(Token = "0x6004812")] [Address(RVA = "0x1969B00", Offset = "0x1968500", VA = "0x181969B00")] public ToggleConditionalImpl() { } } } }