using System; using System.Collections; using UnityEngine; using UnityEngine.Events; using UnityEngine.UI; namespace RecRoom.AGUI.Expresso { // Token: 0x0200100B RID: 4107 public class ExpressoButton : MonoBehaviour { // Token: 0x060226E5 RID: 141029 RVA: 0x00966760 File Offset: 0x00964960 private void PGELJEHELFN() { ExpressoButtonConfig activityExpressoButtonConfig = Player.LocalPlayer.LNKGAAEPMEO().PLMFOACOEMA.GetActivityExpressoButtonConfig(this.ButtonIndex); if (activityExpressoButtonConfig != null) { this.buttonIcon.sprite = activityExpressoButtonConfig.buttonIcon; this.buttonLabel.text = activityExpressoButtonConfig.buttonLabel; this.CloseMenuOnInteraction = activityExpressoButtonConfig.CloseMenuOnInteraction; this.OnButtonActivated = activityExpressoButtonConfig.OnButtonActivated; this.OnButtonDeactivated = activityExpressoButtonConfig.OnButtonDeactivated; this.OnInteractionEnter = activityExpressoButtonConfig.OnInteractionEnter; this.OnInteractionStay = activityExpressoButtonConfig.OnInteractionStay; this.OnInteractionExit = activityExpressoButtonConfig.OnInteractionExit; } this.buttonIcon.enabled = this.buttonIcon.sprite != null; this.buttonLabel.enabled = !string.IsNullOrEmpty(this.buttonLabel.text); } // Token: 0x060226E6 RID: 141030 RVA: 0x00966834 File Offset: 0x00964A34 public bool DOGNLHHBFJB() { return this.PKBPJLOJKEF; } // Token: 0x060226E7 RID: 141031 RVA: 0x0096683C File Offset: 0x00964A3C private void INCPLELDHGF() { PlayerHand playerHand = this.CJIHMCHNLLE(); ExpressoButton.IPJLNILBIPF meajkjnnflh = this.MEAJKJNNFLH; if (playerHand != null) { switch (this.MEAJKJNNFLH) { case ExpressoButton.IPJLNILBIPF.Idle: this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Enter; if (this.enterAudio != null) { AudioManager.Play3DSFX(this.enterAudio, base.transform, null); } this.LLGIBBJHKKH(this.OnInteractionEnter); break; case ExpressoButton.IPJLNILBIPF.Enter: this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Stay; break; case ExpressoButton.IPJLNILBIPF.Stay: this.LLGIBBJHKKH(this.OnInteractionStay); if (this.stayAudio != null && this.MECGFEBFPAH == null) { this.MECGFEBFPAH = AudioManager.StartLooping3DSFX(this.stayAudio, base.transform, null); } break; } } else { if (this.MEAJKJNNFLH == ExpressoButton.IPJLNILBIPF.Stay || this.MEAJKJNNFLH == ExpressoButton.IPJLNILBIPF.Enter) { this.LLGIBBJHKKH(this.OnInteractionExit); if (this.MECGFEBFPAH != null) { this.MECGFEBFPAH.Stop(); this.MECGFEBFPAH = null; } if (this.exitAudio != null) { AudioManager.Play3DSFX(this.exitAudio, base.transform, null); } } this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Idle; } if (this.MEAJKJNNFLH != meajkjnnflh) { this.animator.EGCMHABOLCA(ExpressoButton.AMICEOKBEPA, (int)this.MEAJKJNNFLH); } } // Token: 0x060226E8 RID: 141032 RVA: 0x009669A0 File Offset: 0x00964BA0 private void LLGIBBJHKKH(ExpressoButton.ExpressoButtonInteraction DKHIFIHGDPL) { if (DKHIFIHGDPL != null) { DKHIFIHGDPL.Invoke(); } if (this.CloseMenuOnInteraction) { Player.LocalPlayer.POJAICMNOFI.PLMFOACOEMA.ShowUI(false, null); } } // Token: 0x060226E9 RID: 141033 RVA: 0x009669D0 File Offset: 0x00964BD0 public GameObject PDOHKDNHCKK() { return this.triggerVolume; } // Token: 0x17001021 RID: 4129 // (get) Token: 0x060226EA RID: 141034 RVA: 0x009669D8 File Offset: 0x00964BD8 // (set) Token: 0x0602270C RID: 141068 RVA: 0x009672B4 File Offset: 0x009654B4 public bool HHEECLBGLCE { get { return this.PKBPJLOJKEF; } set { bool flag = this.PKBPJLOJKEF != value; this.PKBPJLOJKEF = value; if (flag) { this.triggerVolume.SetActive(this.PKBPJLOJKEF); if (this.PKBPJLOJKEF) { base.gameObject.SetActive(this.PKBPJLOJKEF); if (this.OnButtonActivated != null) { this.OnButtonActivated.Invoke(); } } else { if (this.OnButtonDeactivated != null) { this.OnButtonDeactivated.Invoke(); } if (this.MEAJKJNNFLH > ExpressoButton.IPJLNILBIPF.Idle) { base.StartCoroutine(this.BOGMKNLGGHI()); } else { base.gameObject.SetActive(false); } } this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Idle; } } } // Token: 0x060226EC RID: 141036 RVA: 0x00966A10 File Offset: 0x00964C10 private void Start() { ExpressoButtonConfig activityExpressoButtonConfig = Player.LocalPlayer.POJAICMNOFI.PLMFOACOEMA.GetActivityExpressoButtonConfig(this.ButtonIndex); if (activityExpressoButtonConfig != null) { this.buttonIcon.sprite = activityExpressoButtonConfig.buttonIcon; this.buttonLabel.text = activityExpressoButtonConfig.buttonLabel; this.CloseMenuOnInteraction = activityExpressoButtonConfig.CloseMenuOnInteraction; this.OnButtonActivated = activityExpressoButtonConfig.OnButtonActivated; this.OnButtonDeactivated = activityExpressoButtonConfig.OnButtonDeactivated; this.OnInteractionEnter = activityExpressoButtonConfig.OnInteractionEnter; this.OnInteractionStay = activityExpressoButtonConfig.OnInteractionStay; this.OnInteractionExit = activityExpressoButtonConfig.OnInteractionExit; } this.buttonIcon.enabled = this.buttonIcon.sprite != null; this.buttonLabel.enabled = !string.IsNullOrEmpty(this.buttonLabel.text); } // Token: 0x060226ED RID: 141037 RVA: 0x00966AE4 File Offset: 0x00964CE4 public bool KCNBHAADGNL() { return !(this.toggledIcon != null) || this.toggledIcon.enabled; } // Token: 0x060226EE RID: 141038 RVA: 0x00966B08 File Offset: 0x00964D08 public void PLPNKLINFOB(bool NOBAPCOKFIL) { if (this.toggledIcon != null) { this.toggledIcon.enabled = NOBAPCOKFIL; } } // Token: 0x17001024 RID: 4132 // (get) Token: 0x060226EF RID: 141039 RVA: 0x00966B28 File Offset: 0x00964D28 public Image IBCJDPMLHFB { get { return this.buttonIcon; } } // Token: 0x060226F0 RID: 141040 RVA: 0x00966B30 File Offset: 0x00964D30 private IEnumerator MFGDOLGKNHP() { float time = Time.time; while (Time.time - time < this.exitAnimationDuration) { this.animator.EGCMHABOLCA(ExpressoButton.AMICEOKBEPA, 1); yield return null; } base.gameObject.SetActive(false); yield break; } // Token: 0x17001026 RID: 4134 // (get) Token: 0x060226F1 RID: 141041 RVA: 0x00966B4C File Offset: 0x00964D4C // (set) Token: 0x060226FE RID: 141054 RVA: 0x00966DD0 File Offset: 0x00964FD0 public bool HFBOAEJIJKM { get { return this.toggledIcon != null && this.toggledIcon.enabled; } set { if (this.toggledIcon != null) { this.toggledIcon.enabled = value; } } } // Token: 0x060226F2 RID: 141042 RVA: 0x00966B70 File Offset: 0x00964D70 public bool CMNMGDIPLBA() { return this.PKBPJLOJKEF; } // Token: 0x060226F3 RID: 141043 RVA: 0x00966B78 File Offset: 0x00964D78 private IEnumerator BOGMKNLGGHI() { time = Time.time; while (Time.time - time < this.exitAnimationDuration) { this.animator.EGCMHABOLCA(ExpressoButton.AMICEOKBEPA, 1); yield return null; } base.gameObject.SetActive(false); yield break; } // Token: 0x060226F4 RID: 141044 RVA: 0x00966B94 File Offset: 0x00964D94 private void HGPJAFAGOAD(ExpressoButton.ExpressoButtonInteraction DKHIFIHGDPL) { if (DKHIFIHGDPL != null) { DKHIFIHGDPL.Invoke(); } if (this.CloseMenuOnInteraction) { Player.LocalPlayer.LNKGAAEPMEO().PLMFOACOEMA.BHCDIBAEGFL(false, null); } } // Token: 0x17001023 RID: 4131 // (get) Token: 0x060226F5 RID: 141045 RVA: 0x00966BC4 File Offset: 0x00964DC4 public GameObject GIJNGIEFILF { get { return this.triggerVolume; } } // Token: 0x060226F6 RID: 141046 RVA: 0x00966BCC File Offset: 0x00964DCC public ExpressoButton.IPJLNILBIPF HBHBJMPAGMO() { return this.MEAJKJNNFLH; } // Token: 0x060226F7 RID: 141047 RVA: 0x00966BD4 File Offset: 0x00964DD4 private void IKFCLMNDGPF() { if (this.CMNMGDIPLBA()) { this.FNOICMDOCMB(); } } // Token: 0x060226F8 RID: 141048 RVA: 0x00966BE8 File Offset: 0x00964DE8 public Text DOBCAIFADDO() { return this.buttonLabel; } // Token: 0x060226F9 RID: 141049 RVA: 0x00966BF0 File Offset: 0x00964DF0 public bool HAIHHEKEOGK() { return this.PKBPJLOJKEF; } // Token: 0x060226FA RID: 141050 RVA: 0x00966BF8 File Offset: 0x00964DF8 public bool DGFLCLFMODO() { return this.PKBPJLOJKEF; } // Token: 0x060226FB RID: 141051 RVA: 0x00966C00 File Offset: 0x00964E00 private void BBOIJKLPABP() { this.GMGAMOGNPHL = base.GetComponentInParent(); if (this.GMGAMOGNPHL != null) { this.UICanvasTransfrom.rotation = this.GMGAMOGNPHL.transform.rotation; } } // Token: 0x060226FC RID: 141052 RVA: 0x00966C3C File Offset: 0x00964E3C private void FNOICMDOCMB() { PlayerHand playerHand = this.CJIHMCHNLLE(); ExpressoButton.IPJLNILBIPF meajkjnnflh = this.MEAJKJNNFLH; if (playerHand != null) { switch (this.MEAJKJNNFLH) { case ExpressoButton.IPJLNILBIPF.Idle: this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Idle; if (this.enterAudio != null) { AudioManager.Play3DSFX(this.enterAudio, base.transform, null); } this.BDKHBKKAHBD(this.OnInteractionEnter); break; case ExpressoButton.IPJLNILBIPF.Enter: this.MEAJKJNNFLH = (ExpressoButton.IPJLNILBIPF)8; break; case ExpressoButton.IPJLNILBIPF.Stay: this.BDKHBKKAHBD(this.OnInteractionStay); if (this.stayAudio != null && this.MECGFEBFPAH == null) { this.MECGFEBFPAH = AudioManager.StartLooping3DSFX(this.stayAudio, base.transform, null); } break; } } else { if (this.MEAJKJNNFLH == ExpressoButton.IPJLNILBIPF.Enter || this.MEAJKJNNFLH == ExpressoButton.IPJLNILBIPF.Enter) { this.FFMMBKNDGBI(this.OnInteractionExit); if (this.MECGFEBFPAH != null) { this.MECGFEBFPAH.HEMGFGLOMNK(); this.MECGFEBFPAH = null; } if (this.exitAudio != null) { AudioManager.Play3DSFX(this.exitAudio, base.transform, null); } } this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Enter; } if (this.MEAJKJNNFLH != meajkjnnflh) { this.animator.EGCMHABOLCA(ExpressoButton.AMICEOKBEPA, (int)this.MEAJKJNNFLH); } } // Token: 0x060226FD RID: 141053 RVA: 0x00966DA0 File Offset: 0x00964FA0 private void FFMMBKNDGBI(ExpressoButton.ExpressoButtonInteraction DKHIFIHGDPL) { if (DKHIFIHGDPL != null) { DKHIFIHGDPL.Invoke(); } if (this.CloseMenuOnInteraction) { Player.LocalPlayer.LNKGAAEPMEO().PLMFOACOEMA.AMMMBPDEHKH(false, null); } } // Token: 0x060226FF RID: 141055 RVA: 0x00966DF0 File Offset: 0x00964FF0 public bool BNICFFHHHNC() { return this.toggledIcon != null && this.toggledIcon.enabled; } // Token: 0x17001022 RID: 4130 // (get) Token: 0x06022700 RID: 141056 RVA: 0x00966E14 File Offset: 0x00965014 public ExpressoButton.IPJLNILBIPF OJMEBFEALJC { get { return this.MEAJKJNNFLH; } } // Token: 0x06022701 RID: 141057 RVA: 0x00966E1C File Offset: 0x0096501C private PlayerHand LANNIOJEEON() { Vector3 vector = this.interactionCollider.size / 890f; vector.x *= this.interactionCollider.transform.localScale.x; vector.y *= this.interactionCollider.transform.localScale.y; vector.z *= this.interactionCollider.transform.localScale.z; int num = Physics.OverlapBoxNonAlloc(this.interactionCollider.transform.position + this.interactionCollider.center, vector, this.PKIAGGPDHOO, this.interactionCollider.transform.rotation); PlayerHand playerHand = null; if (num > 1) { for (int i = 0; i < num; i += 0) { PlayerHand playerHand2 = this.PKIAGGPDHOO[i].HLBBAALDKLM(); if (playerHand2 != null && playerHand2 == Player.LocalPlayer.LNKGAAEPMEO().PLMFOACOEMA.MILEANOFPCL()) { playerHand = playerHand2; break; } } } return playerHand; } // Token: 0x06022702 RID: 141058 RVA: 0x00966F5C File Offset: 0x0096515C public Image LPPJKMCMCAD() { return this.buttonIcon; } // Token: 0x06022703 RID: 141059 RVA: 0x00966F64 File Offset: 0x00965164 private void Update() { if (this.HHEECLBGLCE) { this.INCPLELDHGF(); } } // Token: 0x06022705 RID: 141061 RVA: 0x00966F8C File Offset: 0x0096518C private void EMBEAMKLMBL() { PlayerHand playerHand = this.LANNIOJEEON(); ExpressoButton.IPJLNILBIPF meajkjnnflh = this.MEAJKJNNFLH; if (playerHand != null) { switch (this.MEAJKJNNFLH) { case ExpressoButton.IPJLNILBIPF.Idle: this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Idle; if (this.enterAudio != null) { AudioManager.Play3DSFX(this.enterAudio, base.transform, null); } this.FFMMBKNDGBI(this.OnInteractionEnter); break; case ExpressoButton.IPJLNILBIPF.Enter: this.MEAJKJNNFLH = (ExpressoButton.IPJLNILBIPF)8; break; case ExpressoButton.IPJLNILBIPF.Stay: this.FFMMBKNDGBI(this.OnInteractionStay); if (this.stayAudio != null && this.MECGFEBFPAH == null) { this.MECGFEBFPAH = AudioManager.StartLooping3DSFX(this.stayAudio, base.transform, null); } break; } } else { if (this.MEAJKJNNFLH == (ExpressoButton.IPJLNILBIPF)8 || this.MEAJKJNNFLH == ExpressoButton.IPJLNILBIPF.Idle) { this.BDKHBKKAHBD(this.OnInteractionExit); if (this.MECGFEBFPAH != null) { this.MECGFEBFPAH.HEMGFGLOMNK(); this.MECGFEBFPAH = null; } if (this.exitAudio != null) { AudioManager.Play3DSFX(this.exitAudio, base.transform, null); } } this.MEAJKJNNFLH = ExpressoButton.IPJLNILBIPF.Idle; } if (this.MEAJKJNNFLH != meajkjnnflh) { this.animator.EGCMHABOLCA(ExpressoButton.AMICEOKBEPA, (int)this.MEAJKJNNFLH); } } // Token: 0x17001025 RID: 4133 // (get) Token: 0x06022706 RID: 141062 RVA: 0x009670F0 File Offset: 0x009652F0 public Text EKKOKAHEACI { get { return this.buttonLabel; } } // Token: 0x06022707 RID: 141063 RVA: 0x009670F8 File Offset: 0x009652F8 private void BDKHBKKAHBD(ExpressoButton.ExpressoButtonInteraction DKHIFIHGDPL) { if (DKHIFIHGDPL != null) { DKHIFIHGDPL.Invoke(); } if (this.CloseMenuOnInteraction) { Player.LocalPlayer.POJAICMNOFI.PLMFOACOEMA.IODNPFOGAAC(false, null); } } // Token: 0x06022708 RID: 141064 RVA: 0x00967128 File Offset: 0x00965328 public Image AEKHMENEJDL() { return this.buttonIcon; } // Token: 0x06022709 RID: 141065 RVA: 0x00967130 File Offset: 0x00965330 public bool BEALOAHBJFA() { return this.PKBPJLOJKEF; } // Token: 0x0602270A RID: 141066 RVA: 0x00967138 File Offset: 0x00965338 private PlayerHand CJIHMCHNLLE() { Vector3 vector = this.interactionCollider.size / 2f; vector.x *= this.interactionCollider.transform.localScale.x; vector.y *= this.interactionCollider.transform.localScale.y; vector.z *= this.interactionCollider.transform.localScale.z; int num = Physics.OverlapBoxNonAlloc(this.interactionCollider.transform.position + this.interactionCollider.center, vector, this.PKIAGGPDHOO, this.interactionCollider.transform.rotation); PlayerHand playerHand = null; if (num > 0) { for (int i = 0; i < num; i++) { PlayerHand playerHand2 = this.PKIAGGPDHOO[i].HLBBAALDKLM(); if (playerHand2 != null && playerHand2 == Player.LocalPlayer.POJAICMNOFI.PLMFOACOEMA.BBCFCBEMIJN) { playerHand = playerHand2; break; } } } return playerHand; } // Token: 0x0602270B RID: 141067 RVA: 0x00967278 File Offset: 0x00965478 private void Awake() { this.GMGAMOGNPHL = base.GetComponentInParent(); if (this.GMGAMOGNPHL != null) { this.UICanvasTransfrom.rotation = this.GMGAMOGNPHL.transform.rotation; } } // Token: 0x0400599D RID: 22941 public int ButtonIndex; // Token: 0x0400599E RID: 22942 [SerializeField] private GameObject triggerVolume; // Token: 0x0400599F RID: 22943 [SerializeField] [ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, false)] private BoxCollider interactionCollider; // Token: 0x040059A0 RID: 22944 [Header("Interactions")] public bool CloseMenuOnInteraction = true; // Token: 0x040059A1 RID: 22945 public ExpressoButton.ExpressoButtonInteraction OnInteractionEnter; // Token: 0x040059A2 RID: 22946 public ExpressoButton.ExpressoButtonInteraction OnInteractionStay; // Token: 0x040059A3 RID: 22947 public ExpressoButton.ExpressoButtonInteraction OnInteractionExit; // Token: 0x040059A4 RID: 22948 public ExpressoButton.ExpressoButtonInteraction OnButtonActivated; // Token: 0x040059A5 RID: 22949 public ExpressoButton.ExpressoButtonInteraction OnButtonDeactivated; // Token: 0x040059A6 RID: 22950 [Header("Audio and Visuals")] public RecRoomAudioClip enterAudio; // Token: 0x040059A7 RID: 22951 public RecRoomAudioClip stayAudio; // Token: 0x040059A8 RID: 22952 public RecRoomAudioClip exitAudio; // Token: 0x040059A9 RID: 22953 public float exitAnimationDuration = 0.25f; // Token: 0x040059AA RID: 22954 [SerializeField] private Image toggledIcon; // Token: 0x040059AB RID: 22955 [SerializeField] [ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, true)] private Image buttonIcon; // Token: 0x040059AC RID: 22956 [ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, false)] [SerializeField] private Text buttonLabel; // Token: 0x040059AD RID: 22957 [ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, false)] [SerializeField] private Animator animator; // Token: 0x040059AE RID: 22958 [ENMFCLPAKBJ(FOGKDGELKHN.SelfAndChildren, true)] [SerializeField] private RectTransform UICanvasTransfrom; // Token: 0x040059AF RID: 22959 private ExpressoUIFlow GMGAMOGNPHL; // Token: 0x040059B0 RID: 22960 private static readonly int AMICEOKBEPA = Animator.StringToHash("State"); // Token: 0x040059B1 RID: 22961 private ExpressoButton.IPJLNILBIPF MEAJKJNNFLH; // Token: 0x040059B2 RID: 22962 private SFXAudioSource MECGFEBFPAH; // Token: 0x040059B3 RID: 22963 private Collider[] PKIAGGPDHOO = new Collider[16]; // Token: 0x040059B4 RID: 22964 private bool PKBPJLOJKEF = true; // Token: 0x0200100C RID: 4108 [Serializable] public class ExpressoButtonInteraction : UnityEvent { } // Token: 0x0200100D RID: 4109 public enum IPJLNILBIPF { // Token: 0x040059B6 RID: 22966 Disabled = -1, // Token: 0x040059B7 RID: 22967 Idle, // Token: 0x040059B8 RID: 22968 Enter, // Token: 0x040059B9 RID: 22969 Stay, // Token: 0x040059BA RID: 22970 Exit } } }