Если вам не хватает функционала NAPI, вы можете его дополнить при помощи обычного python.
Код:
keyboard.press('F') # Зажимаем клавижу F
time.sleep(0.1) # ожидаем 100мс
keyboard.release('F') # Отжимаем клавижу
keyboard.press_and_release('F') # Тоже самое но проще.
def test(data):
print(f"Button {data['key'} {data['state'}")
"""Создавайте бинды, это очень просто!"""
keyboard.bind('Q', on_press=test, on_press_data={'key': 'Q', 'state': 'pressed'}) # Бинд на нажатие клавиши
keyboard.bind('tab', on_release=test, on_release_data={'key': 'tab', 'state': 'released'}) # Тоже самое но при отпускании клавиши
while True: # Вечный цикл, чтобы скрипт не завершил работу и бинды работали
time.sleep(1) # Снижаем нагрузку, пусть спит.
Вы можете написать алгоритм для предугадывания позиции головы на основе координат тела, если враг слишком далеко.