370 lines
10 KiB
C#
370 lines
10 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Photon;
|
|
using UnityEngine;
|
|
using UnityEngine.Serialization;
|
|
using UnityEngine.UI;
|
|
|
|
namespace AGUI.StackedUI
|
|
{
|
|
// Token: 0x02001071 RID: 4209
|
|
public abstract class StackedUIBase : global::Photon.MonoBehaviour, MFCHPNIIFGD
|
|
{
|
|
// Token: 0x1700107A RID: 4218
|
|
// (get) Token: 0x06023916 RID: 145686 RVA: 0x009B260C File Offset: 0x009B080C
|
|
private static Transform ECBMNPGNJLG
|
|
{
|
|
get
|
|
{
|
|
if (StackedUIBase.FKAPFAJFCBI == null)
|
|
{
|
|
StackedUIBase.FKAPFAJFCBI = new GameObject("Disabled UI Flows").transform;
|
|
global::UnityEngine.Object.DontDestroyOnLoad(StackedUIBase.FKAPFAJFCBI.gameObject);
|
|
}
|
|
return StackedUIBase.FKAPFAJFCBI;
|
|
}
|
|
}
|
|
|
|
// Token: 0x1700107B RID: 4219
|
|
// (get) Token: 0x06023917 RID: 145687 RVA: 0x009B2648 File Offset: 0x009B0848
|
|
public Canvas EFLIAMBDIHJ
|
|
{
|
|
get
|
|
{
|
|
return this.canvas;
|
|
}
|
|
}
|
|
|
|
// Token: 0x1700107C RID: 4220
|
|
// (get) Token: 0x06023918 RID: 145688 RVA: 0x009B2650 File Offset: 0x009B0850
|
|
protected virtual IEnumerable<StackedUIFlowBase> IPAGACFOCFI
|
|
{
|
|
get
|
|
{
|
|
return this.flowPrefabs;
|
|
}
|
|
}
|
|
|
|
// Token: 0x1700107D RID: 4221
|
|
// (get) Token: 0x06023919 RID: 145689 RVA: 0x009B2658 File Offset: 0x009B0858
|
|
public List<StackedUIFlowBase> OGHBMFPKCCN
|
|
{
|
|
get
|
|
{
|
|
return this.BOLCAHPPFAB;
|
|
}
|
|
}
|
|
|
|
// Token: 0x1700107E RID: 4222
|
|
// (get) Token: 0x0602391A RID: 145690 RVA: 0x009B2660 File Offset: 0x009B0860
|
|
// (set) Token: 0x0602391B RID: 145691 RVA: 0x009B2668 File Offset: 0x009B0868
|
|
private protected StackedUIFlowBase BHNOHPCNFKB { protected get; private set; }
|
|
|
|
// Token: 0x0602391C RID: 145692 RVA: 0x009B2674 File Offset: 0x009B0874
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
this.FNLKIFCJPCP = base.GetComponentsInChildren<UIInteractionRestriction>(true);
|
|
this.EFFJAGDLFKP();
|
|
this.DAENFJGPPDE();
|
|
}
|
|
|
|
// Token: 0x0602391D RID: 145693 RVA: 0x009B2698 File Offset: 0x009B0898
|
|
protected virtual void OnEnable()
|
|
{
|
|
this.Opened();
|
|
}
|
|
|
|
// Token: 0x0602391E RID: 145694 RVA: 0x009B26A0 File Offset: 0x009B08A0
|
|
protected virtual void OnDisable()
|
|
{
|
|
this.Closed();
|
|
}
|
|
|
|
// Token: 0x0602391F RID: 145695 RVA: 0x009B26A8 File Offset: 0x009B08A8
|
|
protected override void OnDestroy()
|
|
{
|
|
base.OnDestroy();
|
|
foreach (StackedUIFlowBase stackedUIFlowBase in this.OGHBMFPKCCN)
|
|
{
|
|
if (stackedUIFlowBase != null && stackedUIFlowBase.transform.parent == StackedUIBase.ECBMNPGNJLG)
|
|
{
|
|
global::UnityEngine.Object.Destroy(stackedUIFlowBase.gameObject);
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x06023920 RID: 145696 RVA: 0x009B2734 File Offset: 0x009B0934
|
|
private void EFFJAGDLFKP()
|
|
{
|
|
StackedUIFlowBase[] componentsInChildren = base.GetComponentsInChildren<StackedUIFlowBase>(true);
|
|
List<StackedUIFlowBase> list = new List<StackedUIFlowBase>();
|
|
foreach (StackedUIFlowBase stackedUIFlowBase in this.IPAGACFOCFI)
|
|
{
|
|
if (stackedUIFlowBase != null)
|
|
{
|
|
list.Add(global::UnityEngine.Object.Instantiate<StackedUIFlowBase>(stackedUIFlowBase));
|
|
}
|
|
else
|
|
{
|
|
Debug.LogError("Error setting up menu. Flow was null!");
|
|
}
|
|
}
|
|
this.OGHBMFPKCCN.AddRange(componentsInChildren);
|
|
this.OGHBMFPKCCN.AddRange(list);
|
|
foreach (StackedUIFlowBase stackedUIFlowBase2 in this.OGHBMFPKCCN)
|
|
{
|
|
this.IPGDDEOEKEA(stackedUIFlowBase2);
|
|
}
|
|
foreach (StackedUIFlowBase stackedUIFlowBase3 in this.OGHBMFPKCCN)
|
|
{
|
|
stackedUIFlowBase3.OnAllFlowsInitialized();
|
|
}
|
|
this.AMJINHCJCGP();
|
|
}
|
|
|
|
// Token: 0x06023921 RID: 145697 RVA: 0x009B2874 File Offset: 0x009B0A74
|
|
protected virtual void IPGDDEOEKEA(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
EJNAKPIOKFJ.Initialize(this);
|
|
EJNAKPIOKFJ.gameObject.SetActive(false);
|
|
this.NFNOOMDBADF(EJNAKPIOKFJ);
|
|
if (EJNAKPIOKFJ.FirstFlow)
|
|
{
|
|
this.NJMLJBGLNOK = EJNAKPIOKFJ;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06023922 RID: 145698 RVA: 0x009B28A4 File Offset: 0x009B0AA4
|
|
protected virtual void AMJINHCJCGP()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06023923 RID: 145699 RVA: 0x009B28A8 File Offset: 0x009B0AA8
|
|
protected virtual void DAENFJGPPDE()
|
|
{
|
|
this.PushFlow(this.NJMLJBGLNOK);
|
|
}
|
|
|
|
// Token: 0x06023924 RID: 145700 RVA: 0x009B28B8 File Offset: 0x009B0AB8
|
|
public void Opened()
|
|
{
|
|
if (this.BHNOHPCNFKB != null)
|
|
{
|
|
this.KJGHADBPJEM(this.BHNOHPCNFKB);
|
|
this.BHNOHPCNFKB.gameObject.SetActive(true);
|
|
}
|
|
this.AJFCNEMEGJO();
|
|
foreach (StackedUIFlowBase stackedUIFlowBase in this.OGHBMFPKCCN)
|
|
{
|
|
stackedUIFlowBase.StackedUIOpened();
|
|
}
|
|
}
|
|
|
|
// Token: 0x06023925 RID: 145701 RVA: 0x009B2948 File Offset: 0x009B0B48
|
|
protected virtual void AJFCNEMEGJO()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06023926 RID: 145702 RVA: 0x009B294C File Offset: 0x009B0B4C
|
|
public void Closed()
|
|
{
|
|
this.KHKCGPCEGDG();
|
|
foreach (StackedUIFlowBase stackedUIFlowBase in this.OGHBMFPKCCN)
|
|
{
|
|
stackedUIFlowBase.StackedUIClosed();
|
|
}
|
|
if (this.BHNOHPCNFKB != null)
|
|
{
|
|
this.NFNOOMDBADF(this.BHNOHPCNFKB);
|
|
this.BHNOHPCNFKB.gameObject.SetActive(false);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06023927 RID: 145703 RVA: 0x009B29DC File Offset: 0x009B0BDC
|
|
protected virtual void KHKCGPCEGDG()
|
|
{
|
|
}
|
|
|
|
// Token: 0x06023928 RID: 145704 RVA: 0x009B29E0 File Offset: 0x009B0BE0
|
|
public void Button_PushFlow(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
this.PushFlow(EJNAKPIOKFJ);
|
|
}
|
|
|
|
// Token: 0x06023929 RID: 145705 RVA: 0x009B29EC File Offset: 0x009B0BEC
|
|
public void PushFlow(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
this.IAFJGFHMEIO(EJNAKPIOKFJ);
|
|
}
|
|
|
|
// Token: 0x0602392A RID: 145706 RVA: 0x009B29F8 File Offset: 0x009B0BF8
|
|
public void PushFlow<T>() where T : StackedUIFlowBase
|
|
{
|
|
StackedUIFlowBase stackedUIFlowBase = this.GetFlowByType<T>();
|
|
if (stackedUIFlowBase != null)
|
|
{
|
|
this.PushFlow(stackedUIFlowBase);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0602392B RID: 145707 RVA: 0x009B2A24 File Offset: 0x009B0C24
|
|
protected virtual void IAFJGFHMEIO(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
this.MBJNPAHFJON.Push(EJNAKPIOKFJ);
|
|
if (this.BHNOHPCNFKB != null)
|
|
{
|
|
this.LGAJCPEAGMN(this.BHNOHPCNFKB);
|
|
}
|
|
this.BDLPCIAAOID(EJNAKPIOKFJ, this.BHNOHPCNFKB);
|
|
}
|
|
|
|
// Token: 0x0602392C RID: 145708 RVA: 0x009B2A5C File Offset: 0x009B0C5C
|
|
public void Button_PopFlow()
|
|
{
|
|
this.PopFlow();
|
|
}
|
|
|
|
// Token: 0x0602392D RID: 145709 RVA: 0x009B2A68 File Offset: 0x009B0C68
|
|
public bool PopFlow()
|
|
{
|
|
return this.OPADPCJIKIO();
|
|
}
|
|
|
|
// Token: 0x0602392E RID: 145710 RVA: 0x009B2A70 File Offset: 0x009B0C70
|
|
public void PopAllFlows()
|
|
{
|
|
while (this.PopFlow())
|
|
{
|
|
}
|
|
}
|
|
|
|
// Token: 0x0602392F RID: 145711 RVA: 0x009B2A84 File Offset: 0x009B0C84
|
|
public bool RefreshTopFlow()
|
|
{
|
|
return this.BNMFPPABONA();
|
|
}
|
|
|
|
// Token: 0x06023930 RID: 145712 RVA: 0x009B2A8C File Offset: 0x009B0C8C
|
|
protected virtual bool BNMFPPABONA()
|
|
{
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x06023931 RID: 145713 RVA: 0x009B2A90 File Offset: 0x009B0C90
|
|
protected virtual bool OPADPCJIKIO()
|
|
{
|
|
if (this.MBJNPAHFJON.Count > 1)
|
|
{
|
|
StackedUIFlowBase stackedUIFlowBase = this.MBJNPAHFJON.Pop();
|
|
StackedUIFlowBase stackedUIFlowBase2 = this.MBJNPAHFJON.Peek();
|
|
this.LGAJCPEAGMN(stackedUIFlowBase);
|
|
this.BDLPCIAAOID(stackedUIFlowBase2, stackedUIFlowBase);
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
// Token: 0x06023932 RID: 145714 RVA: 0x009B2AD8 File Offset: 0x009B0CD8
|
|
private void BDLPCIAAOID(StackedUIFlowBase MJIGMKPCKNP, StackedUIFlowBase KJKLMLPCCAO)
|
|
{
|
|
this.BHNOHPCNFKB = MJIGMKPCKNP;
|
|
this.BHNOHPCNFKB.gameObject.SetActive(true);
|
|
this.KJGHADBPJEM(this.BHNOHPCNFKB);
|
|
this.MKGONLGKJAG(MJIGMKPCKNP, KJKLMLPCCAO);
|
|
this.BHNOHPCNFKB.OnFlowEntered(KJKLMLPCCAO);
|
|
}
|
|
|
|
// Token: 0x06023933 RID: 145715 RVA: 0x009B2B14 File Offset: 0x009B0D14
|
|
private void LGAJCPEAGMN(StackedUIFlowBase KJKLMLPCCAO)
|
|
{
|
|
KJKLMLPCCAO.OnFlowExited();
|
|
KJKLMLPCCAO.gameObject.SetActive(false);
|
|
this.NFNOOMDBADF(KJKLMLPCCAO);
|
|
}
|
|
|
|
// Token: 0x06023934 RID: 145716 RVA: 0x009B2B30 File Offset: 0x009B0D30
|
|
protected virtual void MKGONLGKJAG(StackedUIFlowBase MJIGMKPCKNP, StackedUIFlowBase KJKLMLPCCAO)
|
|
{
|
|
}
|
|
|
|
// Token: 0x06023935 RID: 145717 RVA: 0x009B2B34 File Offset: 0x009B0D34
|
|
private void KJGHADBPJEM(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
if (EJNAKPIOKFJ != null)
|
|
{
|
|
EJNAKPIOKFJ.transform.SetParent(this.screenBase, false);
|
|
EJNAKPIOKFJ.transform.localPosition = Vector3.zero;
|
|
EJNAKPIOKFJ.transform.localScale = Vector3.one;
|
|
EJNAKPIOKFJ.transform.localRotation = Quaternion.identity;
|
|
RectTransform rectTransform = EJNAKPIOKFJ.transform as RectTransform;
|
|
rectTransform.anchorMin = Vector2.zero;
|
|
rectTransform.anchorMax = Vector2.one;
|
|
rectTransform.offsetMin = Vector2.zero;
|
|
rectTransform.offsetMax = Vector2.zero;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06023936 RID: 145718 RVA: 0x009B2BC8 File Offset: 0x009B0DC8
|
|
private void NFNOOMDBADF(StackedUIFlowBase EJNAKPIOKFJ)
|
|
{
|
|
EJNAKPIOKFJ.transform.SetParent(StackedUIBase.ECBMNPGNJLG, false);
|
|
}
|
|
|
|
// Token: 0x06023937 RID: 145719 RVA: 0x009B2BDC File Offset: 0x009B0DDC
|
|
public bool CanInteract(Selectable NJEBPCDODEH)
|
|
{
|
|
for (int i = 0; i < this.FNLKIFCJPCP.Length; i++)
|
|
{
|
|
if (this.FNLKIFCJPCP[i].gameObject.activeInHierarchy && !this.FNLKIFCJPCP[i].CanInteract(NJEBPCDODEH))
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
return true;
|
|
}
|
|
|
|
// Token: 0x06023938 RID: 145720 RVA: 0x009B2C30 File Offset: 0x009B0E30
|
|
public T GetFlowByType<T>() where T : StackedUIFlowBase
|
|
{
|
|
foreach (StackedUIFlowBase stackedUIFlowBase in this.OGHBMFPKCCN)
|
|
{
|
|
T t = stackedUIFlowBase as T;
|
|
if (t != null)
|
|
{
|
|
return t;
|
|
}
|
|
}
|
|
return (T)((object)null);
|
|
}
|
|
|
|
// Token: 0x04005B3D RID: 23357
|
|
private static Transform FKAPFAJFCBI;
|
|
|
|
// Token: 0x04005B3E RID: 23358
|
|
[SerializeField]
|
|
private Canvas canvas;
|
|
|
|
// Token: 0x04005B3F RID: 23359
|
|
[SerializeField]
|
|
private RectTransform screenBase;
|
|
|
|
// Token: 0x04005B40 RID: 23360
|
|
[SerializeField]
|
|
[FormerlySerializedAs("extraFlows")]
|
|
private StackedUIFlowBase[] flowPrefabs;
|
|
|
|
// Token: 0x04005B41 RID: 23361
|
|
private Stack<StackedUIFlowBase> MBJNPAHFJON = new Stack<StackedUIFlowBase>();
|
|
|
|
// Token: 0x04005B42 RID: 23362
|
|
private List<StackedUIFlowBase> BOLCAHPPFAB = new List<StackedUIFlowBase>();
|
|
|
|
// Token: 0x04005B44 RID: 23364
|
|
private UIInteractionRestriction[] FNLKIFCJPCP = new UIInteractionRestriction[0];
|
|
|
|
// Token: 0x04005B45 RID: 23365
|
|
private StackedUIFlowBase NJMLJBGLNOK;
|
|
}
|
|
}
|