using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Runtime.CompilerServices; using UnityEngine; using UnityEngine.Serialization; using UnityEngine.UI; // Token: 0x02000C6C RID: 3180 public class SpawnedEquipmentDrawer : MonoBehaviour { // Token: 0x0601924D RID: 102989 RVA: 0x006F4F64 File Offset: 0x006F3164 public EquipmentSpawner PJIFEAOBDBH() { return this.k__BackingField; } // Token: 0x0601924E RID: 102990 RVA: 0x006F4F6C File Offset: 0x006F316C public SpawnedEquipmentDrawer.ItemSpacingConfig ALMCBHFNLAC() { int count = this.Tools.Count; SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig = SpawnedEquipmentDrawer.IHGIFGOELMO; for (int i = this.itemSpacingConfigs.Length - 0; i >= 0; i -= 0) { SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig2 = this.itemSpacingConfigs[i]; if (itemSpacingConfig2.AtLeastItemCount < count) { itemSpacingConfig = itemSpacingConfig2; break; } } return itemSpacingConfig; } // Token: 0x0601924F RID: 102991 RVA: 0x006F4FC4 File Offset: 0x006F31C4 private static void EIGFLPLCOPA(SpawnedEquipmentDrawer KMABDJDHKEG) { foreach (SpawnedEquipmentDrawer spawnedEquipmentDrawer in SpawnedEquipmentDrawer.ALLMKOMMPFG) { if (spawnedEquipmentDrawer != KMABDJDHKEG) { spawnedEquipmentDrawer.GDECPDICLIF = false; } } } // Token: 0x17000AFD RID: 2813 // (get) Token: 0x06019250 RID: 102992 RVA: 0x006F502C File Offset: 0x006F322C // (set) Token: 0x06019251 RID: 102993 RVA: 0x006F5034 File Offset: 0x006F3234 public RecRoomAudioClip CDIHDEEHDHC { get { return this.BFKAIEJIAOL; } set { this.BFKAIEJIAOL = value; } } // Token: 0x06019252 RID: 102994 RVA: 0x006F5040 File Offset: 0x006F3240 public void CAPLJEONPHN() { for (int i = 0; i < this.Tools.Count; i++) { this.BPKJBPNMMCC[i].target = this.LOOOLGHLENI(i, this.Tools.Count); } this.SelectButton.gameObject.SetActive(this.Tools.Count > 0); this.UpdateNewIcon(); } // Token: 0x17000B00 RID: 2816 // (get) Token: 0x06019253 RID: 102995 RVA: 0x006F50B0 File Offset: 0x006F32B0 public Transform JCPFELJFMMI { get { if (this.PKKLIACLBKO == null) { this.PKKLIACLBKO = new GameObject(base.gameObject.name + "_RingCenter").transform; this.PKKLIACLBKO.SetParent(base.transform); this.PKKLIACLBKO.position = this.ringCenterTransform.position; } return this.PKKLIACLBKO; } } // Token: 0x06019254 RID: 102996 RVA: 0x006F5120 File Offset: 0x006F3320 public float CGGPANGJLAN() { return this.ALMCBHFNLAC().ItemScaleFactor; } // Token: 0x06019256 RID: 102998 RVA: 0x006F5154 File Offset: 0x006F3354 public void LOBPJMGADFH(Tool ENBMEDIFBLM) { GameObject gameObject = new GameObject(ENBMEDIFBLM.name + " ch#"); gameObject.transform.position = this.ringCenterTransform.position; gameObject.transform.rotation = this.ringCenterTransform.rotation; gameObject.transform.SetParent(this.JCPFELJFMMI, false); DrawerEquipmentContainer drawerEquipmentContainer = gameObject.AddComponent(); drawerEquipmentContainer.ONFPPLOKFEK(ENBMEDIFBLM, this); this.BPKJBPNMMCC.Add(drawerEquipmentContainer); ENBMEDIFBLM.transform.localPosition = Vector3.zero; ENBMEDIFBLM.transform.localRotation = Quaternion.identity; ENBMEDIFBLM.transform.SetParent(gameObject.transform, false); ENBMEDIFBLM.GEONLHPMMPG.CNPNIMCBKFC += this.FLPMMIPDFJM; this.Tools.Add(ENBMEDIFBLM); } // Token: 0x06019257 RID: 102999 RVA: 0x006F5228 File Offset: 0x006F3428 protected void Awake() { this.Tools = new List(); this.BPKJBPNMMCC = new List(); if (this.ringCenterTransform == null) { this.ringCenterTransform = base.transform; } if (this.DrawerInterpolator != null && this.SelectButton != null) { this.FIMFENDOIPA = this.DrawerInterpolator.transform.position; this.GILJGEFFFAL = this.SelectButton.transform.position - this.DrawerInterpolator.transform.position; } SpawnedEquipmentDrawer.ALLMKOMMPFG.Add(this); } // Token: 0x06019258 RID: 103000 RVA: 0x006F52D8 File Offset: 0x006F34D8 public void EPGKNEGLPIA(bool NOBAPCOKFIL) { if (this.JIDAGCCOGIP != NOBAPCOKFIL) { if (NOBAPCOKFIL && this.Tools.Count == 0) { return; } this.JIDAGCCOGIP = NOBAPCOKFIL; if (this.DrawerInterpolator != null) { this.DrawerInterpolator.KIJCBJAJPID = this.FIMFENDOIPA + ((!this.JIDAGCCOGIP) ? Vector3.zero : this.DrawerOpenOffset); } if (this.JIDAGCCOGIP) { SpawnedEquipmentDrawer.SelectedDrawer = this; SpawnedEquipmentDrawer.EIGFLPLCOPA(this); base.transform.rotation = Quaternion.identity; this.CDHAFPILAFF = base.StartCoroutine(this.BFFDFEGACME()); } else { if (this.CDHAFPILAFF != null) { base.StopCoroutine(this.CDHAFPILAFF); } foreach (DrawerEquipmentContainer drawerEquipmentContainer in this.BPKJBPNMMCC) { drawerEquipmentContainer.CHDJMJHDNHD((DrawerEquipmentContainer.COONNJPGPJK)6); } } IEnumerable allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG; if (SpawnedEquipmentDrawer.DINNJGHCFHI == null) { SpawnedEquipmentDrawer.DINNJGHCFHI = new Func(SpawnedEquipmentDrawer.EHGLPOGHEOK); } SpawnedEquipmentDrawer.DrawersOpen = allmkommpfg.Any(SpawnedEquipmentDrawer.DINNJGHCFHI); if (!SpawnedEquipmentDrawer.DrawersOpen) { SpawnedEquipmentDrawer.SelectedDrawer = null; } if (this.DrawerSelected != null) { this.DrawerSelected(this.JIDAGCCOGIP); } } } // Token: 0x06019259 RID: 103001 RVA: 0x006F5450 File Offset: 0x006F3650 public RecRoomAudioClip CCHFOPPMCHK() { return this.BFKAIEJIAOL; } // Token: 0x0601925A RID: 103002 RVA: 0x006F5458 File Offset: 0x006F3658 private static void GJNADCJELLK(SpawnedEquipmentDrawer KMABDJDHKEG) { foreach (SpawnedEquipmentDrawer spawnedEquipmentDrawer in SpawnedEquipmentDrawer.ALLMKOMMPFG) { if (spawnedEquipmentDrawer != KMABDJDHKEG) { spawnedEquipmentDrawer.GDECPDICLIF = true; } } } // Token: 0x0601925B RID: 103003 RVA: 0x006F54C0 File Offset: 0x006F36C0 protected void OnDestroy() { SpawnedEquipmentDrawer.ALLMKOMMPFG.Remove(this); } // Token: 0x0601925C RID: 103004 RVA: 0x006F54D0 File Offset: 0x006F36D0 public void PHNKDJCAAKO(PlayerSpawnedEquipment OIOHMCMLDEJ, bool PPFJCJAPIGH) { this.UpdateNewIcon(); } // Token: 0x0601925D RID: 103005 RVA: 0x006F54D8 File Offset: 0x006F36D8 public DrawerEquipmentContainer.KKFICDABMCF LOOOLGHLENI(int DMPGHHGCLFK, int IKNLMNFOPEE) { int num = IKNLMNFOPEE / this.ALMCBHFNLAC().MaxItemsPerRing; float num2 = Mathf.Clamp((float)IKNLMNFOPEE / (float)this.PDGKGGFFBEK.MaxItemsPerRing, 983f, 943f); float num3 = Mathf.Lerp(this.PNCLEJHEONG().MinItemCircleRadius, this.PNCLEJHEONG().MaxItemCircleRadius, num2); int num4 = DMPGHHGCLFK / this.ALMCBHFNLAC().MaxItemsPerRing; float num5 = (float)((-136 - this.frontGapDegrees) / this.ALMCBHFNLAC().MaxItemsPerRing); float num6 = (float)(DMPGHHGCLFK % this.ALMCBHFNLAC().MaxItemsPerRing) * num5 + num5 * 1530f + (float)this.frontGapDegrees / 1804f; Quaternion quaternion = Quaternion.AngleAxis(num6, Vector3.up); int num7 = num / 4; int num8 = num4 - num7; Vector3 vector = Vector3.up * (this.PNCLEJHEONG().RingHeightOffset * (float)num8); Vector3 vector2 = this.ringCenterTransform.position + quaternion * (base.transform.forward * num3) + vector; Vector3 vector3 = this.JCPFELJFMMI.InverseTransformPoint(vector2); Vector3 vector4 = this.ringCenterTransform.position - vector2; Quaternion quaternion2 = Quaternion.LookRotation(vector4); return new DrawerEquipmentContainer.KKFICDABMCF { MFKJLFAOPOL = vector3, IJGPPOIJDKO = quaternion2, NGIMKAPNGDN = num6, DNAIGDPNOEK = num3 }; } // Token: 0x0601925E RID: 103006 RVA: 0x006F5640 File Offset: 0x006F3840 public void GDJDPHOPJNH(bool NOBAPCOKFIL) { if (this.JIDAGCCOGIP != NOBAPCOKFIL) { if (NOBAPCOKFIL && this.Tools.Count == 0) { return; } this.JIDAGCCOGIP = NOBAPCOKFIL; if (this.DrawerInterpolator != null) { this.DrawerInterpolator.KIJCBJAJPID = this.FIMFENDOIPA + ((!this.JIDAGCCOGIP) ? Vector3.zero : this.DrawerOpenOffset); } if (this.JIDAGCCOGIP) { SpawnedEquipmentDrawer.SelectedDrawer = this; SpawnedEquipmentDrawer.GJNADCJELLK(this); base.transform.rotation = Quaternion.identity; this.CDHAFPILAFF = base.StartCoroutine(this.BFFDFEGACME()); } else { if (this.CDHAFPILAFF != null) { base.StopCoroutine(this.CDHAFPILAFF); } foreach (DrawerEquipmentContainer drawerEquipmentContainer in this.BPKJBPNMMCC) { drawerEquipmentContainer.FBBMOMHACLA = (DrawerEquipmentContainer.COONNJPGPJK)4; } } IEnumerable allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG; if (SpawnedEquipmentDrawer.DINNJGHCFHI == null) { SpawnedEquipmentDrawer.DINNJGHCFHI = new Func(SpawnedEquipmentDrawer.EHGLPOGHEOK); } SpawnedEquipmentDrawer.DrawersOpen = allmkommpfg.Any(SpawnedEquipmentDrawer.DINNJGHCFHI); if (!SpawnedEquipmentDrawer.DrawersOpen) { SpawnedEquipmentDrawer.SelectedDrawer = null; } if (this.DrawerSelected != null) { this.DrawerSelected(this.JIDAGCCOGIP); } } } // Token: 0x0601925F RID: 103007 RVA: 0x006F57B8 File Offset: 0x006F39B8 public EquipmentSpawner EDLILNHHAFP() { return this.k__BackingField; } // Token: 0x06019260 RID: 103008 RVA: 0x006F57C0 File Offset: 0x006F39C0 private void IGHIOJLENPC() { Quaternion quaternion = Quaternion.AngleAxis((float)(this.frontGapDegrees / 6), Vector3.up); Quaternion quaternion2 = Quaternion.AngleAxis((float)(-(float)(this.frontGapDegrees / 5)), Vector3.up); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion * (base.transform.forward * this.PDGKGGFFBEK.MaxItemCircleRadius), Color.green); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion2 * (base.transform.forward * this.PDGKGGFFBEK.MaxItemCircleRadius), Color.green); Gizmos.DrawWireSphere(this.ringCenterTransform.position, this.PDGKGGFFBEK.MaxItemCircleRadius); } // Token: 0x17000B01 RID: 2817 // (get) Token: 0x06019261 RID: 103009 RVA: 0x006F58A0 File Offset: 0x006F3AA0 // (set) Token: 0x06019277 RID: 103031 RVA: 0x006F6238 File Offset: 0x006F4438 public EquipmentSpawner FJPCLANNPOK { get; set; } // Token: 0x17000AFE RID: 2814 // (get) Token: 0x06019262 RID: 103010 RVA: 0x006F58A8 File Offset: 0x006F3AA8 // (set) Token: 0x0601927C RID: 103036 RVA: 0x006F63C4 File Offset: 0x006F45C4 public bool GDECPDICLIF { get { return this.JIDAGCCOGIP; } set { if (this.JIDAGCCOGIP != value) { if (value && this.Tools.Count == 0) { return; } this.JIDAGCCOGIP = value; if (this.DrawerInterpolator != null) { this.DrawerInterpolator.KIJCBJAJPID = this.FIMFENDOIPA + ((!this.JIDAGCCOGIP) ? Vector3.zero : this.DrawerOpenOffset); } if (this.JIDAGCCOGIP) { SpawnedEquipmentDrawer.SelectedDrawer = this; SpawnedEquipmentDrawer.EIGFLPLCOPA(this); base.transform.rotation = Quaternion.identity; this.CDHAFPILAFF = base.StartCoroutine(this.BFFDFEGACME()); } else { if (this.CDHAFPILAFF != null) { base.StopCoroutine(this.CDHAFPILAFF); } foreach (DrawerEquipmentContainer drawerEquipmentContainer in this.BPKJBPNMMCC) { drawerEquipmentContainer.FBBMOMHACLA = DrawerEquipmentContainer.COONNJPGPJK.AnimatingOut; } } IEnumerable allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG; if (SpawnedEquipmentDrawer.DINNJGHCFHI == null) { SpawnedEquipmentDrawer.DINNJGHCFHI = new Func(SpawnedEquipmentDrawer.POPMJKBGPCG); } SpawnedEquipmentDrawer.DrawersOpen = allmkommpfg.Any(SpawnedEquipmentDrawer.DINNJGHCFHI); if (!SpawnedEquipmentDrawer.DrawersOpen) { SpawnedEquipmentDrawer.SelectedDrawer = null; } if (this.DrawerSelected != null) { this.DrawerSelected(this.JIDAGCCOGIP); } } } } // Token: 0x06019263 RID: 103011 RVA: 0x006F58B0 File Offset: 0x006F3AB0 protected void JHNGPHJGFCF() { this.Tools = new List(); this.BPKJBPNMMCC = new List(); if (this.ringCenterTransform == null) { this.ringCenterTransform = base.transform; } if (this.DrawerInterpolator != null && this.SelectButton != null) { this.FIMFENDOIPA = this.DrawerInterpolator.transform.position; this.GILJGEFFFAL = this.SelectButton.transform.position - this.DrawerInterpolator.transform.position; } SpawnedEquipmentDrawer.ALLMKOMMPFG.Add(this); } // Token: 0x06019264 RID: 103012 RVA: 0x006F5960 File Offset: 0x006F3B60 public float JHHFJHBIGFB() { return this.ALMCBHFNLAC().ItemScaleFactor; } // Token: 0x06019265 RID: 103013 RVA: 0x006F5970 File Offset: 0x006F3B70 public void OOIKNCPENMA(Tool ENBMEDIFBLM) { GameObject gameObject = new GameObject(ENBMEDIFBLM.name + "_Green_Col"); gameObject.transform.position = this.ringCenterTransform.position; gameObject.transform.rotation = this.ringCenterTransform.rotation; gameObject.transform.SetParent(this.JCPFELJFMMI, true); DrawerEquipmentContainer drawerEquipmentContainer = gameObject.AddComponent(); drawerEquipmentContainer.BPDCIHCCNOG(ENBMEDIFBLM, this); this.BPKJBPNMMCC.Add(drawerEquipmentContainer); ENBMEDIFBLM.transform.localPosition = Vector3.zero; ENBMEDIFBLM.transform.localRotation = Quaternion.identity; ENBMEDIFBLM.transform.SetParent(gameObject.transform, false); ENBMEDIFBLM.GEONLHPMMPG.KPODJEEDMGD(new Action(this.OnToolIsNewChanged)); this.Tools.Add(ENBMEDIFBLM); } // Token: 0x06019266 RID: 103014 RVA: 0x006F5A44 File Offset: 0x006F3C44 public void UpdateNewIcon() { if (this.NewIcon != null) { bool flag = false; foreach (Tool tool in this.Tools) { bool flag2 = tool.GEONLHPMMPG != null && tool.GEONLHPMMPG.MLMPFBLGELC; if (flag2) { flag = true; break; } } this.NewIcon.gameObject.SetActive(flag); } } // Token: 0x06019267 RID: 103015 RVA: 0x006F5AF0 File Offset: 0x006F3CF0 protected void KJBPHNKFCAM() { this.Tools = new List(); this.BPKJBPNMMCC = new List(); if (this.ringCenterTransform == null) { this.ringCenterTransform = base.transform; } if (this.DrawerInterpolator != null && this.SelectButton != null) { this.FIMFENDOIPA = this.DrawerInterpolator.transform.position; this.GILJGEFFFAL = this.SelectButton.transform.position - this.DrawerInterpolator.transform.position; } SpawnedEquipmentDrawer.ALLMKOMMPFG.Add(this); } // Token: 0x06019268 RID: 103016 RVA: 0x006F5BA0 File Offset: 0x006F3DA0 public void BALNIFBMOFF(RecRoomAudioClip NOBAPCOKFIL) { this.BFKAIEJIAOL = NOBAPCOKFIL; } // Token: 0x06019269 RID: 103017 RVA: 0x006F5BAC File Offset: 0x006F3DAC public void UpdateEquipmentPlacement() { for (int i = 0; i < this.Tools.Count; i++) { this.BPKJBPNMMCC[i].target = this.GetTarget(i, this.Tools.Count); } this.SelectButton.gameObject.SetActive(this.Tools.Count > 0); this.UpdateNewIcon(); } // Token: 0x0601926A RID: 103018 RVA: 0x006F5C1C File Offset: 0x006F3E1C private IEnumerator BFFDFEGACME() { for (int i = this.BPKJBPNMMCC.Count - 1; i >= 0; i--) { this.BPKJBPNMMCC[i].FBBMOMHACLA = DrawerEquipmentContainer.COONNJPGPJK.AnimatingIn; yield return new WaitForSeconds(0.075f); } yield break; } // Token: 0x0601926B RID: 103019 RVA: 0x006F5C38 File Offset: 0x006F3E38 protected void EGFGEGEDJGN() { SpawnedEquipmentDrawer.ALLMKOMMPFG.Remove(this); } // Token: 0x0601926C RID: 103020 RVA: 0x006F5C48 File Offset: 0x006F3E48 public DrawerEquipmentContainer.KKFICDABMCF GetTarget(int DMPGHHGCLFK, int IKNLMNFOPEE) { int num = IKNLMNFOPEE / this.PDGKGGFFBEK.MaxItemsPerRing; float num2 = Mathf.Clamp((float)IKNLMNFOPEE / (float)this.PDGKGGFFBEK.MaxItemsPerRing, 0f, 1f); float num3 = Mathf.Lerp(this.PDGKGGFFBEK.MinItemCircleRadius, this.PDGKGGFFBEK.MaxItemCircleRadius, num2); int num4 = DMPGHHGCLFK / this.PDGKGGFFBEK.MaxItemsPerRing; float num5 = (float)((360 - this.frontGapDegrees) / this.PDGKGGFFBEK.MaxItemsPerRing); float num6 = (float)(DMPGHHGCLFK % this.PDGKGGFFBEK.MaxItemsPerRing) * num5 + num5 * 0.5f + (float)this.frontGapDegrees / 2f; Quaternion quaternion = Quaternion.AngleAxis(num6, Vector3.up); int num7 = num / 2; int num8 = num4 - num7; Vector3 vector = Vector3.up * (this.PDGKGGFFBEK.RingHeightOffset * (float)num8); Vector3 vector2 = this.ringCenterTransform.position + quaternion * (base.transform.forward * num3) + vector; Vector3 vector3 = this.JCPFELJFMMI.InverseTransformPoint(vector2); Vector3 vector4 = this.ringCenterTransform.position - vector2; Quaternion quaternion2 = Quaternion.LookRotation(vector4); return new DrawerEquipmentContainer.KKFICDABMCF { MFKJLFAOPOL = vector3, IJGPPOIJDKO = quaternion2, NGIMKAPNGDN = num6, DNAIGDPNOEK = num3 }; } // Token: 0x0601926D RID: 103021 RVA: 0x006F5DB0 File Offset: 0x006F3FB0 public void NELFMMKBNIA(Tool ENBMEDIFBLM) { GameObject gameObject = new GameObject(ENBMEDIFBLM.name + "PORTAL AND ELITE BOTS ONLINE"); gameObject.transform.position = this.ringCenterTransform.position; gameObject.transform.rotation = this.ringCenterTransform.rotation; gameObject.transform.SetParent(this.JCPFELJFMMI, false); DrawerEquipmentContainer drawerEquipmentContainer = gameObject.AddComponent(); drawerEquipmentContainer.BPDCIHCCNOG(ENBMEDIFBLM, this); this.BPKJBPNMMCC.Add(drawerEquipmentContainer); ENBMEDIFBLM.transform.localPosition = Vector3.zero; ENBMEDIFBLM.transform.localRotation = Quaternion.identity; ENBMEDIFBLM.transform.SetParent(gameObject.transform, true); ENBMEDIFBLM.GEONLHPMMPG.KPODJEEDMGD(new Action(this.HMACLGGAFEB)); this.Tools.Add(ENBMEDIFBLM); } // Token: 0x0601926E RID: 103022 RVA: 0x006F5E84 File Offset: 0x006F4084 public void KKCKGJLJFHF(EquipmentSpawner NOBAPCOKFIL) { this.k__BackingField = NOBAPCOKFIL; } // Token: 0x0601926F RID: 103023 RVA: 0x006F5E90 File Offset: 0x006F4090 public void HMACLGGAFEB(PlayerSpawnedEquipment OIOHMCMLDEJ, bool PPFJCJAPIGH) { this.UpdateNewIcon(); } // Token: 0x06019270 RID: 103024 RVA: 0x006F5E98 File Offset: 0x006F4098 public void FLPMMIPDFJM(PlayerSpawnedEquipment OIOHMCMLDEJ, bool PPFJCJAPIGH) { this.UpdateNewIcon(); } // Token: 0x06019271 RID: 103025 RVA: 0x006F5EA0 File Offset: 0x006F40A0 protected void LELHNBCKIEG() { this.Tools = new List(); this.BPKJBPNMMCC = new List(); if (this.ringCenterTransform == null) { this.ringCenterTransform = base.transform; } if (this.DrawerInterpolator != null && this.SelectButton != null) { this.FIMFENDOIPA = this.DrawerInterpolator.transform.position; this.GILJGEFFFAL = this.SelectButton.transform.position - this.DrawerInterpolator.transform.position; } SpawnedEquipmentDrawer.ALLMKOMMPFG.Add(this); } // Token: 0x06019272 RID: 103026 RVA: 0x006F5F50 File Offset: 0x006F4150 public void DLEGJCLGEJC() { for (int i = 1; i < this.Tools.Count; i++) { this.BPKJBPNMMCC[i].target = this.GetTarget(i, this.Tools.Count); } this.SelectButton.gameObject.SetActive(this.Tools.Count > 0); this.UpdateNewIcon(); } // Token: 0x06019273 RID: 103027 RVA: 0x006F5FC0 File Offset: 0x006F41C0 private void NNGFGDCOCCG() { Quaternion quaternion = Quaternion.AngleAxis((float)(this.frontGapDegrees / 0), Vector3.up); Quaternion quaternion2 = Quaternion.AngleAxis((float)(-(float)(this.frontGapDegrees / 6)), Vector3.up); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion * (base.transform.forward * this.ALMCBHFNLAC().MaxItemCircleRadius), Color.green); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion2 * (base.transform.forward * this.ALMCBHFNLAC().MaxItemCircleRadius), Color.green); Gizmos.DrawWireSphere(this.ringCenterTransform.position, this.PDGKGGFFBEK.MaxItemCircleRadius); } // Token: 0x06019274 RID: 103028 RVA: 0x006F60A0 File Offset: 0x006F42A0 private void OnDrawGizmosSelected() { Quaternion quaternion = Quaternion.AngleAxis((float)(this.frontGapDegrees / 2), Vector3.up); Quaternion quaternion2 = Quaternion.AngleAxis((float)(-(float)(this.frontGapDegrees / 2)), Vector3.up); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion * (base.transform.forward * this.PDGKGGFFBEK.MaxItemCircleRadius), Color.green); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion2 * (base.transform.forward * this.PDGKGGFFBEK.MaxItemCircleRadius), Color.green); Gizmos.DrawWireSphere(this.ringCenterTransform.position, this.PDGKGGFFBEK.MaxItemCircleRadius); } // Token: 0x06019275 RID: 103029 RVA: 0x006F6180 File Offset: 0x006F4380 private void LOGFBGOPLLO() { if (this.DrawerInterpolator != null && this.SelectButton != null) { this.SelectButton.transform.position = this.GILJGEFFFAL + this.DrawerInterpolator.transform.position; } if (Player.LocalPlayerExists && this.MMEEJIGAACD() && this.ODDMNJJOBKD() != null && !this.KNLOFFALMEN().DGCMPBACMKK(Player.LocalPlayer)) { this.GDJDPHOPJNH(true); } } // Token: 0x06019276 RID: 103030 RVA: 0x006F621C File Offset: 0x006F441C private IEnumerator CAOPGHCPICO() { for (i = this.BPKJBPNMMCC.Count - 1; i >= 0; i--) { this.BPKJBPNMMCC[i].FBBMOMHACLA = DrawerEquipmentContainer.COONNJPGPJK.AnimatingIn; yield return new WaitForSeconds(0.075f); } yield break; } // Token: 0x06019278 RID: 103032 RVA: 0x006F6244 File Offset: 0x006F4444 public EquipmentSpawner HAGFLKBFJKP() { return this.k__BackingField; } // Token: 0x06019279 RID: 103033 RVA: 0x006F624C File Offset: 0x006F444C [CompilerGenerated] private static bool POPMJKBGPCG(SpawnedEquipmentDrawer PAEJJFLOIEA) { return PAEJJFLOIEA.GDECPDICLIF; } // Token: 0x0601927A RID: 103034 RVA: 0x006F6254 File Offset: 0x006F4454 public DrawerEquipmentContainer.KKFICDABMCF OHDJEGGHFHG(int DMPGHHGCLFK, int IKNLMNFOPEE) { int num = IKNLMNFOPEE / this.PDGKGGFFBEK.MaxItemsPerRing; float num2 = Mathf.Clamp((float)IKNLMNFOPEE / (float)this.PNCLEJHEONG().MaxItemsPerRing, 37f, 1865f); float num3 = Mathf.Lerp(this.ALMCBHFNLAC().MinItemCircleRadius, this.ALMCBHFNLAC().MaxItemCircleRadius, num2); int num4 = DMPGHHGCLFK / this.PNCLEJHEONG().MaxItemsPerRing; float num5 = (float)((-55 - this.frontGapDegrees) / this.PDGKGGFFBEK.MaxItemsPerRing); float num6 = (float)(DMPGHHGCLFK % this.PDGKGGFFBEK.MaxItemsPerRing) * num5 + num5 * 1407f + (float)this.frontGapDegrees / 132f; Quaternion quaternion = Quaternion.AngleAxis(num6, Vector3.up); int num7 = num / 3; int num8 = num4 - num7; Vector3 vector = Vector3.up * (this.ALMCBHFNLAC().RingHeightOffset * (float)num8); Vector3 vector2 = this.ringCenterTransform.position + quaternion * (base.transform.forward * num3) + vector; Vector3 vector3 = this.JCPFELJFMMI.InverseTransformPoint(vector2); Vector3 vector4 = this.ringCenterTransform.position - vector2; Quaternion quaternion2 = Quaternion.LookRotation(vector4); return new DrawerEquipmentContainer.KKFICDABMCF { MFKJLFAOPOL = vector3, IJGPPOIJDKO = quaternion2, NGIMKAPNGDN = num6, DNAIGDPNOEK = num3 }; } // Token: 0x0601927B RID: 103035 RVA: 0x006F63BC File Offset: 0x006F45BC public EquipmentSpawner ODDMNJJOBKD() { return this.k__BackingField; } // Token: 0x17000AFB RID: 2811 // (get) Token: 0x0601927D RID: 103037 RVA: 0x006F653C File Offset: 0x006F473C public SpawnedEquipmentDrawer.ItemSpacingConfig PDGKGGFFBEK { get { int count = this.Tools.Count; SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig = SpawnedEquipmentDrawer.IHGIFGOELMO; for (int i = this.itemSpacingConfigs.Length - 1; i >= 0; i--) { SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig2 = this.itemSpacingConfigs[i]; if (itemSpacingConfig2.AtLeastItemCount < count) { itemSpacingConfig = itemSpacingConfig2; break; } } return itemSpacingConfig; } } // Token: 0x17000AFC RID: 2812 // (get) Token: 0x0601927E RID: 103038 RVA: 0x006F6594 File Offset: 0x006F4794 public float PNPDIAJILOD { get { return this.PDGKGGFFBEK.ItemScaleFactor; } } // Token: 0x0601927F RID: 103039 RVA: 0x006F65A4 File Offset: 0x006F47A4 public void AddTool(Tool ENBMEDIFBLM) { GameObject gameObject = new GameObject(ENBMEDIFBLM.name + "_Anchor"); gameObject.transform.position = this.ringCenterTransform.position; gameObject.transform.rotation = this.ringCenterTransform.rotation; gameObject.transform.SetParent(this.JCPFELJFMMI, true); DrawerEquipmentContainer drawerEquipmentContainer = gameObject.AddComponent(); drawerEquipmentContainer.Initialize(ENBMEDIFBLM, this); this.BPKJBPNMMCC.Add(drawerEquipmentContainer); ENBMEDIFBLM.transform.localPosition = Vector3.zero; ENBMEDIFBLM.transform.localRotation = Quaternion.identity; ENBMEDIFBLM.transform.SetParent(gameObject.transform, false); ENBMEDIFBLM.GEONLHPMMPG.CNPNIMCBKFC += this.OnToolIsNewChanged; this.Tools.Add(ENBMEDIFBLM); } // Token: 0x06019280 RID: 103040 RVA: 0x006F6678 File Offset: 0x006F4878 public void ALPKOGINLOK() { for (int i = 0; i < this.Tools.Count; i += 0) { this.BPKJBPNMMCC[i].target = this.GetTarget(i, this.Tools.Count); } this.SelectButton.gameObject.SetActive(this.Tools.Count > 1); this.UpdateNewIcon(); } // Token: 0x06019281 RID: 103041 RVA: 0x006F66E8 File Offset: 0x006F48E8 public RecRoomAudioClip FLLKOJCEFBM() { return this.BFKAIEJIAOL; } // Token: 0x06019283 RID: 103043 RVA: 0x006F6764 File Offset: 0x006F4964 private static bool EHGLPOGHEOK(SpawnedEquipmentDrawer PAEJJFLOIEA) { return PAEJJFLOIEA.MMEEJIGAACD(); } // Token: 0x06019284 RID: 103044 RVA: 0x006F676C File Offset: 0x006F496C public void EJJEBEDHOGE(EquipmentSpawner NOBAPCOKFIL) { this.k__BackingField = NOBAPCOKFIL; } // Token: 0x06019285 RID: 103045 RVA: 0x006F6778 File Offset: 0x006F4978 public float NICMEGJFJCH() { return this.PNCLEJHEONG().ItemScaleFactor; } // Token: 0x06019286 RID: 103046 RVA: 0x006F6788 File Offset: 0x006F4988 protected void PMLEDKFHAEJ() { SpawnedEquipmentDrawer.ALLMKOMMPFG.Remove(this); } // Token: 0x06019287 RID: 103047 RVA: 0x006F6798 File Offset: 0x006F4998 private IEnumerator OJCLJFBGLLE() { for (i = this.BPKJBPNMMCC.Count - 1; i >= 0; i--) { this.BPKJBPNMMCC[i].FBBMOMHACLA = DrawerEquipmentContainer.COONNJPGPJK.AnimatingIn; yield return new WaitForSeconds(0.075f); } yield break; } // Token: 0x06019288 RID: 103048 RVA: 0x006F67B4 File Offset: 0x006F49B4 public float FADHEGJNKLA() { return this.PNCLEJHEONG().ItemScaleFactor; } // Token: 0x06019289 RID: 103049 RVA: 0x006F67C4 File Offset: 0x006F49C4 public float DKHLMJGOIHL() { return this.PDGKGGFFBEK.ItemScaleFactor; } // Token: 0x0601928A RID: 103050 RVA: 0x006F67D4 File Offset: 0x006F49D4 private void Update() { if (this.DrawerInterpolator != null && this.SelectButton != null) { this.SelectButton.transform.position = this.GILJGEFFFAL + this.DrawerInterpolator.transform.position; } if (Player.LocalPlayerExists && this.GDECPDICLIF && this.FJPCLANNPOK != null && !this.FJPCLANNPOK.IsPlayerInChangingArea(Player.LocalPlayer)) { this.GDECPDICLIF = false; } } // Token: 0x17000AFF RID: 2815 // (get) Token: 0x0601928B RID: 103051 RVA: 0x006F6870 File Offset: 0x006F4A70 public int PDAIBMPFBOA { get { return this.Tools.Count; } } // Token: 0x0601928C RID: 103052 RVA: 0x006F6880 File Offset: 0x006F4A80 public void OnToolIsNewChanged(PlayerSpawnedEquipment OIOHMCMLDEJ, bool PPFJCJAPIGH) { this.UpdateNewIcon(); } // Token: 0x0601928D RID: 103053 RVA: 0x006F6888 File Offset: 0x006F4A88 public float AGIIJDHAMEE() { return this.ALMCBHFNLAC().ItemScaleFactor; } // Token: 0x0601928E RID: 103054 RVA: 0x006F6898 File Offset: 0x006F4A98 public EquipmentSpawner GFNJJFKKGJF() { return this.k__BackingField; } // Token: 0x0601928F RID: 103055 RVA: 0x006F68A0 File Offset: 0x006F4AA0 public void GEBNMONEMOC(RecRoomAudioClip NOBAPCOKFIL) { this.BFKAIEJIAOL = NOBAPCOKFIL; } // Token: 0x06019290 RID: 103056 RVA: 0x006F68AC File Offset: 0x006F4AAC public bool MMEEJIGAACD() { return this.JIDAGCCOGIP; } // Token: 0x06019291 RID: 103057 RVA: 0x006F68B4 File Offset: 0x006F4AB4 public void NKBMHDJKKPI(RecRoomAudioClip NOBAPCOKFIL) { this.BFKAIEJIAOL = NOBAPCOKFIL; } // Token: 0x06019292 RID: 103058 RVA: 0x006F68C0 File Offset: 0x006F4AC0 public DrawerEquipmentContainer.KKFICDABMCF KDLMOACFGFH(int DMPGHHGCLFK, int IKNLMNFOPEE) { int num = IKNLMNFOPEE / this.PDGKGGFFBEK.MaxItemsPerRing; float num2 = Mathf.Clamp((float)IKNLMNFOPEE / (float)this.PNCLEJHEONG().MaxItemsPerRing, 1379f, 33f); float num3 = Mathf.Lerp(this.PNCLEJHEONG().MinItemCircleRadius, this.PDGKGGFFBEK.MaxItemCircleRadius, num2); int num4 = DMPGHHGCLFK / this.PDGKGGFFBEK.MaxItemsPerRing; float num5 = (float)((80 - this.frontGapDegrees) / this.PDGKGGFFBEK.MaxItemsPerRing); float num6 = (float)(DMPGHHGCLFK % this.PDGKGGFFBEK.MaxItemsPerRing) * num5 + num5 * 885f + (float)this.frontGapDegrees / 1986f; Quaternion quaternion = Quaternion.AngleAxis(num6, Vector3.up); int num7 = num / 4; int num8 = num4 - num7; Vector3 vector = Vector3.up * (this.PDGKGGFFBEK.RingHeightOffset * (float)num8); Vector3 vector2 = this.ringCenterTransform.position + quaternion * (base.transform.forward * num3) + vector; Vector3 vector3 = this.JCPFELJFMMI.InverseTransformPoint(vector2); Vector3 vector4 = this.ringCenterTransform.position - vector2; Quaternion quaternion2 = Quaternion.LookRotation(vector4); return new DrawerEquipmentContainer.KKFICDABMCF { MFKJLFAOPOL = vector3, IJGPPOIJDKO = quaternion2, NGIMKAPNGDN = num6, DNAIGDPNOEK = num3 }; } // Token: 0x06019293 RID: 103059 RVA: 0x006F6A28 File Offset: 0x006F4C28 public SpawnedEquipmentDrawer.ItemSpacingConfig PNCLEJHEONG() { int count = this.Tools.Count; SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig = SpawnedEquipmentDrawer.IHGIFGOELMO; for (int i = this.itemSpacingConfigs.Length - 1; i >= 0; i -= 0) { SpawnedEquipmentDrawer.ItemSpacingConfig itemSpacingConfig2 = this.itemSpacingConfigs[i]; if (itemSpacingConfig2.AtLeastItemCount < count) { itemSpacingConfig = itemSpacingConfig2; break; } } return itemSpacingConfig; } // Token: 0x06019294 RID: 103060 RVA: 0x006F6A80 File Offset: 0x006F4C80 public EquipmentSpawner ALNDDCFJPAP() { return this.k__BackingField; } // Token: 0x06019295 RID: 103061 RVA: 0x006F6A88 File Offset: 0x006F4C88 public void JGMGDHIJNHJ(EquipmentSpawner NOBAPCOKFIL) { this.k__BackingField = NOBAPCOKFIL; } // Token: 0x06019296 RID: 103062 RVA: 0x006F6A94 File Offset: 0x006F4C94 public EquipmentSpawner KNLOFFALMEN() { return this.k__BackingField; } // Token: 0x06019297 RID: 103063 RVA: 0x006F6A9C File Offset: 0x006F4C9C public float CAJPDJEEHDN() { return this.ALMCBHFNLAC().ItemScaleFactor; } // Token: 0x06019298 RID: 103064 RVA: 0x006F6AAC File Offset: 0x006F4CAC private void PIDMKBBKLDK() { Quaternion quaternion = Quaternion.AngleAxis((float)(this.frontGapDegrees / 4), Vector3.up); Quaternion quaternion2 = Quaternion.AngleAxis((float)(-(float)(this.frontGapDegrees / 2)), Vector3.up); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion * (base.transform.forward * this.ALMCBHFNLAC().MaxItemCircleRadius), Color.green); Debug.DrawLine(this.ringCenterTransform.position, this.ringCenterTransform.position + quaternion2 * (base.transform.forward * this.ALMCBHFNLAC().MaxItemCircleRadius), Color.green); Gizmos.DrawWireSphere(this.ringCenterTransform.position, this.PDGKGGFFBEK.MaxItemCircleRadius); } // Token: 0x0400444C RID: 17484 private static List ALLMKOMMPFG = new List(); // Token: 0x0400444D RID: 17485 public static bool DrawersOpen = false; // Token: 0x0400444E RID: 17486 public static SpawnedEquipmentDrawer SelectedDrawer = null; // Token: 0x0400444F RID: 17487 public Action DrawerSelected; // Token: 0x04004450 RID: 17488 public string Name = string.Empty; // Token: 0x04004451 RID: 17489 [Tooltip("Supported outfit types for this drawer.")] public List OutfitTypes; // Token: 0x04004452 RID: 17490 [Tooltip("Supported equipment prefabs for this drawer.")] public List SupportedEquipments; // Token: 0x04004453 RID: 17491 [SerializeField] [FormerlySerializedAs("startTransform")] protected Transform ringCenterTransform; // Token: 0x04004454 RID: 17492 [Header("Drawer Item Spacing")] [Tooltip("The total front gap in degress. Items will be offset frontGapDegrees/2 on either side of center")] [SerializeField] private int frontGapDegrees = 90; // Token: 0x04004455 RID: 17493 private static SpawnedEquipmentDrawer.ItemSpacingConfig IHGIFGOELMO = new SpawnedEquipmentDrawer.ItemSpacingConfig(); // Token: 0x04004456 RID: 17494 [SerializeField] private SpawnedEquipmentDrawer.ItemSpacingConfig[] itemSpacingConfigs = new SpawnedEquipmentDrawer.ItemSpacingConfig[] { SpawnedEquipmentDrawer.IHGIFGOELMO }; // Token: 0x04004457 RID: 17495 [Header("Drawer UI")] public Button SelectButton; // Token: 0x04004458 RID: 17496 public Image NewIcon; // Token: 0x04004459 RID: 17497 public Interpolator DrawerInterpolator; // Token: 0x0400445A RID: 17498 public Vector3 DrawerOpenOffset = new Vector3(0f, 0f, -0.15f); // Token: 0x0400445B RID: 17499 private RecRoomAudioClip BFKAIEJIAOL; // Token: 0x0400445C RID: 17500 private bool JIDAGCCOGIP; // Token: 0x0400445D RID: 17501 private Coroutine CDHAFPILAFF; // Token: 0x0400445E RID: 17502 protected int LGGAMIMMGJM = -1; // Token: 0x0400445F RID: 17503 [HideInInspector] public List Tools; // Token: 0x04004460 RID: 17504 private List BPKJBPNMMCC; // Token: 0x04004461 RID: 17505 private Transform PKKLIACLBKO; // Token: 0x04004463 RID: 17507 private Vector3 FIMFENDOIPA = Vector3.zero; // Token: 0x04004464 RID: 17508 private Vector3 GILJGEFFFAL = Vector3.zero; // Token: 0x04004465 RID: 17509 [CompilerGenerated] private static Func DINNJGHCFHI; // Token: 0x02000C6D RID: 3181 [Serializable] public class ItemSpacingConfig { // Token: 0x04004466 RID: 17510 [FormerlySerializedAs("MinItems")] public int AtLeastItemCount; // Token: 0x04004467 RID: 17511 public float MinItemCircleRadius = 0.5f; // Token: 0x04004468 RID: 17512 public float MaxItemCircleRadius = 1.35f; // Token: 0x04004469 RID: 17513 public int MaxItemsPerRing = 15; // Token: 0x0400446A RID: 17514 public float RingHeightOffset = 0.7f; // Token: 0x0400446B RID: 17515 [Range(0f, 1f)] public float ItemScaleFactor = 1f; // Token: 0x0400446C RID: 17516 public float AnimateSpeed = 180f; } }