Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
CursorSystem.cs
Go to the documentation of this file.
1using System.Collections.Generic;
2using UnityEngine;
3
4public class CursorSystem : MonoBehaviour
5{
6 public static CursorSystem Instance;
7
8 public static CursorInfo currentCursor;
9
10 public static CursorInfo lastCursor;
11
12 public static CursorInfo leftIcon;
13
14 public static CursorInfo lastLeftIcon;
15
16 public static CursorInfo arrowIcon;
17
19
20 public static float leftIconAngle;
21
22 public static Vector3 position;
23
24 public static Vector3 posOrigin;
25
26 public static int ignoreCount;
27
28 public List<CursorInfo> cursors;
29
30 public List<CursorInfo> icons;
31
32 public List<CursorInfo> arrows;
33
34 public SpriteRenderer srArrow;
35
36 public SpriteRenderer srLeftIcon;
37
38 public bool showArrowOrigin;
39
40 public bool iconHidesCursor;
41
42 public bool disable;
43
44 private static int priority;
45
46 public static CursorInfo Arrow => Instance.cursors[0];
47
48 public static CursorInfo ResizeNS => Instance.cursors[1];
49
50 public static CursorInfo ResizeWE => Instance.cursors[2];
51
53
55
56 public static CursorInfo Move => Instance.cursors[5];
57
58 public static CursorInfo Select => Instance.cursors[6];
59
60 public static CursorInfo Hand => Instance.cursors[7];
61
62 public static CursorInfo Cut => Instance.cursors[8];
63
64 public static CursorInfo Mine => Instance.cursors[9];
65
66 public static CursorInfo Dig => Instance.cursors[10];
67
68 public static CursorInfo Cancel => Instance.cursors[11];
69
70 public static CursorInfo Build => Instance.cursors[12];
71
72 public static CursorInfo Picker => Instance.cursors[13];
73
74 public static CursorInfo Eye => Instance.cursors[14];
75
76 public static CursorInfo Notice => Instance.cursors[15];
77
78 public static CursorInfo Door => Instance.cursors[16];
79
80 public static CursorInfo Kick => Instance.cursors[17];
81
82 public static CursorInfo Container => Instance.cursors[18];
83
84 public static CursorInfo Lock => Instance.cursors[19];
85
86 public static CursorInfo MoveZone => Instance.cursors[20];
87
88 public static CursorInfo Target => Instance.cursors[21];
89
90 public static CursorInfo Craft => Instance.cursors[22];
91
92 public static CursorInfo Inventory => Instance.cursors[23];
93
94 public static CursorInfo Wait => Instance.cursors[24];
95
96 public static CursorInfo See => Instance.cursors[25];
97
98 public static CursorInfo Question => Instance.cursors[26];
99
100 public static CursorInfo Invalid => Instance.cursors[27];
101
102 public static CursorInfo Action => Instance.cursors[7];
103
104 public static CursorInfo IconArrow => Instance.icons[0];
105
106 public static CursorInfo IconMelee => Instance.icons[1];
107
108 public static CursorInfo IconRange => Instance.icons[2];
109
110 public static CursorInfo IconCut => Instance.icons[3];
111
112 public static CursorInfo IconMine => Instance.icons[4];
113
114 public static CursorInfo IconGear => Instance.icons[5];
115
116 public static CursorInfo IconChat => Instance.icons[6];
117
118 public static void SetCursor(CursorInfo info = null, int _priority = 0)
119 {
120 if (ignoreCount <= 0 && _priority >= priority)
121 {
122 priority = _priority;
123 if (info == null)
124 {
126 }
127 else
128 {
129 currentCursor = info;
130 }
131 }
132 }
133
134 public void Draw()
135 {
136 if (disable)
137 {
138 return;
139 }
140 ignoreCount--;
141 base.transform.position = position;
142 priority = 0;
144 {
145 Cursor.SetCursor(currentCursor.Texture, currentCursor.Hotspot, CursorMode.Auto);
147 }
148 if (leftIcon != lastLeftIcon)
149 {
150 if (leftIcon == null)
151 {
152 srLeftIcon.SetActive(enable: false);
153 }
154 else
155 {
156 srLeftIcon.SetActive(enable: true);
157 srLeftIcon.sprite = leftIcon.sprite;
158 }
160 }
161 srLeftIcon.transform.SetEulerAnglesZ(leftIconAngle);
162 }
163
164 public void Awake()
165 {
166 Instance = this;
167 SetCursor();
168 srLeftIcon.SetActive(enable: false);
169 srArrow.SetActive(enable: false);
170 }
171}
Sprite sprite
Definition: CursorInfo.cs:9
Vector2 Hotspot
Definition: CursorInfo.cs:11
Texture2D Texture
Definition: CursorInfo.cs:13
static CursorInfo IconMelee
static CursorInfo lastArrowIcon
Definition: CursorSystem.cs:18
List< CursorInfo > cursors
Definition: CursorSystem.cs:28
static CursorInfo Door
Definition: CursorSystem.cs:78
static int ignoreCount
Definition: CursorSystem.cs:26
static CursorInfo lastLeftIcon
Definition: CursorSystem.cs:14
static CursorInfo arrowIcon
Definition: CursorSystem.cs:16
static CursorInfo IconMine
static CursorInfo Arrow
Definition: CursorSystem.cs:46
static CursorInfo Action
List< CursorInfo > arrows
Definition: CursorSystem.cs:32
static CursorInfo Dig
Definition: CursorSystem.cs:66
static CursorInfo Craft
Definition: CursorSystem.cs:90
static CursorInfo Cut
Definition: CursorSystem.cs:62
bool iconHidesCursor
Definition: CursorSystem.cs:40
static CursorInfo Container
Definition: CursorSystem.cs:82
static CursorInfo leftIcon
Definition: CursorSystem.cs:12
static CursorInfo Invalid
static CursorInfo Target
Definition: CursorSystem.cs:88
static CursorInfo IconGear
SpriteRenderer srLeftIcon
Definition: CursorSystem.cs:36
static CursorInfo Eye
Definition: CursorSystem.cs:74
static CursorInfo IconCut
static CursorInfo Question
Definition: CursorSystem.cs:98
static CursorInfo Build
Definition: CursorSystem.cs:70
static CursorInfo Move
Definition: CursorSystem.cs:56
static Vector3 position
Definition: CursorSystem.cs:22
static CursorInfo currentCursor
Definition: CursorSystem.cs:8
static float leftIconAngle
Definition: CursorSystem.cs:20
static CursorInfo Picker
Definition: CursorSystem.cs:72
static CursorInfo See
Definition: CursorSystem.cs:96
static CursorInfo IconRange
static CursorInfo Select
Definition: CursorSystem.cs:58
static CursorInfo Lock
Definition: CursorSystem.cs:84
static CursorInfo Hand
Definition: CursorSystem.cs:60
static CursorInfo Mine
Definition: CursorSystem.cs:64
static CursorInfo Kick
Definition: CursorSystem.cs:80
static CursorInfo ResizeWE
Definition: CursorSystem.cs:50
SpriteRenderer srArrow
Definition: CursorSystem.cs:34
static CursorInfo ResizeNWSE
Definition: CursorSystem.cs:52
static void SetCursor(CursorInfo info=null, int _priority=0)
static CursorInfo Inventory
Definition: CursorSystem.cs:92
static CursorInfo IconArrow
static CursorSystem Instance
Definition: CursorSystem.cs:6
static CursorInfo Notice
Definition: CursorSystem.cs:76
static CursorInfo ResizeNS
Definition: CursorSystem.cs:48
static CursorInfo MoveZone
Definition: CursorSystem.cs:86
bool showArrowOrigin
Definition: CursorSystem.cs:38
static Vector3 posOrigin
Definition: CursorSystem.cs:24
static CursorInfo IconChat
static CursorInfo lastCursor
Definition: CursorSystem.cs:10
List< CursorInfo > icons
Definition: CursorSystem.cs:30
static int priority
Definition: CursorSystem.cs:44
static CursorInfo ResizeNESW
Definition: CursorSystem.cs:54
static CursorInfo Cancel
Definition: CursorSystem.cs:68
Definition: Wait.cs:2