本文主要是介绍手把手教你用 node 玩跳一跳,跳一跳刷分,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
github: https://github.com/aOrz/wx_jump_game实现原理:
用 adb,将手机截屏,并传输到电脑上,将图片载入到 canvas 中,通过 getImageData,获取到图片的数据,将 rgb颜色转为 255 的色值,形成一个二维数组,这样我们就可以用颜色点阵来表示图片了,重点来了,然后呢?
匹配跳跃点
棋子:小人颜色是固定的,找到小人的色值之后,我们就可以匹配到小人的底部,得到小人的坐标
棋盘:
棋盘的匹配有些复杂,棋盘的形状不规则,还有阴影,除了棋盘顶部还有左侧和前侧的视图。
1.刚开始,希望可以通过一行一行的扫描,找到棋盘最宽的地方,从而找到棋盘的 x 坐标,无奈,失败,可能有阴影的地方最宽,然后就跑偏了。
2. 想通过颜色的多少来区分是不是棋盘,颜色面积大的,肯定是背景色或者其他,可惜,界定没那么明显失败。
3. 还是横向扫描棋盘,扫描到之后,判断长度达到棋子宽度的1.5倍之后,就停止乡下扫描,获取到棋盘的点。
起跳:
获取到棋子和棋盘的坐标,计算两点之间的距离,然后乘以系数,就可以算出按压时间啦!使用 adb 就可以发送长按指令了哦~
这篇关于手把手教你用 node 玩跳一跳,跳一跳刷分的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!