fishyboteso/fishy/helper/hotkey.py
Adam Saudagar 825ce11ced engines can now run without gui
- corrected logic for look_for_hole, made hotkey start new threads, created mock interface for gui
2020-10-17 13:36:49 +05:30

39 lines
653 B
Python

from enum import Enum
from threading import Thread
from typing import Dict, Callable
import keyboard
from fishy.helper import helper
class Key(Enum):
F9 = "f9",
F8 = "f8"
F7 = "f7"
UP = "up",
DOWN = "down"
LEFT = "left"
RIGHT = "right"
_hotkeys: Dict[Key, Callable] = {}
def _run_callback(k):
return lambda: Thread(target=_hotkeys[k]).start()
def initalize():
for k in Key:
_hotkeys[k] = helper.empty_function
keyboard.add_hotkey(k.value, _run_callback(k))
def set_hotkey(key: Key, func: Callable):
_hotkeys[key] = func
def free_key(k: Key):
set_hotkey(k, helper.empty_function)