forked from TehCheat/BuffUtil
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBuffUtilSettings.cs
More file actions
253 lines (167 loc) · 9.49 KB
/
BuffUtilSettings.cs
File metadata and controls
253 lines (167 loc) · 9.49 KB
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
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
using System.Windows.Forms;
using ExileCore.Shared.Interfaces;
using ExileCore.Shared.Nodes;
using ExileCore.Shared.Attributes;
namespace BuffUtil
{
public class BuffUtilSettings : ISettings
{
public BuffUtilSettings()
{
Enable = new ToggleNode(false);
BloodRage = new ToggleNode(false);
BloodRageKey = new HotkeyNode(Keys.E);
BloodRageMaxHP = new RangeNode<int>(100, 0, 100);
BloodRageMaxMP = new RangeNode<int>(100, 0, 100);
SteelSkin = new ToggleNode(false);
SteelSkinKey = new HotkeyNode(Keys.W);
SteelSkinMaxHP = new RangeNode<int>(90, 0, 100);
ImmortalCall = new ToggleNode(false);
ImmortalCallKey = new HotkeyNode(Keys.T);
ImmortalCallMaxHP = new RangeNode<int>(50, 0, 100);
MoltenShell = new ToggleNode(false);
MoltenShellKey = new HotkeyNode(Keys.Q);
MoltenShellMaxHP = new RangeNode<int>(50, 0, 100);
PhaseRun = new ToggleNode(false);
PhaseRunKey = new HotkeyNode(Keys.R);
PhaseRunMaxHP = new RangeNode<int>(90, 0, 100);
PhaseRunMinMoveTime = new RangeNode<int>(0, 0, 5000);
PhaseRunMinBVStacks = new RangeNode<int>(0, 0, 10);
WitheringStep = new ToggleNode(false);
WitheringStepKey = new HotkeyNode(Keys.R);
WitheringStepMaxHP = new RangeNode<int>(90, 0, 100);
WitheringStepMinMoveTime = new RangeNode<int>(0, 0, 5000);
Berserk = new ToggleNode(false);
BerserkKey = new HotkeyNode(Keys.R);
BerserkMinRage = new RangeNode<int>(5, 5, 50);
BerserkNearbyEnemiesCount = new RangeNode<int>(1, 0, 50);
BerserkUseOnUniqueBoss = new ToggleNode(true);
Warcry = new ToggleNode(false);
WarcryKey = new HotkeyNode(Keys.R);
WarCryMinRage = new RangeNode<int>(0, 0, 50);
WarCryMaxRage = new RangeNode<int>(24, 0, 100);
WarcryNearbyEnemiesCount = new RangeNode<int>(1, 0, 50);
WarcryUseOnUniqueBoss = new ToggleNode(true);
WarcryUseAlways = new ToggleNode(false);
BladeFlurry = new ToggleNode(false);
BladeFlurryMinCharges = new RangeNode<int>(6, 1, 6);
BladeFlurryUseLeftClick = new ToggleNode(false);
BladeFlurryWaitForInfused = new ToggleNode(true);
ScourgeArrow = new ToggleNode(false);
ScourgeArrowMinCharges = new RangeNode<int>(5, 1, 6);
ScourgeArrowUseLeftClick = new ToggleNode(false);
ScourgeArrowWaitForInfused = new ToggleNode(true);
RequireMinMonsterCount = new ToggleNode(false);
NearbyMonsterCount = new RangeNode<int>(1, 1, 30);
NearbyMonsterMaxDistance = new RangeNode<int>(500, 1, 2000);
DisableInHideout = new ToggleNode(true);
Debug = new ToggleNode(false);
SilenceErrors = new ToggleNode(false);
}
#region Blood Rage
public ToggleNode Enable { get; set; }
[Menu("Blood Rage", 1)] public ToggleNode BloodRage { get; set; }
[Menu("Blood Rage Key", "Which key to press to activate Blood Rage?", 11, 1)]
public HotkeyNode BloodRageKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 12, 1)]
public RangeNode<int> BloodRageMaxHP { get; set; }
[Menu("Max Mana", "Mana percent above which skill is not cast", 13, 1)]
public RangeNode<int> BloodRageMaxMP { get; set; }
#endregion
#region Steel Skin
[Menu("Steel Skin", 2)] public ToggleNode SteelSkin { get; set; }
[Menu("Steel Skin Key", 21, 2)] public HotkeyNode SteelSkinKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 22, 2)]
public RangeNode<int> SteelSkinMaxHP { get; set; }
#endregion
#region Immortal Call
[Menu("Immortal Call", 3)] public ToggleNode ImmortalCall { get; set; }
[Menu("Immortal Call Key", 31, 3)] public HotkeyNode ImmortalCallKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 32, 3)]
public RangeNode<int> ImmortalCallMaxHP { get; set; }
#endregion
#region Molten Shell
[Menu("Molten Shell", 4)] public ToggleNode MoltenShell { get; set; }
[Menu("Molten Shell Key", 41, 4)] public HotkeyNode MoltenShellKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 42, 4)]
public RangeNode<int> MoltenShellMaxHP { get; set; }
#endregion
#region Phase Run
[Menu("Phase Run", 5)] public ToggleNode PhaseRun { get; set; }
[Menu("Phase Run Key", 51, 5)] public HotkeyNode PhaseRunKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 52, 5)]
public RangeNode<int> PhaseRunMaxHP { get; set; }
[Menu("Move time", "Time in ms spent moving after which skill can be cast", 53, 5)]
public RangeNode<int> PhaseRunMinMoveTime { get; set; }
[Menu("BV Stacks", "Blade Vortex stacks required to cast Phase Run", 54, 5)]
public RangeNode<int> PhaseRunMinBVStacks { get; set; }
#endregion
#region Withering Step
[Menu("Withering Step", 6)] public ToggleNode WitheringStep { get; set; }
[Menu("Withering Step Key", 61, 6)] public HotkeyNode WitheringStepKey { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 62, 6)]
public RangeNode<int> WitheringStepMaxHP { get; set; }
[Menu("Move time", "Time in ms spent moving after which skill can be cast", 63, 6)]
public RangeNode<int> WitheringStepMinMoveTime { get; set; }
#endregion
#region Berserk
[Menu("Berserk", 7)] public ToggleNode Berserk { get; set; }
[Menu("Berserk Key", 71, 7)] public HotkeyNode BerserkKey { get; set; }
[Menu("Min Rage", "Minimum amount of Rage charges to use", 72, 7)]
public RangeNode<int> BerserkMinRage { get; set; }
[Menu("Nearby monsters", "Nearby enemy monsters count to use", 73, 7)]
public RangeNode<int> BerserkNearbyEnemiesCount { get; set; }
[Menu("Unique bosses", "Use Berserk on Unique Bosses", 74, 7)]
public ToggleNode BerserkUseOnUniqueBoss { get; set; }
#endregion
#region Warcry
[Menu("Warcry", 8)] public ToggleNode Warcry { get; set; }
[Menu("Warcry Key", 81, 8)] public HotkeyNode WarcryKey { get; set; }
[Menu("MinRage", "Use if at least X amount of Rage charges", 82, 8)]
public RangeNode<int> WarCryMinRage { get; set; }
[Menu("Max Rage", "Use if at most X amount of Rage charges", 83, 8)]
public RangeNode<int> WarCryMaxRage { get; set; }
[Menu("Nearby monsters", "Nearby enemy monsters count to use", 84, 8)]
public RangeNode<int> WarcryNearbyEnemiesCount { get; set; }
[Menu("Unique bosses", "Use Berserk on Unique Bosses", 85, 8)]
public ToggleNode WarcryUseOnUniqueBoss { get; set; }
[Menu("Use always when ready", "Use always when ready (and matches Rage conditions)", 86, 8)]
public ToggleNode WarcryUseAlways { get; set; }
#endregion
#region Blade Flurry
[Menu("Blade Flurry", "Use mouse click to release Blade Flurry charges", 9)]
public ToggleNode BladeFlurry { get; set; }
[Menu("Min charges", "Minimal amount of BF charges to release", 91, 9)]
public RangeNode<int> BladeFlurryMinCharges { get; set; }
[Menu("Use left click", "Use left click instead of right click to release charges", 92, 9)]
public ToggleNode BladeFlurryUseLeftClick { get; set; }
[Menu("Wait for Infused Channeling buff", "Wait for Infused Channeling buff before release", 93, 9)]
public ToggleNode BladeFlurryWaitForInfused { get; set; }
#endregion
#region Scourge Arrow
[Menu("Scourge Arrow", "Use mouse click to release Scourge Arrow charges", 10)]
public ToggleNode ScourgeArrow { get; set; }
[Menu("Min charges", "Minimal amount of BF charges to release", 101, 10)]
public RangeNode<int> ScourgeArrowMinCharges { get; set; }
[Menu("Use left click", "Use left click instead of right click to release charges", 102, 10)]
public ToggleNode ScourgeArrowUseLeftClick { get; set; }
[Menu("Wait for Infused Channeling buff", "Wait for Infused Channeling buff before release", 103, 10)]
public ToggleNode ScourgeArrowWaitForInfused { get; set; }
#endregion
#region Misc
[Menu("Misc", 12)] public EmptyNode MiscSettings { get; set; }
[Menu("Nearby monsters", "Require a minimum count of nearby monsters to cast buffs?", 121, 12)]
public ToggleNode RequireMinMonsterCount { get; set; }
[Menu("Range", "Minimum count of nearby monsters to cast", 122, 12)]
public RangeNode<int> NearbyMonsterCount { get; set; }
[Menu("Range", "Max distance of monsters to player to count as nearby", 123, 12)]
public RangeNode<int> NearbyMonsterMaxDistance { get; set; }
[Menu("Disable in hideout", "Disable the plugin in hideout?", 124, 12)]
public ToggleNode DisableInHideout { get; set; }
[Menu("Debug", "Print debug messages?", 125, 12)]
public ToggleNode Debug { get; set; }
[Menu("Silence errors", "Hide error messages?", 126, 12)]
public ToggleNode SilenceErrors { get; set; }
#endregion
}
}