Elin Decompiled Documentation EA 23.102 Nightly
Loading...
Searching...
No Matches
HotItemActionMode.cs
Go to the documentation of this file.
1using Newtonsoft.Json;
2
4{
5 [JsonProperty]
6 public string id;
7
8 public override string Name => id.lang();
9
10 public override string pathSprite => "icon_" + id;
11
12 public override bool KeepVisibleWhenHighlighted => true;
13
14 public static void Execute(string id)
15 {
16 switch (id)
17 {
18 case "Inspect":
20 {
22 }
23 else
24 {
25 ActionMode.Inspect.Activate(toggle: false);
26 }
27 break;
28 case "Cut":
29 ActionMode.Cut.Activate(toggle: false);
30 break;
31 case "Mine":
32 ActionMode.Mine.Activate(toggle: false);
33 break;
34 case "StateEditor":
35 ActionMode.StateEditor.Activate(toggle: false);
36 break;
37 case "Dig":
39 break;
40 case "DigFloor":
41 ActionMode.Dig.Activate(TaskDig.Mode.RemoveFloor);
42 break;
43 case "RemoveDesignation":
45 break;
46 case "Deconstruct":
47 ActionMode.Deconstruct.Activate(toggle: false);
48 break;
49 case "EditArea":
50 ActionMode.EditArea.Activate(toggle: false);
51 break;
52 case "Picker":
53 ActionMode.Picker.Activate(toggle: false);
54 break;
55 case "Terrain":
56 ActionMode.Terrain.Activate(toggle: false);
57 break;
58 case "Populate":
59 ActionMode.Populate.Activate(toggle: false);
60 break;
61 case "EditMarker":
62 ActionMode.EditMarker.Activate(toggle: false);
63 break;
64 case "Visibility":
65 ActionMode.Visibility.Activate(toggle: false);
66 break;
67 case "Cinema":
68 ActionMode.Cinema.Activate(toggle: false);
69 break;
70 case "FlagCell":
71 ActionMode.FlagCell.Activate(toggle: false);
72 break;
73 case "ExitBuild":
74 ActionMode.DefaultMode.Activate(toggle: false);
75 break;
76 case "Copy":
77 ActionMode.Copy.Activate(toggle: false);
78 break;
79 }
80 }
81
82 public override void OnClick(ButtonHotItem b, Hotbar h)
83 {
84 Execute(id);
85 }
86
87 public override bool ShouldHighlight()
88 {
89 ActionMode actionMode = EClass.scene.actionMode;
90 switch (id)
91 {
92 case "Inspect":
93 if (actionMode != ActionMode.Inspect)
94 {
95 return actionMode == ActionMode.Build;
96 }
97 return true;
98 case "Cut":
99 return actionMode == ActionMode.Cut;
100 case "Mine":
101 return actionMode == ActionMode.Mine;
102 case "Dig":
103 if (actionMode == ActionMode.Dig)
104 {
105 return ActionMode.Dig.mode == TaskDig.Mode.Default;
106 }
107 return false;
108 case "DigFloor":
109 if (actionMode == ActionMode.Dig)
110 {
111 return ActionMode.Dig.mode == TaskDig.Mode.RemoveFloor;
112 }
113 return false;
114 case "RemoveDesignation":
115 return actionMode == ActionMode.RemoveDesignation;
116 case "StateEditor":
117 return actionMode == ActionMode.StateEditor;
118 case "Deconstruct":
119 return actionMode == ActionMode.Deconstruct;
120 case "Picker":
121 return actionMode == ActionMode.Picker;
122 case "EditArea":
123 if (actionMode != ActionMode.EditArea && actionMode != ActionMode.CreateArea)
124 {
125 return actionMode == ActionMode.ExpandArea;
126 }
127 return true;
128 case "Terrain":
129 return actionMode == ActionMode.Terrain;
130 case "EditMarker":
131 return actionMode == ActionMode.EditMarker;
132 case "Populate":
133 return actionMode == ActionMode.Populate;
134 case "Visibility":
135 return actionMode == ActionMode.Visibility;
136 case "Cinema":
137 return actionMode == ActionMode.Cinema;
138 case "Copy":
139 return actionMode == ActionMode.Copy;
140 case "FlagCell":
141 return actionMode == ActionMode.FlagCell;
142 default:
143 return false;
144 }
145 }
146}
void Activate(TaskDig.Mode _mode)
Definition: AM_Dig.cs:27
void Activate(TaskMine.Mode _mode)
Definition: AM_Mine.cs:43
void Activate(Thing t)
static AM_Inspect Inspect
Definition: ActionMode.cs:23
static AM_Copy Copy
Definition: ActionMode.cs:45
static AM_RemoveDesignation RemoveDesignation
Definition: ActionMode.cs:61
static AM_Picker Picker
Definition: ActionMode.cs:43
static AM_Cut Cut
Definition: ActionMode.cs:39
static AM_StateEditor StateEditor
Definition: ActionMode.cs:41
static AM_Build Build
Definition: ActionMode.cs:49
static AM_ExpandArea ExpandArea
Definition: ActionMode.cs:55
static ActionMode DefaultMode
Definition: ActionMode.cs:7
static AM_EditArea EditArea
Definition: ActionMode.cs:53
static AM_Populate Populate
Definition: ActionMode.cs:67
void Activate(bool toggle=true, bool forceActivate=false)
Definition: ActionMode.cs:339
static AM_FlagCell FlagCell
Definition: ActionMode.cs:77
virtual bool IsBuildMode
Definition: ActionMode.cs:181
static AM_Visibility Visibility
Definition: ActionMode.cs:71
static AM_Dig Dig
Definition: ActionMode.cs:35
static AM_Terrain Terrain
Definition: ActionMode.cs:65
static AM_Deconstruct Deconstruct
Definition: ActionMode.cs:57
static AM_Cinema Cinema
Definition: ActionMode.cs:73
static AM_EditMarker EditMarker
Definition: ActionMode.cs:69
static AM_CreateArea CreateArea
Definition: ActionMode.cs:51
static AM_Mine Mine
Definition: ActionMode.cs:33
static void Toggle()
Definition: BuildMenu.cs:93
Definition: EClass.cs:5
static Scene scene
Definition: EClass.cs:30
override void OnClick(ButtonHotItem b, Hotbar h)
override bool KeepVisibleWhenHighlighted
override string Name
override bool ShouldHighlight()
override string pathSprite
static void Execute(string id)
Definition: Hotbar.cs:5
ActionMode actionMode
Definition: Scene.cs:77
Mode
Definition: TaskDig.cs:4