From 334ae7a10382463486c67af2024b291282eaaefc Mon Sep 17 00:00:00 2001 From: OSRS-B0b <131605729+OSRS-B0b@users.noreply.github.com> Date: Sun, 23 Apr 2023 10:49:35 -0500 Subject: [PATCH 1/3] Add double click function to mouse.py --- src/utilities/mouse.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/utilities/mouse.py b/src/utilities/mouse.py index 206d1bec..f003a4ad 100644 --- a/src/utilities/mouse.py +++ b/src/utilities/mouse.py @@ -97,6 +97,18 @@ def click(self, button="left", force_delay=False, check_red_click=False) -> tupl pag.mouseUp(button=button) if check_red_click: return self.__is_red_click(mouse_pos_before, mouse_pos_after) + def double_click(self, force_delay=False): + """ + Double left-clicks on the current mouse position with a small delay between clicks. + Args: + with_delay: whether to add a random delay between mouse down and mouse up (default True). + """ + self.click(force_delay=force_delay) + LOWER_BOUND_WAIT_INTERVAL = 0.07 # Milliseconds + UPPER_BOUND_WAIT_INTERVAL = 0.15 # Milliseconds + AVERAGE_WAIT_INTERVAL = 0.09 # Milliseconds + time.sleep(truncated_normal_sample(LOWER_BOUND_WAIT_INTERVAL, UPPER_BOUND_WAIT_INTERVAL, AVERAGE_WAIT_INTERVAL)) + self.click(force_delay=force_delay) def right_click(self, force_delay=False): """ From fdcfa0a1c162356450b7af7ff387b7e8a01069f9 Mon Sep 17 00:00:00 2001 From: OSRS-B0b <131605729+OSRS-B0b@users.noreply.github.com> Date: Sun, 23 Apr 2023 11:04:12 -0500 Subject: [PATCH 2/3] Make delay in mouse.double_click optional --- src/utilities/mouse.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/utilities/mouse.py b/src/utilities/mouse.py index f003a4ad..7077a57b 100644 --- a/src/utilities/mouse.py +++ b/src/utilities/mouse.py @@ -104,10 +104,11 @@ def double_click(self, force_delay=False): with_delay: whether to add a random delay between mouse down and mouse up (default True). """ self.click(force_delay=force_delay) - LOWER_BOUND_WAIT_INTERVAL = 0.07 # Milliseconds - UPPER_BOUND_WAIT_INTERVAL = 0.15 # Milliseconds - AVERAGE_WAIT_INTERVAL = 0.09 # Milliseconds - time.sleep(truncated_normal_sample(LOWER_BOUND_WAIT_INTERVAL, UPPER_BOUND_WAIT_INTERVAL, AVERAGE_WAIT_INTERVAL)) + if force_delay or self.click_delay: + LOWER_BOUND_WAIT_INTERVAL = 0.07 # Milliseconds + UPPER_BOUND_WAIT_INTERVAL = 0.15 # Milliseconds + AVERAGE_WAIT_INTERVAL = 0.09 # Milliseconds + time.sleep(truncated_normal_sample(LOWER_BOUND_WAIT_INTERVAL, UPPER_BOUND_WAIT_INTERVAL, AVERAGE_WAIT_INTERVAL)) self.click(force_delay=force_delay) def right_click(self, force_delay=False): From 535b97d07e144ce39d75fc6c443334a4fa692f9c Mon Sep 17 00:00:00 2001 From: OSRS-B0b <131605729+OSRS-B0b@users.noreply.github.com> Date: Sun, 23 Apr 2023 11:06:58 -0500 Subject: [PATCH 3/3] Update mouse.py --- src/utilities/mouse.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/utilities/mouse.py b/src/utilities/mouse.py index 7077a57b..4b30959f 100644 --- a/src/utilities/mouse.py +++ b/src/utilities/mouse.py @@ -101,7 +101,7 @@ def double_click(self, force_delay=False): """ Double left-clicks on the current mouse position with a small delay between clicks. Args: - with_delay: whether to add a random delay between mouse down and mouse up (default True). + with_delay: whether to add a random delay between each click (default True). This delay is on top of any additional delay in click() """ self.click(force_delay=force_delay) if force_delay or self.click_delay: