@@ -162,10 +162,91 @@ procedure TAntiban.HoverMakeItem();
162162var
163163 boxes: TBoxArray;
164164begin
165- if not Bank.IsOpen() then Exit;
166- WriteLn GetDebugLn('Antiban', 'Hovering a random make item button');
165+ if not Make.IsOpen() then Exit;
166+ WriteLn GetDebugLn('Antiban', 'Hovering a random make item');
167+ boxes := Make.GetItemBoxes();
168+ if boxes = [] then Exit;
169+ Mouse.Move(boxes.Random());
170+ end;
171+
172+ procedure TAntiban.HoverMakeQuantity();
173+ var
174+ boxes: TBoxArray;
175+ begin
176+ if not Make.IsOpen() then
177+ Exit;
178+ if not Make.CloseHint() then
179+ Exit;
180+
181+ WriteLn GetDebugLn('Antiban', 'Hovering a random make quantity button');
182+ boxes := Make.GetQuantityBoxes();
183+ if boxes = [] then Exit;
184+ Mouse.Move(boxes.Random());
185+ Biometrics.Sleep(500, 2000, ERandomDir.LEFT);
186+ end;
187+
188+ procedure TAntiban.ReadMakeItemHint();
189+ var
190+ boxes: TBoxArray;
191+ begin
192+ if not Make.IsOpen() then Exit;
193+ WriteLn GetDebugLn('Antiban', 'Reading a random make item hint');
167194 boxes := Make.GetItemBoxes();
195+ if boxes = [] then Exit;
168196 Mouse.Move(boxes.Random());
197+ if Make.WaitHint(2000) then
198+ begin
199+ Biometrics.Sleep(1000, 3000, ERandomDir.LEFT);
200+ Make.CloseHint();
201+ end;
202+ end;
203+
204+ procedure TAntiban.ToggleMakeQuantity();
205+ var
206+ randomBtn: TRSMakeQuantityButton;
207+ quantityBtns: array of TRSMakeQuantityButton;
208+ currentBtn, customQuantity, i: Integer;
209+ begin
210+ if not Make.IsOpen() then
211+ Exit;
212+ if not Make.CloseHint() then
213+ Exit;
214+
215+ WriteLn GetDebugLn('Antiban', 'Toggling make quantity buttons');
216+
217+ quantityBtns := Make.FindQuantityButtons;
218+ if quantityBtns = [] then Exit;
219+ currentBtn := Make.GetCurrentQuantity();
220+ randomBtn := quantityBtns[Random(Length(quantityBtns))];
221+
222+ if randomBtn.UpText = 'Other' then
223+ begin
224+ for i := 0 to High(quantityBtns) do
225+ if (quantityBtns[i].Quantity = ERSItemQuantity.CUSTOM)
226+ and (quantityBtns[i].UpText <> 'Other') then
227+ begin
228+ customQuantity := StrToInt(quantityBtns[i].UpText);
229+ end;
230+
231+ Make.SetQuantity(Random(1, 27));
232+ Biometrics.Sleep(1000, 3000, ERandomDir.LEFT);
233+
234+ if customQuantity > 0 then
235+ begin
236+ Make.SetQuantity(customQuantity);
237+ Biometrics.Sleep(1000, 3000, ERandomDir.LEFT);
238+ end;
239+ end
240+ else
241+ begin
242+ // Just click the random button
243+ randomBtn.Button.Enable();
244+ Biometrics.Sleep(1000, 3000, ERandomDir.LEFT);
245+ end;
246+
247+ // Restore original
248+ if Make.IsOpen() then
249+ Make.SetQuantity(currentBtn);
169250end;
170251
171252//Chatbox antiban
@@ -654,6 +735,16 @@ begin
654735 end;
655736end;
656737
738+ procedure TAntiban.RandomMakeTask();
739+ begin
740+ case Random(0, 10) of
741+ 0..3: Self.HoverMakeItem();
742+ 4..6: Self.HoverMakeQuantity();
743+ 7..8: Self.ReadMakeItemHint();
744+ 9..10: Self.ToggleMakeQuantity();
745+ end;
746+ end;
747+
657748procedure TAntiban.RandomChatTask();
658749begin
659750 case Random(30) of
@@ -893,6 +984,10 @@ const
893984 ['HoverSkills', @Antiban.HoverSkills],
894985 ['OpenSkills', @Antiban.OpenSkills],
895986 ['HoverMakeItem', @Antiban.HoverMakeItem],
987+ ['HoverMakeQuantity', @Antiban.HoverMakeQuantity],
988+ ['ReadMakeItemHint', @Antiban.ReadMakeItemHint],
989+ ['ToggleMakeQuantity', @Antiban.ToggleMakeQuantity],
990+ ['RandomMakeTask', @Antiban.RandomMakeTask],
896991 ['ChatScrolling', @Antiban.ChatScrolling],
897992 ['RandomChatTab', @Antiban.RandomChatTab],
898993 ['ToggleChatTab', @Antiban.ToggleChatTab],
0 commit comments