using System; using Photon; using RecRoom; using UnityEngine; // Token: 0x02000FA9 RID: 4009 [RequireComponent(typeof(Tool))] public abstract class ToolGroupElement : global::Photon.MonoBehaviour { // Token: 0x17000FB2 RID: 4018 // (get) Token: 0x06021829 RID: 137257 RVA: 0x00926BF8 File Offset: 0x00924DF8 // (set) Token: 0x0602182A RID: 137258 RVA: 0x00926C30 File Offset: 0x00924E30 public ToolGroup BNEGCEJGOOP { get { PhotonView photonView = PhotonView.Find(this.PJOJMJIAAAD.CPIBGJLHLBL()); return (!(photonView != null)) ? null : photonView.GetComponent(); } set { int num = ((!(value != null)) ? (-1) : value.OMNGGJICBBI.ADMBCINHJOG); this.PJOJMJIAAAD.MEAINJPIECA(num); } } // Token: 0x17000FB3 RID: 4019 // (get) Token: 0x0602182B RID: 137259 RVA: 0x00926C68 File Offset: 0x00924E68 // (set) Token: 0x0602182C RID: 137260 RVA: 0x00926C70 File Offset: 0x00924E70 public Vector3 HDMFDDFPKCC { get; protected set; } // Token: 0x17000FB4 RID: 4020 // (get) Token: 0x0602182D RID: 137261 RVA: 0x00926C7C File Offset: 0x00924E7C // (set) Token: 0x0602182E RID: 137262 RVA: 0x00926C84 File Offset: 0x00924E84 public Quaternion CELIIHLNDJL { get; protected set; } // Token: 0x17000FB5 RID: 4021 // (get) Token: 0x0602182F RID: 137263 RVA: 0x00926C90 File Offset: 0x00924E90 // (set) Token: 0x06021830 RID: 137264 RVA: 0x00926C98 File Offset: 0x00924E98 public Vector3 GAEJAKHAGMO { get; protected set; } // Token: 0x17000FB6 RID: 4022 // (get) Token: 0x06021831 RID: 137265 RVA: 0x00926CA4 File Offset: 0x00924EA4 // (set) Token: 0x06021832 RID: 137266 RVA: 0x00926CAC File Offset: 0x00924EAC public Quaternion APGDOOPELOC { get; protected set; } // Token: 0x17000FB7 RID: 4023 // (get) Token: 0x06021833 RID: 137267 RVA: 0x00926CB8 File Offset: 0x00924EB8 // (set) Token: 0x06021834 RID: 137268 RVA: 0x00926CC0 File Offset: 0x00924EC0 public Bounds AFPFMHEAKCO { get; private set; } // Token: 0x17000FB8 RID: 4024 // (get) Token: 0x06021835 RID: 137269 RVA: 0x00926CCC File Offset: 0x00924ECC public Tool BKDFLNGCINH { get { return this.tool; } } // Token: 0x17000FB9 RID: 4025 // (get) Token: 0x06021836 RID: 137270 RVA: 0x00926CD4 File Offset: 0x00924ED4 public VisibleInCamera BNHLFGMBNPM { get { return this.visibleInCamera; } } // Token: 0x17000FBA RID: 4026 // (get) Token: 0x06021837 RID: 137271 RVA: 0x00926CDC File Offset: 0x00924EDC public bool GLJLDFKHFHI { get { return this.Group != null; } } // Token: 0x17000FBB RID: 4027 // (get) Token: 0x06021838 RID: 137272 RVA: 0x00926CEC File Offset: 0x00924EEC // (set) Token: 0x06021839 RID: 137273 RVA: 0x00926CF4 File Offset: 0x00924EF4 protected ToolGroupElement PJHHKFFJHPI { get { return this.MFKBHPBEHME; } set { if (this.MFKBHPBEHME == value) { return; } if (this.MFKBHPBEHME != null) { this.MFKBHPBEHME.DisplayAddToolHighlight(null); } this.MFKBHPBEHME = value; if (this.MFKBHPBEHME != null) { this.MFKBHPBEHME.DisplayAddToolHighlight(this); } } } // Token: 0x17000FBC RID: 4028 // (get) Token: 0x0602183A RID: 137274 RVA: 0x00926D54 File Offset: 0x00924F54 // (set) Token: 0x0602183B RID: 137275 RVA: 0x00926D5C File Offset: 0x00924F5C protected ToolGroup IGADOMNHFAH { get { return this.HFPFHJKMLLL; } set { if (this.HFPFHJKMLLL == value) { return; } if (this.HFPFHJKMLLL != null) { this.HFPFHJKMLLL.DisplayAddToolHighlight(null); } this.HFPFHJKMLLL = value; if (this.HFPFHJKMLLL != null) { this.HFPFHJKMLLL.DisplayAddToolHighlight(this); } } } // Token: 0x17000FBD RID: 4029 // (get) Token: 0x0602183C RID: 137276 RVA: 0x00926DBC File Offset: 0x00924FBC // (set) Token: 0x0602183D RID: 137277 RVA: 0x00926DE0 File Offset: 0x00924FE0 public bool DIAHDNICKAI { get { return this.frontGroupAddHighlightVisual != null && this.frontGroupAddHighlightVisual.activeSelf; } set { if (this.frontGroupAddHighlightVisual != null) { this.frontGroupAddHighlightVisual.SetActive(value); } } } // Token: 0x17000FBE RID: 4030 // (get) Token: 0x0602183E RID: 137278 RVA: 0x00926E00 File Offset: 0x00925000 // (set) Token: 0x0602183F RID: 137279 RVA: 0x00926E24 File Offset: 0x00925024 public bool MJGKJLJJMJP { get { return this.backGroupAddHighlightVisual != null && this.backGroupAddHighlightVisual.activeSelf; } set { if (this.backGroupAddHighlightVisual != null) { this.backGroupAddHighlightVisual.SetActive(value); } } } // Token: 0x17000FBF RID: 4031 // (get) Token: 0x06021840 RID: 137280 RVA: 0x00926E44 File Offset: 0x00925044 protected GroupSearch FJEBNIMKBAA { get { return (!this.BKDFLNGCINH.OHGPCMJMFGC || !(this.heldSearchCollider != null)) ? this.defaultSearchCollider : this.heldSearchCollider; } } // Token: 0x17000FC0 RID: 4032 // (get) Token: 0x06021841 RID: 137281 protected abstract string PKPIMDKNHFD { get; } // Token: 0x06021842 RID: 137282 RVA: 0x00926E78 File Offset: 0x00925078 protected override void Awake() { base.Awake(); this.HDMFDDFPKCC = Vector3.zero; this.CELIIHLNDJL = Quaternion.identity; this.DisplayAddToolHighlight(null); this.BKDFLNGCINH.NIIJCJLOFLI += this.EELLGMIIMDA; this.BKDFLNGCINH.PLPIAOHJBOB += this.NIPCADLOCJP; this.BKDFLNGCINH.HIOGNMNKOEA += this.BLGAKDEIDJD; this.BKDFLNGCINH.NEBMINOMJIB += this.POMFKCNJHJD; this.BKDFLNGCINH.CustomSelectionForwarding = new Tool.FLFLGPHIMIM(this.ILOMLBKEIAL); } // Token: 0x06021843 RID: 137283 RVA: 0x00926F1C File Offset: 0x0092511C protected virtual void Start() { Quaternion rotation = base.transform.rotation; base.transform.rotation = Quaternion.identity; Bounds colliderBounds = this.BKDFLNGCINH.OIFMPLDILLP; this.AFPFMHEAKCO = new Bounds(base.transform.InverseTransformPoint(colliderBounds.center), colliderBounds.size); base.transform.rotation = rotation; this.BKDFLNGCINH.CADPGMLHFGH.DFCABCNHHOD += this.AHOHOOLFGNE; if (this.frontGroupAddHighlightVisual != null) { Renderer[] array = this.frontGroupAddHighlightVisual.GetComponentsInChildren(); for (int i = 0; i < array.Length; i++) { this.BKDFLNGCINH.TryRemoveRenderer(array[i]); } } if (this.backGroupAddHighlightVisual != null) { Renderer[] array = this.backGroupAddHighlightVisual.GetComponentsInChildren(); for (int j = 0; j < array.Length; j++) { this.BKDFLNGCINH.TryRemoveRenderer(array[j]); } } } // Token: 0x06021844 RID: 137284 RVA: 0x00927024 File Offset: 0x00925224 protected override void OnDestroy() { if (this.GLJLDFKHFHI && this.Group.BHCCHBHNHCG) { this.Group.AuthorityRemoveChild(this); } this.BKDFLNGCINH.NIIJCJLOFLI -= this.EELLGMIIMDA; this.BKDFLNGCINH.PLPIAOHJBOB -= this.NIPCADLOCJP; this.BKDFLNGCINH.HIOGNMNKOEA -= this.BLGAKDEIDJD; this.BKDFLNGCINH.NEBMINOMJIB -= this.POMFKCNJHJD; this.BKDFLNGCINH.CADPGMLHFGH.DFCABCNHHOD -= this.AHOHOOLFGNE; base.OnDestroy(); } // Token: 0x06021845 RID: 137285 RVA: 0x009270D8 File Offset: 0x009252D8 public virtual bool CanAddTool(ToolGroupElement ENBMEDIFBLM) { return true; } // Token: 0x06021846 RID: 137286 RVA: 0x009270DC File Offset: 0x009252DC protected virtual void Update() { this.CLMEBOLMGMO(); if (!this.BKDFLNGCINH.OHGPCMJMFGC && (this.DIAHDNICKAI || this.MJGKJLJJMJP)) { this.DIAHDNICKAI = false; this.MJGKJLJJMJP = false; } } // Token: 0x06021847 RID: 137287 RVA: 0x00927118 File Offset: 0x00925318 public void UpdateGroupLayout(Vector3 MFKJLFAOPOL, Quaternion OFANELJBNKP, Vector3 JDLNMKNOIEA, Quaternion AJFJFJGOIPN) { if (this.GLJLDFKHFHI) { this.HDMFDDFPKCC = MFKJLFAOPOL; this.CELIIHLNDJL = OFANELJBNKP; this.GAEJAKHAGMO = JDLNMKNOIEA; this.APGDOOPELOC = AJFJFJGOIPN; this.BKDFLNGCINH.CADPGMLHFGH.Pickup(this.Group.BKDFLNGCINH.transform, this.HDMFDDFPKCC, this.CELIIHLNDJL); } } // Token: 0x06021848 RID: 137288 RVA: 0x0092717C File Offset: 0x0092537C private void EELLGMIIMDA(Tool ENBMEDIFBLM) { if (this.GLJLDFKHFHI) { if (!this.Group.BHCCHBHNHCG && ENBMEDIFBLM.CAAOEAAJAIL.NHDDPGADJPJ) { this.Group.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI); } ToolGroup group = this.Group; this.Group.AuthorityRemoveChild(this); if (group.LMMPDKCAKHN == 0) { group.AuthorityDestroy(); } } } // Token: 0x06021849 RID: 137289 RVA: 0x009271F0 File Offset: 0x009253F0 private void AHOHOOLFGNE() { } // Token: 0x0602184A RID: 137290 RVA: 0x009271F4 File Offset: 0x009253F4 private void NIPCADLOCJP(Tool ENBMEDIFBLM) { bool flag = this.GLJLDFKHFHI && !ENBMEDIFBLM.CAAOEAAJAIL.NHDDPGADJPJ; if (flag) { this.UpdateGroupLayout(this.HDMFDDFPKCC, this.CELIIHLNDJL, this.GAEJAKHAGMO, this.APGDOOPELOC); } this.JHBMICMJHCL(); } // Token: 0x0602184B RID: 137291 RVA: 0x00927248 File Offset: 0x00925448 private void CLMEBOLMGMO() { if (this.GLJLDFKHFHI || !base.BHCCHBHNHCG) { this.PJHHKFFJHPI = null; this.IGADOMNHFAH = null; return; } this.PJHHKFFJHPI = this.FJEBNIMKBAA.FindGroupableTool(this); if (this.PJHHKFFJHPI != null) { this.IGADOMNHFAH = null; return; } this.IGADOMNHFAH = this.FJEBNIMKBAA.FindGroup(this, null); } // Token: 0x0602184C RID: 137292 RVA: 0x009272B8 File Offset: 0x009254B8 protected void JHBMICMJHCL() { if (base.BHCCHBHNHCG) { if (this.IGADOMNHFAH != null) { if (!this.IGADOMNHFAH.BHCCHBHNHCG) { this.IGADOMNHFAH.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI); } this.IGADOMNHFAH.AuthorityAddChild(this); this.IGADOMNHFAH = null; } else if (this.PJHHKFFJHPI != null) { ToolGroup toolGroup = this.PJHHKFFJHPI.CreateNewGroup(); if (this.PJHHKFFJHPI.PJHHKFFJHPI == this) { this.PJHHKFFJHPI.PJHHKFFJHPI = null; } toolGroup.AuthorityAddChild(this.PJHHKFFJHPI); toolGroup.AuthorityAddChild(this); this.PJHHKFFJHPI = null; } } } // Token: 0x0602184D RID: 137293 RVA: 0x00927378 File Offset: 0x00925578 private void KDECKNEIAHC(ToolGroup NHBCFGHNDIM) { if (this.ADBKDGFNBFB != null && this.ADBKDGFNBFB.Length > 0) { for (int i = 0; i < this.ADBKDGFNBFB.Length; i++) { this.ADBKDGFNBFB[i].PJHHKFFJHPI = null; } NHBCFGHNDIM.AuthorityAddChildren(this.ADBKDGFNBFB); } } // Token: 0x0602184E RID: 137294 RVA: 0x009273D4 File Offset: 0x009255D4 public ToolGroup CreateNewGroup() { if (IHFKMIAHBFP.HCHIDMOLLAD) { return this.NLIEDNDBINL(); } this.IMANDPEFCHI(); return this.KPPLNKGIEEH(); } // Token: 0x0602184F RID: 137295 RVA: 0x009273F4 File Offset: 0x009255F4 private void IMANDPEFCHI() { base.OMNGGJICBBI.RPC("RpcMasterCreateNewGroup", IHCPDNLJMMD.MasterClient, new object[] { IHFKMIAHBFP.JEFGMHBLLKI.BADMPMDONAH }); } // Token: 0x06021850 RID: 137296 RVA: 0x00927420 File Offset: 0x00925620 private ToolGroup NLIEDNDBINL() { ToolGroup toolGroup = null; if (IHFKMIAHBFP.HCHIDMOLLAD) { toolGroup = IHFKMIAHBFP.MBPEECMHBBK(this.PKPIMDKNHFD, base.transform.position, base.transform.rotation, 0, null).GetComponent(); } return toolGroup; } // Token: 0x06021851 RID: 137297 RVA: 0x00927464 File Offset: 0x00925664 private ToolGroup KPPLNKGIEEH() { return IHFKMIAHBFP.ICHFNPOCOEJ(this.PKPIMDKNHFD, base.transform.position, base.transform.rotation, 0, null).GetComponent(); } // Token: 0x06021852 RID: 137298 RVA: 0x00927490 File Offset: 0x00925690 private void ILBKGAIIBIA(ToolGroup NHBCFGHNDIM) { if (!NHBCFGHNDIM.BHCCHBHNHCG) { NHBCFGHNDIM.OMNGGJICBBI.TransferOwnership(IHFKMIAHBFP.JEFGMHBLLKI); } if (!this.GLJLDFKHFHI || (this.Group.BKDFLNGCINH.OHGPCMJMFGC && !this.Group.BKDFLNGCINH.FICBNMJECCH.NHDDPGADJPJ)) { NHBCFGHNDIM.AuthorityDestroy(); return; } ToolGroup group = this.Group; NHBCFGHNDIM.AuthorityClone(group); group.AuthorityDestroy(); } // Token: 0x06021853 RID: 137299 RVA: 0x00927510 File Offset: 0x00925710 public virtual void DisplayAddToolHighlight(ToolGroupElement BNDJKGAIKDI) { this.DIAHDNICKAI = BNDJKGAIKDI != null; this.MJGKJLJJMJP = false; } // Token: 0x06021854 RID: 137300 RVA: 0x00927528 File Offset: 0x00925728 private void BLGAKDEIDJD(Tool COMHEONOMBA) { if (this.GLJLDFKHFHI) { this.Group.OnChildInGroupHoverStart(this); } } // Token: 0x06021855 RID: 137301 RVA: 0x00927544 File Offset: 0x00925744 private void POMFKCNJHJD(Tool COMHEONOMBA) { if (this.GLJLDFKHFHI) { this.Group.OnChildInGroupHoverEnd(this); } } // Token: 0x06021856 RID: 137302 RVA: 0x00927560 File Offset: 0x00925760 private Tool ILOMLBKEIAL(Player OAKJPHFELHD, bool MFHKIFDBNOM) { if (!this.GLJLDFKHFHI) { return this.BKDFLNGCINH; } ToolGroupElement highlightedChildInGroup = this.Group.GetHighlightedChildInGroup(this, OAKJPHFELHD, MFHKIFDBNOM); if (highlightedChildInGroup != null) { return highlightedChildInGroup.BKDFLNGCINH; } return this.Group.BKDFLNGCINH; } // Token: 0x06021857 RID: 137303 RVA: 0x009275AC File Offset: 0x009257AC [BCENPNOIAOM] protected void RpcMasterCreateNewGroup(int HADECPMDOEK) { LNJFBGIBLHA lnjfbgiblha = LNJFBGIBLHA.FDOBBLFBBBK(HADECPMDOEK); if (IHFKMIAHBFP.HCHIDMOLLAD && lnjfbgiblha != null) { ToolGroup toolGroup = this.NLIEDNDBINL(); if (toolGroup != null) { base.OMNGGJICBBI.RPC("RpcOnMasterGroupCreation", lnjfbgiblha, new object[] { toolGroup.OMNGGJICBBI.ADMBCINHJOG }); } } } // Token: 0x06021858 RID: 137304 RVA: 0x00927610 File Offset: 0x00925810 [BCENPNOIAOM] protected void RpcOnMasterGroupCreation(int DFCDHLLDDIG) { PhotonView photonView = PhotonView.Find(DFCDHLLDDIG); ToolGroup toolGroup = ((!(photonView != null)) ? null : photonView.GetComponent()); if (toolGroup != null) { this.ILBKGAIIBIA(toolGroup); } } // Token: 0x04005718 RID: 22296 [SerializeField] [Header("Groupable Tool")] private GameObject frontGroupAddHighlightVisual; // Token: 0x04005719 RID: 22297 [SerializeField] private GameObject backGroupAddHighlightVisual; // Token: 0x0400571A RID: 22298 [SerializeField] protected GroupSearch defaultSearchCollider; // Token: 0x0400571B RID: 22299 [SerializeField] protected GroupSearch heldSearchCollider; // Token: 0x0400571C RID: 22300 [ENMFCLPAKBJ(FOGKDGELKHN.Self, false)] [SerializeField] private Tool tool; // Token: 0x0400571D RID: 22301 [ENMFCLPAKBJ(FOGKDGELKHN.Self, false)] [SerializeField] private VisibleInCamera visibleInCamera; // Token: 0x0400571E RID: 22302 private LHLLJPPCDKA PJOJMJIAAAD; // Token: 0x0400571F RID: 22303 [NonSerialized] public ToolGroup Group; // Token: 0x04005725 RID: 22309 private ToolGroupElement[] ADBKDGFNBFB; // Token: 0x04005726 RID: 22310 private ToolGroupElement MFKBHPBEHME; // Token: 0x04005727 RID: 22311 private ToolGroup HFPFHJKMLLL; }