# -*- coding: utf-8 -*-
import cv2
import pyautogui
import time
import random
import numpy as np
# 加载怪物图像
monster_image = cv2.imread('monster.png')
# 设置游戏窗口的左上角和右下角坐标
game_window_top_left = (316, 136)
game_window_bottom_right = (1052, 594)
# 设置技能按钮的位置
skill_button_positions = {
'1': (758, 550), # 技能1按钮的位置
'2': (923, 436), # 技能2按钮的位置
'3': (813, 546), # 技能3按钮的位置
# ...
}
# 设置技能快捷键和冷却时间
skills = {
'1': 35, # 技能1的冷却时间为10秒
'2': 7, # 技能2的冷却时间为20秒
'3': 17, # 技能3的冷却时间为30秒
# ...
}
# 循环检测怪物位置并击杀
while True:
# 截取游戏窗口图像
screenshot = pyautogui.screenshot(region=(game_window_top_left[0], game_window_top_left[1],
game_window_bottom_right[0] - game_window_top_left[0],
game_window_bottom_right[1] - game_window_top_left[1]))
screenshot = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2BGR)
# 在游戏窗口图像中寻找怪物位置
result = cv2.matchTemplate(screenshot, monster_image, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(result)
# 如果找到怪物
if max_val <= 0.2:
print("没找到怪物!")
else:
# 计算怪物的中心位置
monster_center = (max_loc[0] + monster_image.shape[1] // 2, max_loc[1] + monster_image.shape[0] // 2)
# 移动鼠标到移动按钮位置
pyautogui.moveTo(455, 496) # 移动按钮的位置
pyautogui.mouseDown() # 按下鼠标左键
time.sleep(0.5) # 等待0.5秒
# 移动鼠标到怪物位置
pyautogui.moveTo(game_window_top_left[0] + monster_center[0], game_window_top_left[1] + monster_center[1])
pyautogui.mouseUp() # 释放鼠标左键
# 使用技能
for skill, cooldown in skills.items():
if cooldown == 0:
# 使用技能
pyautogui.moveTo(skill_button_positions[skill][0], skill_button_positions[skill][1])
pyautogui.click()
# 重置冷却时间
skills[skill] = cooldown
else:
# 冷却时间减1
skills[skill] -= 1
# 随机等待一段时间,具体可调整。
time.sleep(random.uniform(0.1, 0.5))
游戏自动刷图script
最新推荐文章于 2025-04-17 10:08:09 发布