Files
Dec2017-Script-Dump/Assembly-CSharp/SpawnedEquipmentDrawer.cs
T
2026-06-04 11:42:34 +02:00

1013 lines
35 KiB
C#

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.<EMJJIDINPCD>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>();
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<Tool>();
this.BPKJBPNMMCC = new List<DrawerEquipmentContainer>();
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<SpawnedEquipmentDrawer> allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG;
if (SpawnedEquipmentDrawer.DINNJGHCFHI == null)
{
SpawnedEquipmentDrawer.DINNJGHCFHI = new Func<SpawnedEquipmentDrawer, bool>(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<SpawnedEquipmentDrawer> allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG;
if (SpawnedEquipmentDrawer.DINNJGHCFHI == null)
{
SpawnedEquipmentDrawer.DINNJGHCFHI = new Func<SpawnedEquipmentDrawer, bool>(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.<EMJJIDINPCD>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<SpawnedEquipmentDrawer> allmkommpfg = SpawnedEquipmentDrawer.ALLMKOMMPFG;
if (SpawnedEquipmentDrawer.DINNJGHCFHI == null)
{
SpawnedEquipmentDrawer.DINNJGHCFHI = new Func<SpawnedEquipmentDrawer, bool>(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<Tool>();
this.BPKJBPNMMCC = new List<DrawerEquipmentContainer>();
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>();
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<PlayerSpawnedEquipment, bool>(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<Tool>();
this.BPKJBPNMMCC = new List<DrawerEquipmentContainer>();
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>();
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<PlayerSpawnedEquipment, bool>(this.HMACLGGAFEB));
this.Tools.Add(ENBMEDIFBLM);
}
// Token: 0x0601926E RID: 103022 RVA: 0x006F5E84 File Offset: 0x006F4084
public void KKCKGJLJFHF(EquipmentSpawner NOBAPCOKFIL)
{
this.<EMJJIDINPCD>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<Tool>();
this.BPKJBPNMMCC = new List<DrawerEquipmentContainer>();
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.<EMJJIDINPCD>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.<EMJJIDINPCD>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>();
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.<EMJJIDINPCD>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.<EMJJIDINPCD>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.<EMJJIDINPCD>k__BackingField;
}
// Token: 0x06019295 RID: 103061 RVA: 0x006F6A88 File Offset: 0x006F4C88
public void JGMGDHIJNHJ(EquipmentSpawner NOBAPCOKFIL)
{
this.<EMJJIDINPCD>k__BackingField = NOBAPCOKFIL;
}
// Token: 0x06019296 RID: 103062 RVA: 0x006F6A94 File Offset: 0x006F4C94
public EquipmentSpawner KNLOFFALMEN()
{
return this.<EMJJIDINPCD>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<SpawnedEquipmentDrawer> ALLMKOMMPFG = new List<SpawnedEquipmentDrawer>();
// Token: 0x0400444D RID: 17485
public static bool DrawersOpen = false;
// Token: 0x0400444E RID: 17486
public static SpawnedEquipmentDrawer SelectedDrawer = null;
// Token: 0x0400444F RID: 17487
public Action<bool> DrawerSelected;
// Token: 0x04004450 RID: 17488
public string Name = string.Empty;
// Token: 0x04004451 RID: 17489
[Tooltip("Supported outfit types for this drawer.")]
public List<OutfitManager.AFPKFANHPHO> OutfitTypes;
// Token: 0x04004452 RID: 17490
[Tooltip("Supported equipment prefabs for this drawer.")]
public List<ToolSkinMapper> 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<Tool> Tools;
// Token: 0x04004460 RID: 17504
private List<DrawerEquipmentContainer> 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<SpawnedEquipmentDrawer, bool> 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;
}
}