forked from 0xE0D59/BuffUtil
-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathBuffUtilSettings.cs
218 lines (147 loc) · 8.78 KB
/
BuffUtilSettings.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
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
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);
BloodRageConnectedSkill = new RangeNode<int>(1, 1, 13);
BloodRageMaxHP = new RangeNode<int>(100, 0, 100);
BloodRageMaxMP = new RangeNode<int>(100, 0, 100);
SteelSkin = new ToggleNode(false);
SteelSkinKey = new HotkeyNode(Keys.W);
SteelSkinConnectedSkill = new RangeNode<int>(1, 1, 13);
SteelSkinMaxHP = new RangeNode<int>(90, 0, 100);
ImmortalCall = new ToggleNode(false);
ImmortalCallKey = new HotkeyNode(Keys.T);
ImmortalCallConnectedSkill = new RangeNode<int>(1, 1, 13);
ImmortalCallMaxHP = new RangeNode<int>(50, 0, 100);
MoltenShell = new ToggleNode(false);
MoltenShellKey = new HotkeyNode(Keys.Q);
MoltenShellConnectedSkill = new RangeNode<int>(1, 1, 13);
MoltenShellMaxHP = new RangeNode<int>(50, 0, 100);
PhaseRun = new ToggleNode(false);
PhaseRunKey = new HotkeyNode(Keys.R);
PhaseRunConnectedSkill = new RangeNode<int>(1, 1, 13);
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);
WitheringStepConnectedSkill = new RangeNode<int>(1, 1, 13);
WitheringStepMaxHP = new RangeNode<int>(90, 0, 100);
WitheringStepMinMoveTime = new RangeNode<int>(0, 0, 5000);
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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 12, 1)]
public RangeNode<int> BloodRageConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 13, 1)]
public RangeNode<int> BloodRageMaxHP { get; set; }
[Menu("Max Mana", "Mana percent above which skill is not cast", 14, 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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 22, 2)]
public RangeNode<int> SteelSkinConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 23, 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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 32, 3)]
public RangeNode<int> ImmortalCallConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 33, 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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 42, 4)]
public RangeNode<int> MoltenShellConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 43, 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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 52, 5)]
public RangeNode<int> PhaseRunConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 53, 5)]
public RangeNode<int> PhaseRunMaxHP { get; set; }
[Menu("Move time", "Time in ms spent moving after which skill can be cast", 54, 5)]
public RangeNode<int> PhaseRunMinMoveTime { get; set; }
[Menu("BV Stacks", "Blade Vortex stacks required to cast Phase Run", 55, 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("Connected Skill", "Set the skill slot (1 = top left, 8 = bottom right)", 62, 6)]
public RangeNode<int> WitheringStepConnectedSkill { get; set; }
[Menu("Max HP", "HP percent above which skill is not cast", 63, 6)]
public RangeNode<int> WitheringStepMaxHP { get; set; }
[Menu("Move time", "Time in ms spent moving after which skill can be cast", 64, 6)]
public RangeNode<int> WitheringStepMinMoveTime { get; set; }
#endregion
#region Blade Flurry
[Menu("Blade Flurry", "Use mouse click to release Blade Flurry charges", 7)] public ToggleNode BladeFlurry { get; set; }
[Menu("Min charges", "Minimal amount of BF charges to release", 71, 7)]
public RangeNode<int> BladeFlurryMinCharges { get; set; }
[Menu("Use left click", "Use left click instead of right click to release charges", 72, 7)]
public ToggleNode BladeFlurryUseLeftClick { get; set; }
[Menu("Wait for Infused Channeling buff", "Wait for Infused Channeling buff before release", 73, 7)]
public ToggleNode BladeFlurryWaitForInfused { get; set; }
#endregion
#region Scourge Arrow
[Menu("Scourge Arrow", "Use mouse click to release Scourge Arrow charges", 8)] public ToggleNode ScourgeArrow { get; set; }
[Menu("Min charges", "Minimal amount of BF charges to release", 81, 8)]
public RangeNode<int> ScourgeArrowMinCharges { get; set; }
[Menu("Use left click", "Use left click instead of right click to release charges", 82, 8)]
public ToggleNode ScourgeArrowUseLeftClick { get; set; }
[Menu("Wait for Infused Channeling buff", "Wait for Infused Channeling buff before release", 83, 8)]
public ToggleNode ScourgeArrowWaitForInfused { get; set; }
#endregion
#region Misc
[Menu("Misc", 10)] public EmptyNode MiscSettings { get; set; }
[Menu("Nearby monsters", "Require a minimum count of nearby monsters to cast buffs?", 101, 10)]
public ToggleNode RequireMinMonsterCount { get; set; }
[Menu("Range", "Minimum count of nearby monsters to cast", 102, 10)]
public RangeNode<int> NearbyMonsterCount { get; set; }
[Menu("Range", "Max distance of monsters to player to count as nearby", 103, 10)]
public RangeNode<int> NearbyMonsterMaxDistance { get; set; }
[Menu("Disable in hideout", "Disable the plugin in hideout?", 104, 10)]
public ToggleNode DisableInHideout { get; set; }
[Menu("Debug", "Print debug messages?", 105, 10)]
public ToggleNode Debug { get; set; }
[Menu("Silence errors", "Hide error messages?", 106, 10)]
public ToggleNode SilenceErrors { get; set; }
#endregion
}
}