forked from daemitus/SomethingNeedDoing
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ICommandInterface.cs
193 lines (165 loc) · 7.04 KB
/
ICommandInterface.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
namespace SomethingNeedDoing.Misc;
/// <summary>
/// Miscellaneous functions that commands/scripts can use.
/// </summary>
public interface ICommandInterface
{
/// <summary>
/// Get a value indicating whether the player is crafting.
/// </summary>
/// <returns>True or false.</returns>
public bool IsCrafting();
/// <summary>
/// Get a value indicating whether the player is not crafting.
/// </summary>
/// <returns>True or false.</returns>
public bool IsNotCrafting();
/// <summary>
/// Get a value indicating whether the current craft is collectable.
/// </summary>
/// <returns>A value indicating whether the current craft is collectable.</returns>
public bool IsCollectable();
/// <summary>
/// Get the current synthesis condition.
/// </summary>
/// <param name="lower">A value indicating whether the result should be lowercased.</param>
/// <returns>The current synthesis condition.</returns>
public string GetCondition(bool lower = true);
/// <summary>
/// Get a value indicating whether the current condition is active.
/// </summary>
/// <param name="condition">The condition to check.</param>
/// <param name="lower">A value indicating whether the result should be lowercased.</param>
/// <returns>A value indcating whether the current condition is active.</returns>
public bool HasCondition(string condition, bool lower = true);
/// <summary>
/// Get the current progress value.
/// </summary>
/// <returns>The current progress value.</returns>
public int GetProgress();
/// <summary>
/// Get the max progress value.
/// </summary>
/// <returns>The max progress value.</returns>
public int GetMaxProgress();
/// <summary>
/// Get a value indicating whether max progress has been achieved.
/// This is useful when a crafting animation is finishing.
/// </summary>
/// <returns>A value indicating whether max progress has been achieved.</returns>
public bool HasMaxProgress();
/// <summary>
/// Get the current quality value.
/// </summary>
/// <returns>The current quality value.</returns>
public int GetQuality();
/// <summary>
/// Get the max quality value.
/// </summary>
/// <returns>The max quality value.</returns>
public int GetMaxQuality();
/// <summary>
/// Get a value indicating whether max quality has been achieved.
/// </summary>
/// <returns>A value indicating whether max quality has been achieved.</returns>
public bool HasMaxQuality();
/// <summary>
/// Get the current durability value.
/// </summary>
/// <returns>The current durability value.</returns>
public int GetDurability();
/// <summary>
/// Get the max durability value.
/// </summary>
/// <returns>The max durability value.</returns>
public int GetMaxDurability();
/// <summary>
/// Get the current CP amount.
/// </summary>
/// <returns>The current CP amount.</returns>
public int GetCp();
/// <summary>
/// Get the max CP amount.
/// </summary>
/// <returns>The max CP amount.</returns>
public int GetMaxCp();
/// <summary>
/// Get the current step value.
/// </summary>
/// <returns>The current step value.</returns>
public int GetStep();
/// <summary>
/// Get the current percent HQ (and collectable) value.
/// </summary>
/// <returns>The current percent HQ value.</returns>
public int GetPercentHQ();
/// <summary>
/// Gets a value indicating whether any of the player's worn equipment is broken.
/// </summary>
/// <param name="below">Return true if the gear durability is less than or eqal to this number.</param>
/// <returns>A value indicating whether any of the player's worn equipment is broken.</returns>
public bool NeedsRepair(float below = 0);
/// <summary>
/// Gets a value indicating whether any of the player's worn equipment can have materia extracted.
/// </summary>
/// <param name="within">Return false if the next highest spiritbond is >= this value.</param>
/// <returns>A value indicating whether any of the player's worn equipment can have materia extracted.</returns>
public bool CanExtractMateria(float within = 100);
/// <summary>
/// Gets a value indicating whether the required crafting stats have been met.
/// </summary>
/// <param name="craftsmanship">Craftsmanship.</param>
/// <param name="control">Control.</param>
/// <param name="cp">Crafting points.</param>
/// <returns>A value indcating whether the required crafting stats bave been met.</returns>
public bool HasStats(uint craftsmanship, uint control, uint cp);
/// <summary>
/// Gets a value indicating whether the given status is present on the player.
/// </summary>
/// <param name="statusName">Status name.</param>
/// <returns>A value indicating whether the given status is present on the player.</returns>
public bool HasStatus(string statusName);
/// <summary>
/// Gets a value indicating whether the given status is present on the player.
/// </summary>
/// <param name="statusIDs">Status IDs.</param>
/// <returns>A value indicating whether the given status is present on the player.</returns>
public bool HasStatusId(params uint[] statusIDs);
/// <summary>
/// Gets a value indicating whether an addon is visible.
/// </summary>
/// <param name="addonName">Addon name.</param>
/// <returns>A value indicating whether an addon is visible.</returns>
public bool IsAddonVisible(string addonName);
/// <summary>
/// Gets a value indicating whether an addon is ready to be used. It may not be visible.
/// </summary>
/// <param name="addonName">Addon name.</param>
/// <returns>A value indicating whether an addon is ready to be used.</returns>
public bool IsAddonReady(string addonName);
/// <summary>
/// Closes an open addon window.
/// </summary>
/// <param name="addonName">Addon name.</param>
public unsafe void CloseAddon(string addonName);
/// <summary>
/// Get the text of a TextNode by its index number. You can find this by using the addon inspector.
/// In general, these numbers do not change.
/// </summary>
/// <param name="addonName">Addon name.</param>
/// <param name="nodeNumbers">Node numbers, can fetch nested nodes.</param>
/// <returns>The node text.</returns>
public string GetNodeText(string addonName, params int[] nodeNumbers);
/// <summary>
/// Get the text of a 0-indexed SelectIconString entry.
/// </summary>
/// <param name="index">Item number, 0 indexed.</param>
/// <returns>The item text, or an empty string.</returns>
public string GetSelectStringText(int index);
/// <summary>
/// Get the text of a 0-indexed SelectIconString entry.
/// </summary>
/// <param name="index">Item number, 0 indexed.</param>
/// <returns>The item text, or an empty string.</returns>
public string GetSelectIconStringText(int index);
}