Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
UIHangIcon.cs
Go to the documentation of this file.
1using UnityEngine;
2using UnityEngine.UI;
3
4public class UIHangIcon : EMono
5{
6 public Image image;
7
9
10 public string id;
11
12 public bool rightClick;
13
14 public bool windowCorner;
15
16 private Sprite original;
17
18 public static Sprite lastCorner;
19
20 private void Awake()
21 {
22 if (!image && (bool)button)
23 {
24 image = button.image;
25 }
26 original = image.sprite;
27 if ((bool)button && !rightClick)
28 {
29 button.onClick.AddListener(OnClick);
30 }
31 Refresh();
32 }
33
34 public void OnClickCorner()
35 {
36 SE.Play("Ambience/Random/windchime1");
37 }
38
39 public void OnClick()
40 {
42 {
43 return;
44 }
46 if (EMono.ui.contextMenu.isActive)
47 {
48 EMono.ui.contextMenu.currentMenu.Hide();
50 }
51 LayerCollectible layerCollectible = EMono.ui.ToggleLayer<LayerCollectible>();
52 if (layerCollectible == null)
53 {
54 return;
55 }
56 EMono.ui.hud.hint.Show("h_hang");
57 layerCollectible.onClick = delegate(Hoard.Item a)
58 {
59 EMono.player.hangIcons[id] = a.id;
60 if (this != null && base.gameObject != null)
61 {
62 Refresh();
63 }
64 return true;
65 };
66 }
67
68 public void Refresh()
69 {
70 if (!Core.Instance)
71 {
72 return;
73 }
75 {
76 image.sprite = (lastCorner = EMono.core.refs.spritesCorner.NextItem(lastCorner));
77 }
78 else
79 {
80 string str = ((!windowCorner) ? EMono.player.hangIcons.TryGetValue(id) : EMono.player.hoard.items.RandomItem()?.id);
81 if (!str.IsEmpty())
82 {
83 image.sprite = EMono.player.hoard.GetSprite(str);
84 }
85 }
86 image.SetNativeSize();
87 }
88}
static ActionMode DefaultMode
Definition: ActionMode.cs:7
void Activate(bool toggle=true, bool forceActivate=false)
Definition: ActionMode.cs:339
void Consume()
Definition: ButtonState.cs:184
new UISetting ui
Definition: CoreConfig.cs:588
List< Sprite > spritesCorner
Definition: CoreRef.cs:349
Definition: Core.cs:14
CoreRef refs
Definition: Core.cs:51
static new Core Instance
Definition: Core.cs:15
bool IsGameStarted
Definition: Core.cs:84
CoreConfig config
Definition: Core.cs:70
Definition: EInput.cs:8
static ButtonState rightMouse
Definition: EInput.cs:351
Definition: EMono.cs:4
static Core core
Definition: EMono.cs:5
static Player player
Definition: EMono.cs:11
static UI ui
Definition: EMono.cs:15
Definition: Hoard.cs:8
Sprite GetSprite(string id)
Definition: Hoard.cs:211
Dictionary< string, Item > items
Definition: Hoard.cs:106
Dictionary< string, string > hangIcons
Definition: Player.cs:844
Hoard hoard
Definition: Player.cs:892
static Sprite lastCorner
Definition: UIHangIcon.cs:18
UIButton button
Definition: UIHangIcon.cs:8
bool windowCorner
Definition: UIHangIcon.cs:14
void OnClickCorner()
Definition: UIHangIcon.cs:34
Sprite original
Definition: UIHangIcon.cs:16
void Refresh()
Definition: UIHangIcon.cs:68
bool rightClick
Definition: UIHangIcon.cs:12
string id
Definition: UIHangIcon.cs:10
Image image
Definition: UIHangIcon.cs:6
void OnClick()
Definition: UIHangIcon.cs:39
void Awake()
Definition: UIHangIcon.cs:20