Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- import pyautogui
- from PIL import Image
- import numpy as np
- from cv2 import cv2
- # Основная функция по поиску изображения
- def find_img(template_path,sleep):
- img_rgb = pyautogui.screenshot() # Скриншот текущего экрана
- img_rgb.save('D:/images/general.jpg')
- img_rgb = cv2.imread('D:/images/general.jpg') # Шаблон
- template = cv2.imread(template_path) # Изображение, искомое в шаблоне
- res = cv2.matchTemplate(img_rgb, template, cv2.TM_CCOEFF_NORMED)
- if str(res[0]) != '[1. 1. 1. ... 1. 1. 1.]':
- threshold = .7
- loc = np.where(res >= threshold)
- # Проверка совпадения
- for pt in zip(*loc[::-1]):
- x = int(pt[0])
- y = int(pt[1])
- print(x, y) # Координаты совпадения
- pyautogui.moveTo(x, y, duration=0.7) # Переход по координатам
- pyautogui.click()
- time.sleep(sleep)
- break
- else:
- global a
- a = False
- print(a)
- # Пропуск заданий
- def skip():
- pyautogui.click()
- time.sleep(2.5)
- # Запуск и начало игры
- def startgame():
- find_img('D:/images/icon.jpg', 3)
- find_img('D:/images/play_bn.jpg', 25)
- skip()
- find_img('D:/images/play.jpg',3)
- find_img('D:/images/play2.jpg',45)
- find_img('D:/images/confirm.jpg',5)
- startgame()
- a == False
- while a == False:
- find_img('D:/images/hunter_hero_power.jpg',0.5)
- find_img('D:/images/end_turn.jpg',0.5)
- a == True
- while a == True:
- find_img('D:/images/hunter_hero_power.jpg',0)
- find_img('D:/images/end_turn.jpg',0)
- else:
- time.sleep(5)
- find_img('D:/images/defeat.jpg',0)
- find_img('D:/images/win.jpg', 0)
- # Надо сделать так, чтобы пока на экране не было картинки "Победа" или "Поражение" (D:/images/defeat.jpg или D:/images/win.jpg) последовательно выполнялось следующее:
- # Проверялось, если сейчас имеется картинка "Закончить ход" (То есть идёт ли сейчас наш ход(D:/images/end_turn.jpg)), и поочерёдно выполнялся поиск и нажатие на кнопку силы героя
- # (find_img('D:/images/hunter_hero_power.jpg', 0)) и нажатие на кнопку закончить ход (find_img('D:/images/end_turn.jpg',0)) затем ожидание (постоянный поиск картинки "Закончить ход")
- # и повторение до тех пор, пока не появится картинка "Поражение" или "Победа"(D:/images/defeat.jpg или D:/images/win.jpg)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement