• 新浪微博:
  • 腾讯微博:
  • 微信 :
按键精灵电脑版
立即下载

软件版本:2014.05
软件大小:76.8M
更新时间:2-21

按键精灵安卓版
立即下载

软件版本:3.2.5
软件大小:62.5M
更新时间:06-06

按键精灵iOS版
立即下载

软件版本:1.2.7
软件大小:29.2M
更新时间:06-19

按键精灵Mac版
立即下载

软件版本:1.1.0
软件大小:12.3M
更新时间:12-29

快捷导航

登录 后使用快捷导航
没有帐号? 注册

登录 注册
返回列表 12345678» / 89
发新话题 回复该主题

[技术交流] 【院刊】-【201507期】安卓实战教学第二波——天天酷跑(2) [复制链接]

1#
本帖最后由 quitout 于 2015-7-15 18:47 编辑

安卓实战——制作天天酷跑脚本(2)



本文按键学院提供技术支持



按键学院交流①群(1群已满):376122403

按键学院交流②群(2群):372671254

按键学院交流③群(3群):170084238




在上一篇的院刊中,小编给大家带来的是天天酷跑脚本的所需要的准备工作,以及基础的找色代码。里面涉及到的内容都是一些比较基础,并且常用的知识。里面介绍的代码结构都是在之后编写安卓脚本常用的,希望对大家编写脚本有帮助。
今天就给大家带来实战的第二部分,今天就都是一些具体的代码啦

游戏流程思路


在着手开始编写一个脚本的时候先熟悉游戏,理清脚本要做些什么,理清脚本的流程对于编写脚本很有帮助
这就是游戏PK对战的流程了:
您所在的用户组无法下载或查看附件


在编写脚本的时候就按照这个流程进行编写即可。

PS:流程图的作用不可小看,他可以帮助自己理清思路,分清楚不同的模块。一些新手在编写脚本的时候,有可能会越写越乱,到最后可能自己写了什么都不知道。这就是因为对于整体的流程没有很好的把握住导致的,所以在这里是建议新手同学们在编写脚本前先花点时间做个流程图出来,让自己能够知道自己需要做些什么事情。


代码部分


1、收集信息

在前一篇院刊中说了,安卓的脚本是需要把数据和主体代码分开,所以在开始的时候我们就收集下需要点击或者判断的颜色点阵信息。

在进入游戏对战的这个过程中需要收集一些按钮的信息:
您所在的用户组无法下载或查看附件
您所在的用户组无法下载或查看附件
您所在的用户组无法下载或查看附件

还有需要找一个特征来识别是否已经进入了对战,我这里找到是小星星的标志:
您所在的用户组无法下载或查看附件

还需要识别人物是否死 亡,也就是对战是否结束。游戏在人物死 亡后会弹出再来一局的提示,我们可以把这个作为特征
您所在的用户组无法下载或查看附件
  1. 对战 = Array(41, 1074, 195, 1288, "BADBFE", "-89|-10|0E46C7,23|-14|E0FBFF,15|105|75EDFF,27|137|40B3FF")
  2. 世界对战 = Array(199, 1424, 355, 1694, "FBFFB3", "-17|5|9D5C1A,-74|46|FEE752,62|33|FFFFFF,-91|16|F8AA83")
  3. 入场 = Array(164, 439, 260, 527, "A2F5FA", "-26|1|114477,800|26|2F2DE7,536|284|C4325D,-142|-84|ECA944")
  4. 进入游戏 = Array(24, 601, 165, 705, "00C6FF", "17|13|1F3C48,-34|6|0563B7")
  5. 再来一局 = Array(257, 649, 355, 752, "2874CE", "23|3|EAF5FC,-8|303|1CEAFB")
  6. 返回 = Array(113,539,190,621,"EBF5F9","12|1|FFFFFF,217|7|4BCCF8,-98|13|4A79B8,247|-27|F2FFFF")
  7. 确认 = Array(82, 507, 209, 638, "1358B5", "-6|74|F0F8FF,-96|96|75879F,-20|118|235DAE,114|144|EF9415")
复制代码
对于部分按钮因为位置都是固定的,并且出现的时机也是固定的,所以可以直接取他们的坐标点,不用费劲的去取色
  1. 开始游戏 = Array(116, 1616)
  2. 跳跃 = Array(169, 1735)
复制代码
2、封装函数子程序

在编写代码的时候需要养成一些好的习惯,可以把不同的步骤封装成不同的子程序,这样只要在需要的时候直接调用子程序即可,在后期维护和修改方面也可以更省力。

比如在进入对战之后需要单独的去循环判断人物是否死 亡,甚至可以做的更智能一些,去判断是否出现了障碍,然后通过下滑来躲避障碍。所以我们可以把这部分单独封装成函数,在识别到进入游戏画面之后就调用这个函数,在识别到人物**后就跳出这个循环。
  1. Function 游戏
  2. Do
  3. If 找多点(再来一局, 1) = True Then
  4. TracePrint "再来一局"
  5. ElseIf 找多点(返回, 1) = True Then
  6. TracePrint "返回"
  7. Exit do
  8. Else
  9. 点击 跳跃
  10. Delay 300
  11. 点击 跳跃
  12. End If
  13. Delay 100
  14. Loop
  15. End Function
