Elin Modding Docs Doc
All Classes Namespaces
WidgetQuestTracker.cs
1using System;
2using System.Collections.Generic;
3using UnityEngine.UI;
4
5// Token: 0x02000631 RID: 1585
7{
8 // Token: 0x06002C66 RID: 11366 RVA: 0x000F90B3 File Offset: 0x000F72B3
9 private void OnEnable()
10 {
11 base.InvokeRepeating("Refresh", 0.5f, 0.5f);
12 }
13
14 // Token: 0x06002C67 RID: 11367 RVA: 0x000F90CA File Offset: 0x000F72CA
15 private void OnDisable()
16 {
17 base.CancelInvoke();
18 }
19
20 // Token: 0x06002C68 RID: 11368 RVA: 0x000F90D2 File Offset: 0x000F72D2
21 public override void OnActivate()
22 {
23 WidgetQuestTracker.Instance = this;
24 this.Refresh();
25 }
26
27 // Token: 0x06002C69 RID: 11369 RVA: 0x000F90E0 File Offset: 0x000F72E0
28 public void Refresh()
29 {
30 if (EMono.game.isLoading || !EMono._zone.isStarted || LayerDrama.Instance)
31 {
32 return;
33 }
34 foreach (Quest quest in EMono.game.quests.list)
35 {
36 if (quest.track)
37 {
38 ItemQuestTracker itemQuestTracker = null;
39 foreach (ItemQuestTracker itemQuestTracker2 in this.items)
40 {
41 if (itemQuestTracker2.quest == quest)
42 {
43 itemQuestTracker = itemQuestTracker2;
44 break;
45 }
46 }
47 if (!(itemQuestTracker != null))
48 {
49 itemQuestTracker = Util.Instantiate<ItemQuestTracker>(this.mold, this.layout);
50 itemQuestTracker.SetActive(false);
51 itemQuestTracker.quest = quest;
52 this.items.Add(itemQuestTracker);
53 }
54 }
55 }
56 this.items.ForeachReverse(delegate(ItemQuestTracker i)
57 {
58 i.Refresh();
59 });
60 this.RebuildLayout(false);
61 if (this.items.Count == 0)
62 {
63 EMono.ui.widgets.DeactivateWidget(this);
64 return;
65 }
66 EMono.player.questTracker = true;
67 }
68
69 // Token: 0x06002C6A RID: 11370 RVA: 0x000F9244 File Offset: 0x000F7444
70 public static void Show()
71 {
72 if (!EMono.ui.widgets.GetWidget("QuestTracker"))
73 {
74 EMono.ui.widgets.Toggle("QuestTracker");
75 }
76 }
77
78 // Token: 0x06002C6B RID: 11371 RVA: 0x000F9278 File Offset: 0x000F7478
79 public static bool TryShow()
80 {
81 bool flag = false;
82 using (List<Quest>.Enumerator enumerator = EMono.game.quests.list.GetEnumerator())
83 {
84 while (enumerator.MoveNext())
85 {
86 if (enumerator.Current.track)
87 {
88 flag = true;
89 }
90 }
91 }
92 if (flag || EMono.ui.widgets.GetWidget("QuestTracker"))
93 {
94 Widget widget = EMono.ui.widgets.Toggle("QuestTracker");
95 if (widget != null)
96 {
97 widget.SoundActivate();
98 }
99 return false;
100 }
101 if (!EMono.ui.GetLayer<LayerJournal>(false))
102 {
103 EMono.ui.ToggleLayer<LayerJournal>(null).SwitchContent(0, 0);
104 }
105 return true;
106 }
107
108 // Token: 0x040018DF RID: 6367
109 public static WidgetQuestTracker Instance;
110
111 // Token: 0x040018E0 RID: 6368
112 public List<ItemQuestTracker> items;
113
114 // Token: 0x040018E1 RID: 6369
115 public ItemQuestTracker mold;
116
117 // Token: 0x040018E2 RID: 6370
118 public LayoutGroup layout;
119}
Definition EMono.cs:6
Definition Quest.cs:8