当前位置: 首页 > news >正文

下载了模板如何做网站微山做网站

下载了模板如何做网站,微山做网站,南宁高端网站建设公司,介绍旅游美食的网站模板免费下载前言 更新了微信后发现了一款小游戏跳一跳,但是玩了一下午最高才达到200,每次差点破纪录后总是手抖就挂掉了,气的想要砸手机。。闲来无事刷微博的时候正好看到有人分析如何编写脚本自动运行游戏破了3000多分,细看后觉得原理并不复…

前言
更新了微信后发现了一款小游戏跳一跳,但是玩了一下午最高才达到200,每次差点破纪录后总是手抖就挂掉了,气的想要砸手机。。闲来无事刷微博的时候正好看到有人分析如何编写脚本自动运行游戏破了3000多分,细看后觉得原理并不复杂,就索性花了一个晚上,参考大神的实现方法,在他的基础上删减了一些代码,也用Python写了个脚本。接下来进行原理和代码分析。
这里写图片描述
图1.跳一跳启动界面
原理

  1. 配置adb环境变量,在我的电脑–》属性–》高级系统设置–》环境变量–》Path上添加adb.exe所在的路径。

  2. 打开手机的usb调试模式,并连接电脑,打开跳一跳,然后通过adb工具获取当前手机截图,具体指令如下所示:

    adb shell screencap -p /sdcard/1.png
    adb pull /sdcard/1.png

    在程序中的具体代码实现如下所示:

def screenshot():cmd = 'adb shell screencap -p /sdcard/1.png'os.system(cmd)cmd = 'adb pull /sdcard/1.png'os.system(cmd)
  1. 查找棋子的位置,通过颜色来识别棋子,通过将棋子底盘所在行的所有点的x轴坐标相加,然后取平均值获得X轴坐标,将Y轴坐标取最低点减去棋子底盘高度的一半。具体代码实现如下:
#开始查找棋子的坐标,从start_y开始据目测棋子不会位于屏幕底部1/3处
for i in range(start_y, int(height * 2 / 3)):for j in range(border_x, width - border_x):  #删除周围空白部分,加快程序运行速度next_point = im[j,i]# 根据棋子的颜色判断,求所有点的和然后求平均值if (50 < next_point[0] < 60) and (53 <next_point[1] < 63) and (95 < next_point[2] < 110):x1_temp += j #点求和x1_num += 1 #点的个数y1_max = max(i, y1_max)if not all((x1_temp,x1_num)):return 0,0,0,0
x1 = x1_temp / x1_num
y1 = y1_max - piece_height/2  # 棋子Y轴坐标上移到底盘高度的一半
  1. 查找下一个棋盘的位置,一般可以通过两种方法实现。第一种是通过鼠标点击下一个棋盘的位置,具体参考编程美丽写的博客。

http://blog.csdn.net/F0ED9cZN4Ly992G/article/details/78937011

第二种是本文使用的,从上往下一行一行扫描,找到块中点的X轴坐标,然后通过截图中两个具体的棋盘获取的固定的角度,即正切值来推出中点的 Y坐标。 具体代码如下:

#查找下一个棋盘的位置
for i in range(start_y, height * 2 / 3):start_point = im[0, i]if x2 or y2:breakx2_temp = 0x2_num = 0for j in range(width):next_point = im[j,i]if abs(j - x1) < body_width:continue# 棋盘为圆if abs(next_point[0] - start_point[0]) + abs(next_point[1] - start_point[1]) + abs(next_point[2] - start_point[2]) > 10:x2_temp += jx2_num += 1if x2_temp:x2 = x2_temp / x2_num
# 按实际的角度通过tan值来算计算下一个棋盘的中心点的Y轴坐标
y2 = y1 - abs(x2 - x1) * abs(sample_y1 - sample_y2) / abs(sample_x1 - sample_x2)if not all((x2, y2)):return 0, 0, 0, 0
  1. 根据棋子的位置跟下一个棋盘的位置求得两点的具体,推算出长按时间。具体代码如下:
#跳到下一个棋盘
def jump(distance):press_time = distance * presspress_time = max(press_time, 200)   # 设置最小的按压时间位200mspress_time = int(press_time)cmd = 'adb shell input swipe {} {} {} {} {}'.format(swipe_x1, swipe_y1, swipe_x2, swipe_y2, press_time)print(cmd)os.system(cmd)

结果展示
通过运行脚本,能够轻松上分到400+,由于时间原因并没有继续测试,下图为测试时截的动态gif,以及控制台窗口运行结果。
这里写图片描述这里写图片描述
图2.真机运行

这里写图片描述
图3.控制台输出信息
下载链接:http://download.csdn.net/download/qq_22408539/10187952

http://www.yayakq.cn/news/918956/

相关文章:

  • 企业网站建设需要多少钱制作网页的软件有
  • 做展示型网站一份完整的市场调查方案
  • 阿里云网站建设视频网站建设开发报价方案模板下载
  • wordpress企业仿站视频教程做网站如何添加视频
  • 温州外贸网站设计广州注册公司核名在哪个网站
  • 网门网站下载地址关闭wordpress更新提示
  • 全屏网站 功能wordpress 自定排版
  • 网站安全证书出错怎么做外链网站推荐几个
  • wordpress怎么开启多站点搜狗推广怎么样
  • 天津网站建设举措上海上港微博微博
  • 网站收费标准网络规划设计师电子版教材
  • flashfxp怎么上传网站外贸公司销售渠道
  • 企业网站建设需要考虑内容新冠咳嗽吃什么药止咳效果好
  • 开发软件网站方山网站建设
  • 怎么用代码做网站火星培训机构收费明细
  • 快速网站开发怎么自己做卡盟网站
  • 六安城市网新闻网站建设优化服务机构
  • 下载中心网站开发平面设计师上的网站
  • 南京网站制作百家号织梦如何做二级网站
  • 济南市商务局官方网站舟山建设信息港门户网站
  • 有没有网站学做总结百度推广优化怎么做
  • 山东专业网站建设公司哪家好wordpress默认主题
  • 青岛网站seo推广做家电家具回收用哪个网站好
  • vs2013做的网站做电子商务网站需要什么手续
  • 仿站多少钱wordpress网站设密码错误
  • dedecms网站后台很卡贵州省网站备案
  • 完美代码网站做百度推广的网站吗
  • 网站平台需要做无形资产吗 怎么做男女做啊免费视频网站
  • 网站的搭建需要多少钱wordpress怎么添加字体
  • 泉州网站建设方案详细瑞安做网站多少钱