diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a71f5ee --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +.vscode/ + +bin/ +lib/ + +pyvenv.cfg diff --git a/README.md b/README.md index d92eb47..54d1356 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Never away -Appuie régulièrement sur la touche Windows +Appuie régulièrement sur la touche Windows, tout en faisant tourner la souris -> `pip install pyautogui` +> `pip install -r requirements.txt` -Pour stopper le programme, bouger la souris +Pour stopper le programme, bougez amplement la souris diff --git a/main.py b/main.py index 1df12af..31779c6 100644 --- a/main.py +++ b/main.py @@ -1,6 +1,7 @@ -from pyautogui import press, position +from pyautogui import moveTo, size as screen_size, press, position from time import sleep from threading import Thread +from math import radians, cos, sin def action(): @@ -17,16 +18,41 @@ def wait_mouse(): while True: position_x, position_y = position() - if (abs(position_x - previous_x) > threshold or abs(position_y - previous_y) > threshold): + if ( + abs(position_x - previous_x) > threshold + or abs(position_y - previous_y) > threshold + ): return previous_x, previous_y = position_x, position_y sleep(0.1) -if __name__ == "__main__": - t = Thread(target=action) - t.daemon = True - t.start() +def circle(radius, base_x, base_y, wait): + sleep(wait) + while True: + for angle in range(0, 360, 5): + x = base_x + radius * cos(radians(angle)) + y = base_y + radius * sin(radians(angle)) + moveTo(x, y) + sleep(0.1) + + +if __name__ == "__main__": + # Win key + t1 = Thread(target=action) + t1.daemon = True + t1.start() + + wait = 5 + + # Circle mouse + t2 = Thread( + target=circle, args=(100, screen_size()[0] // 2, screen_size()[1] // 2, wait) + ) + t2.daemon = True + t2.start() + + sleep(wait + 2) wait_mouse() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..e282c09 --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +pyautogui==0.9.54