как сделать бинд внутри цикла чтобы цикл встал на паузу?

Пишу бота который работает в цикле и нужно чтобы при нажатии клавиши он встал на паузу, а после можно было его с паузы снять. Попробовал кучу способов нашел что-то похожее на рабочий вариант, но у меня по какой-то причине не хочет ставить паузу, а просто продолжает выполнение цикла. Вот пример того что я попробовал:

import pyautogui as pg
import random
import keyboard as kb
import time
from keybind import KeyBinder

kb.wait('alt')
i = 1
while i < 100000000:
    def on_triggered():
        print('пауза')
        time.sleep(1111)
    kb.add_hotkey('ctrl', on_triggered())

    pg.moveTo(random.randint(1488, 1500), random.randint(760, 794), 0.15)
    pg.click()
    pg.moveTo(random.randint(1315, 1399), random.randint(393, 419), 0.15)
    pg.click()
    pg.moveTo(random.randint(1032, 1163), random.randint(608, 637), 0.15)
    pg.click()
    pg.moveTo(random.randint(1481, 1505), random.randint(363, 410), 0.15)
    pg.click()
    pg.moveTo(1356, 405, 0.15)
    pg.click()
    pg.moveTo(463, 661, 0.15)
    pg.click(clicks=2, interval=0.18, button='left')
    pg.moveTo(860, 782, 0.15)
    pg.click()
    i = i + 1

Ответы (1 шт):

Автор решения: yspesny

Можете добавить второй цикл где будете ожидать нажатие

import pyautogui as pg
import random
import keyboard as kb
import time
from keybind import KeyBinder

kb.wait('alt')
i = 1
while i < 100000000:

  if kb.is_pressed("q"):
    while True:
      if kb.is_pressed("r"):
        break

  pg.moveTo(random.randint(1488, 1500), random.randint(760, 794), 0.15)
  pg.click()
  pg.moveTo(random.randint(1315, 1399), random.randint(393, 419), 0.15)
  pg.click()
  pg.moveTo(random.randint(1032, 1163), random.randint(608, 637), 0.15)
  pg.click()
  pg.moveTo(random.randint(1481, 1505), random.randint(363, 410), 0.15)
  pg.click()
  pg.moveTo(1356, 405, 0.15)
  pg.click()
  pg.moveTo(463, 661, 0.15)
  pg.click(clicks=2, interval=0.18, button='left')
  pg.moveTo(860, 782, 0.15)
  pg.click()

  i = i + 1
→ Ссылка