using System; using System.Collections.Generic; using System.Runtime.InteropServices; using Cpp2IlInjected; using UnityEngine; namespace RecRoom.Avatar { // Token: 0x02002197 RID: 8599 [Token(Token = "0x2002197")] [ExecuteInEditMode] [RequireComponent(typeof(PlayerAvatarDisplay))] [StructLayout(3)] public class PlayerAvatarDisplayLODGroupHelper : MonoBehaviour { // Token: 0x0600ECFC RID: 60668 RVA: 0x003829CC File Offset: 0x00380BCC [Token(Token = "0x600ECFC")] [Address(RVA = "0x173A210", Offset = "0x1738C10", VA = "0x18173A210")] private void Awake() { PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay; int num = 0; if (playerAvatarDisplay != num) { PlayerAvatarDisplay playerAvatarDisplay2 = this.playerAvatarDisplay; Action action = new Action(this.IFGBDLJGNPN); playerAvatarDisplay2.HKEGDMNCKHM -= action; PlayerAvatarDisplay playerAvatarDisplay3 = this.playerAvatarDisplay; Action action2 = new Action(this.IFGBDLJGNPN); playerAvatarDisplay3.HKEGDMNCKHM += action2; } } // Token: 0x0600ECFD RID: 60669 RVA: 0x00382A2C File Offset: 0x00380C2C [Token(Token = "0x600ECFD")] [Address(RVA = "0x173A7C0", Offset = "0x17391C0", VA = "0x18173A7C0")] private void Start() { this.IFGBDLJGNPN(); } // Token: 0x0600ECFE RID: 60670 RVA: 0x00382A40 File Offset: 0x00380C40 [Token(Token = "0x600ECFE")] [Address(RVA = "0x173A700", Offset = "0x1739100", VA = "0x18173A700")] private void OnDestroy() { PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay; int num = 0; if (playerAvatarDisplay != num) { PlayerAvatarDisplay playerAvatarDisplay2 = this.playerAvatarDisplay; Action action = new Action(this.IFGBDLJGNPN); playerAvatarDisplay2.HKEGDMNCKHM -= action; } } // Token: 0x0600ECFF RID: 60671 RVA: 0x00382A84 File Offset: 0x00380C84 [Token(Token = "0x600ECFF")] [Address(RVA = "0x173A300", Offset = "0x1738D00", VA = "0x18173A300")] private void IFGBDLJGNPN() { LOD[] lods; int num3; SkinnedMeshRenderer[] currentDefaultSkinnedMeshRenderers; int length; do { PlayerAvatarDisplay playerAvatarDisplay = this.playerAvatarDisplay; int num = 0; if (playerAvatarDisplay == num) { return; } LODGroup lodgroup = this.lodGroup; int num2 = 0; if (lodgroup == num2) { return; } lods = this.lodGroup.GetLODs(); num3 = 0; if (num3 >= lods.Length) { goto IL_144; } this.MANKFOEBDIK[num3].Clear(); List list = this.MANKFOEBDIK[num3]; num3 += num3; if (PlayerAvatarDisplayLODGroupHelper.<>c.<>9__6_0 == 0) { PlayerAvatarDisplayLODGroupHelper.<>c.<>9__6_0 = delegate(Renderer r) { int num4 = 0; bool flag = r != num4; if (!flag) { return flag; } return !r.CompareTag("GeneratedLODRenderer"); }; } IEnumerable enumerable; list.AddRange(enumerable); currentDefaultSkinnedMeshRenderers = this.playerAvatarDisplay.CurrentDefaultSkinnedMeshRenderers; length = currentDefaultSkinnedMeshRenderers.Length; } while (num3 >= length); List list2 = this.MANKFOEBDIK[num3]; SkinnedMeshRenderer skinnedMeshRenderer = currentDefaultSkinnedMeshRenderers[num3]; list2.Add(skinnedMeshRenderer); SkinnedMeshRenderer[] currentVisibleInFirstPersonSkinnedMeshRenderers = this.playerAvatarDisplay.CurrentVisibleInFirstPersonSkinnedMeshRenderers; int length2 = currentVisibleInFirstPersonSkinnedMeshRenderers.Length; if (num3 < length2) { List list3 = this.MANKFOEBDIK[num3]; SkinnedMeshRenderer skinnedMeshRenderer2 = currentVisibleInFirstPersonSkinnedMeshRenderers[num3]; list3.Add(skinnedMeshRenderer2); } Renderer[] array = this.MANKFOEBDIK[num3].ToArray(); num3 += num3; num3++; lods[1] = array; IL_144: this.lodGroup.SetLODS(lods); } // Token: 0x0600ED00 RID: 60672 RVA: 0x00382BE8 File Offset: 0x00380DE8 [Token(Token = "0x600ED00")] [Address(RVA = "0x173A7D0", Offset = "0x17391D0", VA = "0x18173A7D0")] public PlayerAvatarDisplayLODGroupHelper() { List[] array = new List[3]; List list = new List(); if (list != 0) { } array[0] = list; List list2 = new List(); if (list2 != 0) { } array[1] = list2; List list3 = new List(); if (list3 != 0) { } array[2] = list3; this.MANKFOEBDIK = array; base..ctor(); } // Token: 0x04009D64 RID: 40292 [global::Cpp2IlInjected.FieldOffset(Offset = "0x18")] [Token(Token = "0x4009D64")] [SerializeField] private PlayerAvatarDisplay playerAvatarDisplay; // Token: 0x04009D65 RID: 40293 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x4009D65")] [SerializeField] private LODGroup lodGroup; // Token: 0x04009D66 RID: 40294 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x4009D66")] private List[] MANKFOEBDIK; } }