复制代码
脚本中还有涉及到点击的操作,所以可以把点击的操作单独的封装成函数,这样只要我们直接把坐标数组传递进去,就可以直接进行点击的操作。
  1. Function 点击(数组)
  2. Dim arr
  3. arr = 数组
  4. Tap arr(0),arr(1)
  5. End Function
复制代码
3、完整代码
  1. Function 对战积分
  2. Call 点击(切换模式)
  3. Delay 500
  4. Call 点击(经典模式)
  5. Do
  6. If 找多点(对战, 1) Then
  7. TracePrint "PK对战"
  8. ElseIf 找多点(世界对战, 1) Then
  9. TracePrint "点击世界对战"
  10. ElseIf 找多点(入场, 1) Then
  11. TracePrint "点击入场"
  12. Delay 1000
  13. Call 点击(开始游戏)
  14. ElseIf 找多点(进入游戏, 0) Then
  15. TracePrint "进入游戏"
  16. call 游戏()
  17. ElseIf 找多点(爱心不足, 1) Then
  18. TracePrint "爱心不足,脚本停止"
  19. ShowMessage "爱心不足,脚本停止"
  20. EndScript
  21. ElseIf 找多点(返回, 1) Then
  22. TracePrint "点击返回"
  23. ElseIf 找多点(确认, 1) Then
  24. TracePrint "点击确定"
  25. End If
  26. Delay 300
  27. Loop
  28. End Function

  29. Function 游戏
  30. Do
  31. If 找多点(再来一局, 1) = True Then
  32. TracePrint "再来一局"
  33. ElseIf 找多点(返回, 1) = True Then
  34. TracePrint "返回"
  35. Exit do
  36. Else
  37. 点击 跳跃
  38. Delay 300
  39. 点击 跳跃
  40. End If
  41. Delay 100
  42. Loop
  43. End Function

  44. Function 点击(数组)
  45. Dim arr
  46. arr = 数组
  47. Tap arr(0),arr(1)
  48. End Function

  49. Function 找多点(数组,模式)
  50. 找多点 = False
  51. Dim arr,intX,intY
  52. arr = 数组
  53. FindMultiColor arr(0), arr(1), arr(2), arr(3), arr(4), arr(5), 0, 0.9, intX, intY
  54. If intX > -1 Then
  55. 找多点 = True
  56. If 模式 = 1 Then
  57. Tap intX, intY
  58. End If
  59. End If
  60. End Function
复制代码
后记


今天的内容主要就是介绍数据结构的实际应用方法,大家如果有什么疑问或者建议可以留言反馈给我。在下次将会给大家介绍下,如何让脚本能够在不同的分辨率下正常运行。



系列院刊:

安卓按键精灵实战教学——天天酷跑(1)

安卓实战——让脚本适应多种分辨率



院刊目录
showtopic.aspx?topicid=549014&forumpage=1&page=1



 



谢谢大家阅读,记得给小编送支花花 ! 顺手点个


[tr=rgb(143, 188, 143)]

按键精灵实战班开始报名啦!

腾讯课堂视频课程

1、时间:7月1日——7月25日接受报名
2、时长:每周二、周四、周六
3、地点:实战班
4、项目准备:安装按键精灵2014,安装镇魔曲、按键精灵会员卡(报名会提供3个月)。
5、关于项目课程的安排:周一至周天白天可自行学习与实践,学院会提供为学员准备助教与老师进行解答,周二、周四、周六晚上8点开始授课,请各位学员到场学习。
6、学费费用:512(人民币)
7、本次实战课程全国招募66人,名额有限。

【招生对象】:零基础用户,快速学会按键精灵安卓版
【招生人数】:70人
【报名时间】:3/18——4/6
【学费】:128RMB
【学习日期】:1个月(2015.4.6-2015.4.27)
【上课时间】:周1、周3、周5 19:30--21:30
【上课导师】:梦幻小飞侠
【实战游戏】:[天天富翁]、[三国之刃]、[梦幻西游]、[天 龙 八 部]
点我进入按键学院报名啦招生细节进群咨询招生办主任





    已有3评分我要评分查看所有评分

    2#


      已有1评分我要评分查看所有评分

      3#

      顶!d=====( ̄▽ ̄*)b

      4#


        已有1评分我要评分查看所有评分

        5#

        顶楼主啊!教程吗。

        6#


        7#

        2222222222wwjssjwwjssjwwjssj4wwjssjwwjssj4wwjssjwwjssjwwj

        8#

        真没想到这个也可以用

        9#

        看看学习一下啊

        10#


        11#

        sdfasdfasdf

        12#

        支持下!谢谢分享!!!

        13#

        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        14#

        看一下。

        15#

        學習學習

        16#

        学习下看看

        17#


        18#

        第二波——

        正常接单中~~游戏、网页等。
        联系QQ:493618905,加好友请备注。
        专注脚本,提升能力才是王道
        19#

        来学习啦!~

        最新发布按键论坛批量签到器!!!地址:http://bbs.anjian.com/showtopic-601476-1.aspx
        20#

        我那手机没有ROOT呀。 备注;【本人已经成功ROOT无数次,因为那出新出版本手机】。 【华为荣耀 后面不记得了】。。。。。。。

        努力学习中
        发新话题 回复该主题