正值过年的关卡,疫情严重,在这里盼望武汉马上恢复起来,武汉加油!!!

python制作简易阴阳师游戏脚本(代码篇)

在一动不动的这几天里,受朋友的邀请写了个阴阳师刷御魂的脚本。
因个人水平有限,希望各路大神指点

主要思路如下:

  • 对区域进行截图
  • 将所截图与保存的图片进行对比
  • 控制鼠标移动到该位置并进行点击

1.对区域进行截图

这里我使用的是 pyautogui库


!!这里遇到问题

使用PIL中的ImageGrab模块时发现截屏时无法对全屏进行截取

!!这里保留意见可以使用pyqt的方法对指定应用程序进行抓取


import pyautogui
def get_screen():# 截屏口令 保存图片img = pyautogui.screenshot(region=(0,0, 1280, 720))  #截取范围是左0,右0,1280x720的范围#img = pyautogui.screenshot() 截取全屏img.save('E:\pyth_roject\yinyagnshi\img/screen_img.png')img = cv2.imread('E:\pyth_roject\yinyagnshi\img\screen_img.png', 0)return img

2.将所截图与保存的图片进行对比
这里我使用的是CV库中的 matchTemplate


这里发现使用方法不同所取坐标的方式不同!!需要再次进行验证


  matchTemplate(image, templ, method[, result[, mask]]) -> result"""
matchTemplate():
参数image:待搜索的图像(大图)
参数temple:搜索模板,需要和原图一样的数据类型且尺寸不能大于源图像
参数result:比较结果的映射图像,其必须为单通道,32位浮点型图像,如果原图(待搜索图像)尺寸为W*H,而temple尺寸为w*h,则result尺寸一定是(W-w+1)*(H-h+1)
参数method:指定匹配方法,有如下几种:CV_TM_SQDIFF:平方差匹配法CV_TM_SQDIFF_NORMED:归一化平方差匹配法CV_TM_CCORR:相关匹配法CV_TM_CCORR_NORMED:归一化相关匹配法CV_TM_CCOEFF:系数匹配法CV_TM_CCOEFF_NORMED:化相关系数匹配法
"""

参考代码如下

import cv2 as cv
import numpy as np"""
minMaxLoc()函数
作用:一维数组当作向量,寻找矩阵中最小值和最大值位置
"""def match_image():target = cv.imread(r"2.jpg")temple = cv.imread(r"1.png")# 获取到小图的尺寸th, tw = temple.shape[:2]result = cv.matchTemplate(target, temple, cv.TM_SQDIFF_NORMED)# 返回匹配的最小坐标min_val, max_val, min_loc, max_loc = cv.minMaxLoc(result)tl=min_locprint(tl)br = (int(tl[0]) + tw, int(tl[1]) + th)print(br)

3.控制鼠标移动到该位置并进行点击

使用PyMouse 模块


!!! 安装步骤PyMouse安装步骤

!!!使用时发现在使用阴阳师pc端时无法进行点击,怀疑可能阴阳师有反脚本的机制


def click(x, y):"""输入两个二维列表,表示要点击的位置的x坐标,y坐标"""m = PyMouse()
#    cmd_click = 'adb shell input tap {} {}'.format(x, y)m.click(x, y, 1)#  click(self, x, y, button=1, n=1)#click中button默认为1鼠标左键,2鼠标右键,n表示鼠标点击的次数

