diff --git a/full_abyssal_beasts.py b/full_abyssal_beasts.py index 8512994..77c9f50 100644 --- a/full_abyssal_beasts.py +++ b/full_abyssal_beasts.py @@ -17,7 +17,7 @@ key_pvm_hub_teleport = 'h' key_aggression_potion = '7' key_lantadyme_stick = '8' -position_compass = (1173 , 34) +position_compass = (1173, 34) position_bank_chest_teleport = (896, 238) position_bank_chest_after = (676, 339) position_ectoplasm = (1210, 478) @@ -32,25 +32,31 @@ position_select_all_divine_charge = (1267, 518) k = keyboard.Controller() m = mouse.Controller() + def random_between(minimum: int, maximum: int) -> int: delta = maximum - minimum return minimum + randbelow(delta) + def random_sleep_between(min_milliseconds: int, max_milliseconds: int) -> int: - sleep_microseconds = random_between(min_milliseconds * 1_000, max_milliseconds * 1_000) + sleep_microseconds = random_between(min_milliseconds * 1_000, + max_milliseconds * 1_000) sleep_seconds = sleep_microseconds / 1_000_000 print(f"Sleeping for: {sleep_seconds} seconds") time.sleep(sleep_seconds) return sleep_microseconds -def click_at(position: tuple[int,int]): + +def click_at(position: tuple[int, int]): m.position = position m.click(Button.left) -def right_click_at(position: tuple[int,int]): + +def right_click_at(position: tuple[int, int]): m.position = position m.click(Button.right) + def full_setup(): k.tap(key_pvm_hub_teleport) random_sleep_between(6_000, 7_000) @@ -84,11 +90,13 @@ def full_setup(): random_sleep_between(1_800, 2_200) k.tap('1') + def start_abyssal_beasts(): global potion_doses for dose in range(potion_doses): start_of_dose_time = datetime.now() - dose_ends_at = start_of_dose_time + timedelta(seconds=potion_duration_seconds) + dose_ends_at = start_of_dose_time + timedelta( + seconds=potion_duration_seconds) print(f"{start_of_dose_time} : Dose {dose + 1} out of {potion_doses}") k.tap(key_aggression_potion) print("Pressed overload") @@ -101,16 +109,16 @@ def start_abyssal_beasts(): print("Pressed space - looting") delta_to_dose_end = dose_ends_at - datetime.now() print(f"Time until dose ends: {delta_to_dose_end}") - if(delta_to_dose_end.total_seconds() < timedelta(seconds=60)) + if (delta_to_dose_end.total_seconds() < timedelta(seconds=60)): print("Reduced sleep") random_sleep_between(25_000, 40_000) else: print("Regular sleep") random_sleep_between(25_000, 70_000) - def add_keybind(keybind: str | Key, action: Callable): + def on_release(key): try: if key == keybind: @@ -120,11 +128,12 @@ def add_keybind(keybind: str | Key, action: Callable): action() except: pass - + keyboard.Listener(on_release=on_release).start() + add_keybind(Key.f11, start_abyssal_beasts) add_keybind(Key.f12, full_setup) - + while True: - time.sleep(1000) \ No newline at end of file + time.sleep(1000)