9 public override object CreateExtra()
25 public static void Toggle(
Element e)
27 if (e.owner !=
EMono.pc.elements)
32 HashSet<int> trackedElements =
EMono.player.trackedElements;
33 if (trackedElements.Contains(e.id))
35 trackedElements.Remove(e.id);
43 trackedElements.Add(e.id);
46 EMono.ui.widgets.ActivateWidget(
"Tracker");
57 public override void OnActivate()
59 WidgetTracker.Instance =
this;
64 private void OnEnable()
66 base.InvokeRepeating(
"Refresh", 0.5f, 0.5f);
70 private void OnDisable()
79 HashSet<int> trackedElements =
EMono.player.trackedElements;
80 if (trackedElements.Count == 0)
82 this.sb.Append(
"none".lang());
86 int num = trackedElements.Last<
int>();
87 foreach (
int num2
in trackedElements)
92 string text = element.Name +
" " + element.Value.ToString();
95 text = text +
"." + (element.vExp / 10).ToString(
"D2");
97 if (this.extra.potential)
99 text += (
" (" + element.Potential.ToString() +
")").TagSize(13);
105 this.sb.Append(text);
109 if (this.sb.Equals(
this.lastSb))
113 this.text.text = this.sb.ToString();
114 this.lastSb.Set(this.sb);
115 this.RebuildLayout(
false);
119 public override void OnSetContextMenu(UIContextMenu m)
121 m.AddToggle(
"showPotential", this.extra.potential, delegate(
bool a)
123 this.extra.potential = a;
126 m.AddButton(
"clear", delegate()
128 EMono.player.trackedElements.Clear();
129 EMono.ui.widgets.DeactivateWidget(
this);
131 base.SetBaseContextMenu(m);
138 private FastString sb =
new FastString(32);
141 private FastString lastSb =
new FastString(32);
150 public bool potential;