Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
ButtonHotItem.cs
Go to the documentation of this file.
1using System;
2using UnityEngine;
3using UnityEngine.UI;
4
6{
7 [NonSerialized]
8 public new int index;
9
11
12 public override float extFixY => 10f;
13
14 public override void RefreshItem()
15 {
16 HotItem item = base.item as HotItem;
17 bool flag = item != null;
19 base.onClick.RemoveAllListeners();
20 dragParent = ((flag && widget.CanRegisterItem) ? widget : null);
21 icon.enabled = flag;
22 base.interactable = flag || widget.CanRegisterItem || !widget.IsSealed;
23 if (flag && item.Hidden)
24 {
25 icon.enabled = false;
26 base.interactable = false;
27 }
29 base.image.sprite = Core.Instance.refs.spritesHighlight[0];
30 base.transition = item?.Transition ?? Transition.SpriteSwap;
31 if (flag)
32 {
33 item.button = this;
34 item.hotbar = widget.hotbar;
35 base.onClick.AddListener(delegate
36 {
37 if (EClass.ui.BlockInput)
38 {
39 SE.BeepSmall();
40 }
42 {
44 }
45 else
46 {
47 if (!widget.Visible)
48 {
50 }
51 UIButton.buttonPos = base.transform.position;
53 EInput.Consume(0);
54 }
55 });
56 onRightClick = delegate
57 {
58 item.OnRightClick(this);
59 };
60 tooltip.enable = !item.TextTip.IsEmpty();
61 tooltip.offset = new Vector3(0f, (widget.transform.position.y < 200f) ? 70 : (-20), 0f);
62 tooltip.onShowTooltip = delegate(UITooltip t)
63 {
64 string textTip = item.TextTip;
65 t.textMain.text = textTip;
66 };
67 icon.material = (item.UseUIObjMaterial ? EClass.core.refs.matUIObj : null);
68 item.SetImage(icon);
69 Refresh();
70 return;
71 }
72 subText.SetActive(enable: false);
73 tooltip.enable = false;
74 base.onClick.AddListener(delegate
75 {
76 if (EClass.ui.BlockInput)
77 {
78 SE.BeepSmall();
79 }
81 {
82 RegisterHotbar();
83 }
84 else
85 {
86 widget.OnClickEmptyItem(this);
87 }
88 });
89 onRightClick = null;
90 }
91
92 public void Refresh()
93 {
94 if (item != null)
95 {
96 HotItem hotItem = item as HotItem;
97 if ((bool)subText)
98 {
99 hotItem.SetSubText(subText);
100 }
101 if (hotItem.Thing != null)
102 {
103 card = hotItem.Thing;
104 }
105 }
106 }
107
108 public void RegisterHotbar()
109 {
110 SE.SelectHotitem();
112 Core.Instance.ui.RemoveLayer<LayerRegisterHotbar>();
113 }
114
115 public override void OnHover()
116 {
118 {
119 base.OnHover();
120 }
121 }
122}
if(item3.idFile==idFirstFile &&item3.id==idFirstTopic)
Definition: UIBook.cs:627
IDragParent dragParent
Card card
Definition: ButtonGrid.cs:24
WidgetHotbar widget
override void RefreshItem()
override float extFixY
new int index
Definition: ButtonHotItem.cs:8
void RegisterHotbar()
override void OnHover()
List< Sprite > spritesHighlight
Definition: CoreRef.cs:355
Definition: Core.cs:14
CoreRef refs
Definition: Core.cs:51
static new Core Instance
Definition: Core.cs:15
UI ui
Definition: Core.cs:63
Definition: EClass.cs:5
static UI ui
Definition: EClass.cs:16
Definition: EInput.cs:8
static void Consume(int _skipFrame)
Definition: EInput.cs:656
virtual Thing Thing
Definition: HotItem.cs:38
bool IsUserHotbar
Definition: Hotbar.cs:102
virtual void OnClick(UIButton b)
Definition: UIButton.cs:68
virtual bool Hidden
Definition: UIButton.cs:37
virtual Transition Transition
Definition: UIButton.cs:39
virtual void SetSubText(UIText t)
Definition: UIButton.cs:76
virtual string TextTip
Definition: UIButton.cs:17
UIText subText
Definition: UIButton.cs:104
bool instantClick
Definition: UIButton.cs:124
Image icon
Definition: UIButton.cs:110
UIText mainText
Definition: UIButton.cs:102
Action onRightClick
Definition: UIButton.cs:146
Item item
Definition: UIButton.cs:172
void SetItem(ButtonHotItem b, HotItem item)
Hotbar hotbar
Definition: WidgetHotbar.cs:65
static HotItem registeringItem
Definition: WidgetHotbar.cs:34
void ToggleVisible()
static bool registering
Definition: WidgetHotbar.cs:30
bool CanRegisterItem
Definition: WidgetHotbar.cs:83
bool IsSealed
Definition: Widget.cs:185