Клик в нужный момент

Захотел сделать "автоклик" в игре. Суть в том, чтобы кликать мышкой в тот момент, когда бегущий треугольник находится в зеленой зоне. Из последнего (более-менее рабочего) (срабатывало 1 раз из 10, все остальное время мышь куда-то уезжает =(

Вот видео для примера что хочу....

import cv2
import numpy as np
import pyautogui
import time

# Загрузка изображения для поиска
template = cv2.imread('image.png')
template_height, template_width, _ = template.shape

# Функция для поиска изображения на экране и клик мышкой
def find_and_click(image, template):
    # Снять скриншот
    screenshot = pyautogui.screenshot()
    screenshot = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2BGR)

    # Найти совпадения
    result = cv2.matchTemplate(screenshot, template, cv2.TM_CCOEFF_NORMED)
    threshold = 0.8  # Установите порог для совпадения
    locations = np.where(result >= threshold)

    # Клик по всем найденным местам
    for point in zip(*locations[::-1]):
        # Рассчитать координаты центра совпадения
        center_x = point[0] + template_width // 2
        center_y = point[1] + template_height // 2
        
        # Клик мышкой
        pyautogui.click(center_x, center_y)
        print(f'Clicked at: ({center_x}, {center_y})')
        
        # Вы можете добавить небольшую паузу между кликами, если необходимо
        time.sleep(0.1)
    
if __name__ == "__main__":
    while True:
        find_and_click(pyautogui.screenshot(), template)
        time.sleep(1)  # Пауза перед следующим поиском

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