python制作简易阴阳师游戏脚本(基础问题篇)相关推荐

  1. python可以制作游戏脚本吗_python制作简易阴阳师游戏脚本

    正值过年的关卡,疫情严重,在这里盼望武汉马上恢复起来,武汉加油!!! 在一动不动的这几天里,受朋友的邀请写了个阴阳师刷御魂的脚本. 因个人水平有限,希望各路大神指点 主要思路如下: 对区域进行截图 将 ...

  2. 用python制作简易小游戏

    那是一个***--***的日子,在打游戏的时候,我有了一个不太成熟的想法,要不要做一个游戏玩玩? 在看了一天的视频资料后(当时感觉就那样:cry:),但是做的时候,感觉夸大了:sob: so--放弃* ...

  3. python制作阴阳师脚本_利用python制作一个阴阳师小游戏

    利用python制作一个阴阳师小游戏 发布时间:2020-11-27 13:59:49 来源:亿速云 阅读:84 这期内容当中小编将会给大家带来有关利用python制作一个阴阳师小游戏,文章内容丰富且 ...

  4. python拼图_利用python制作拼图小游戏的全过程

    开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 关注公众号:Python学习指南,回复"拼图"即可获取源码 环境搭建 安装P ...

  5. python可视化迷宫求解_如何用 Python 制作一个迷宫游戏

    相信大家都玩过迷宫的游戏,对于简单的迷宫,我们可以一眼就看出通路,但是对于复杂的迷宫,可能要仔细寻找好久,甚至耗费数天,然后可能还要分别从入口和出口两头寻找才能找的到通路,甚至也可能找不到通路. 虽然 ...

  6. 超简单,Python爬取阴阳师游戏原声

    Python爬取阴阳师游戏BGM,附完整代码 爬取阴阳师游戏原声 网页分析 教程开始 1 请求json文件并获取数据 2 保存文件 注意,一定要看 结语 完整源码 目标网址:https://yys.1 ...

  7. 【日常点滴019】Python制作流浪气球游戏(导弹射击类)

    Python制作流浪气球游戏(导弹射击类) 教学课程代码(分步教学版) 1.构建全局通用代码结构 2.构建气球精灵类 3.构建导弹精灵类 4.碰撞检测 5.构建游戏信息类 (最终完整代码) 教学课程代 ...

  8. 怎么用python自制计算公式_手把手教你用python制作简易计算器,能够记录你使用的情况...

    话不多说,首先先看效果图,它能够记录你在使用过程中的历史,方便你查看是否有错: 接下来就仔细分析一下是如何制作的: 简易计算器 第一步:导入资源库 在过程中使用到了tkinter这个资源库,win+R ...

  9. 教你用python制作猜数游戏

    大家好!我又回来了!今天我教大家怎样用python制作猜数游戏.在此之前我们先了解一下什么是python版猜数游戏. 了解 python版猜数游戏是指您先输入下限值与上限值,然后系统随机生成一个在此范 ...

最新文章

  1. 『高级篇』docker之APIGateway(17)
  2. Android中堆unlink利用学习
  3. c++的构造函数初始化列表
  4. 前端学习(1058):面向对象介绍
  5. java 富文本 xss_Jsoup 防止富文本 XSS 攻击
  6. 网页设计个人主页代码
  7. 互联网摸鱼日报(2022-10-17)
  8. 家里电脑怎么控制公司电脑?电脑远程控制的几种方式
  9. linux 内核rps,Linux kernel之网络rps
  10. 程序员必备Java API和类搜索辅助工具-Jadeite和Apatite
  11. dedecms如何在首页调用会员信息(会员头像和名字等)
  12. 程序猿如何更好地指导自己处于什么水平,还有各个阶段应该学习什么
  13. 名人名言大全API 推荐
  14. python命令行进入帮助模式_python的help()用法
  15. 小酷智慧地图3D导览v1.0.87打卡定位 地图打卡
  16. 为什么说小米会是品牌2020年最重要的增长源?
  17. Uncaught RangeError Maximum call stack size exceeded
  18. 苹果使用过程的一些小技巧
  19. android hook api
  20. 原创超简单代码(1.25)

热门文章

  1. 「硬见小百科」全类型电阻介绍
  2. 研究显示勒索式DDoS攻击正在成为主流
  3. Mac系统完美安装PHP7详细教程
  4. 云计算与大数据期末考试重点
  5. jquery pager 访问 java_jquery.pager.js实现分页效果
  6. 5.6.3. Adding a Constraint
  7. 笑话还是神话?-------现在可以期待的预言列表
  8. 【CVPR 2021】剪枝篇(二):Convolutional Neural Network Pruning with Structural Redundancy Reduction
  9. 加密算法——报文通信过程中数据加密方法的总结
  10. mysql 1067 invalid_mysql error 1067 invalid default timestamp