Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
UIQueue.cs
Go to the documentation of this file.
1using DG.Tweening;
2using UnityEngine;
3using UnityEngine.UI;
4
5public class UIQueue : EMono
6{
7 public static UIQueue Instance;
8
9 public LayoutGroup layout;
10
11 public UIButton mold;
12
14
15 private void OnEnable()
16 {
17 Instance = this;
18 }
19
20 private void OnDisable()
21 {
22 Instance = null;
23 }
24
25 public void OnAdd(Queue q, bool insert = false)
26 {
27 UIButton uIButton = (q.button = Util.Instantiate(mold, layout));
28 uIButton.onClick.AddListener(delegate
29 {
30 if (q.CanCancel)
31 {
32 queues.Cancel(q);
33 }
34 });
35 if (insert)
36 {
37 uIButton.transform.SetAsFirstSibling();
38 }
39 uIButton.tooltip.onShowTooltip = delegate(UITooltip a)
40 {
41 string text = q.interaction.GetType().ToString() + "\n";
42 text += q.interaction.status;
43 a.textMain.SetText(text);
44 };
45 uIButton.transform.DOScale(0f, 0.2f).From();
46 }
47
48 public void OnRemove(Queue q)
49 {
50 if (!q.button.interactable)
51 {
52 return;
53 }
54 q.button.interactable = false;
55 q.button.transform.DOScale(0f, 0.3f).OnComplete(delegate
56 {
57 if ((bool)q.button.gameObject)
58 {
59 Object.DestroyImmediate(q.button.gameObject);
60 }
61 });
62 }
63
64 public void OnSetOwner()
65 {
66 if (!mold)
67 {
68 mold = layout.CreateMold<UIButton>();
69 }
70 layout.DestroyChildren();
71 }
72
73 private void Update()
74 {
76 {
78 }
79 }
80}
virtual bool IsRunning
Definition: AIAct.cs:31
Status status
Definition: AIAct.cs:16
override string ToString()
Definition: AIAct.cs:124
Definition: EMono.cs:4
static Player player
Definition: EMono.cs:11
QueueManager queues
Definition: Player.cs:1010
Queue currentQueue
Definition: QueueManager.cs:12
List< Queue > list
Definition: QueueManager.cs:7
void Cancel(Queue q)
Definition: QueueManager.cs:68
Definition: Queue.cs:2
UIButton button
Definition: Queue.cs:5
AIAct interaction
Definition: Queue.cs:3
bool CanCancel
Definition: Queue.cs:12
UIButton mold
Definition: UIQueue.cs:11
void OnSetOwner()
Definition: UIQueue.cs:64
static UIQueue Instance
Definition: UIQueue.cs:7
LayoutGroup layout
Definition: UIQueue.cs:9
void OnRemove(Queue q)
Definition: UIQueue.cs:48
void OnAdd(Queue q, bool insert=false)
Definition: UIQueue.cs:25
void OnDisable()
Definition: UIQueue.cs:20
void Update()
Definition: UIQueue.cs:73
void OnEnable()
Definition: UIQueue.cs:15
QueueManager queues
Definition: UIQueue.cs:13
void SetText(string s)
Definition: UIText.cs:159
UIText textMain
Definition: UITooltip.cs:17