TC官方合作论坛

标题: 教你做第一个脚本:百分比加血 [打印本页]

作者: kitty2008du    时间: 2011-12-2 20:09
标题: 教你做第一个脚本:百分比加血
[attach]1453[/attach]本人在学习TC时有很多人帮助,现已自已做了第一个脚本,现将他给大家发布并详细介绍原理。但愿能给像我一样的初学者给一点点启示。为了方便大家观看,本人将脚本中每一行加入原理介绍。脚本是应用在大话西游2中点自动以及战斗加自设置
以上是脚本及介绍:
界面:

[attach]1453[/attach]
[attach]1453[/attach]

***************分割线***************************************************

    空间 坐天自动
//定义默认空间
线程1
线程运行1
线程2
线程运行2
线程3
线程运行3
百分比
百分
//以上是定义数据类型
功能 按钮1_点击()
//这里添加你要执行的代码
百分=编辑框.获得文本("编辑框1")
百分比=百分
辅助.消息框("设置已保存")
返回 真
功能结束
//以上是点击“保存设置”按钮的脚本
功能 线程运行3()
//以下是线程运行的脚本
窗口集=系统.枚举("大话西游 II ($Revision: ",0)
//枚举窗口,得到大话西游的窗口,只是针对于单开的,双开会出错的!
图像值
窗口
窗口=窗口集
窗口.激活(窗口)
窗口.设置位置(窗口,1,1)
//将窗口激活并调整到屏幕坐标1,1的位置
图片X坐标,图片Y坐标,图像序号
X,Y
A=0
循环(真)
图像序号=图像.找图(0,0,1440,900,"E:\\实验\\自动.bmp",#102030,0.9,0,图片X坐标,图片Y坐标)
//查找战斗中的自动按钮并将坐标赋值到:图片X坐标,图片Y坐标
如果 (图片X坐标>0||图片Y坐标>0)
//如果找到,如果找不到两个坐标都为“-1”所以如果大于0的话就肯定找到了
    如果(A==0)
    A=1
//这两个设置是为了在一场战斗中遍历点“自动”这个图设置的和下面战斗外一起是互相关联的,保证只点击一次
       鼠标.移动(图片X坐标+30,图片Y坐标+15)
//找到图后,鼠标移动到图上,由于得到的两个坐标点是自已抓图的左上角的坐标点,所以需要向右和向下移动一点,防止点
//不上,移动多少看你的图大小,只要别移出找到的图就可以
    辅助.等待(500)
    鼠标.左键单击(1)
     辅助.等待(500)
//点一下找到的图,即战斗中的自动
    鼠标.移动(图片X坐标-40,图片Y坐标-40)
//鼠标移走,因为如果还在图片上停留,下次找图会因为有鼠标找不到。(本脚本是前台的,所以会有移走的动作)
    X=图片X坐标
    Y=图片Y坐标
//赋值,为下面的“否则”做准备
    如果结束
否则
      如果(X>10||Y>10)
//如果没有找到“自动”这个图X,Y这两个的数值是“-1”所以如果上面条件成立肯定是找到图了,即已经战斗过至少一次
        如果 (A==1)
             A=0
//由于一开始A的值为0,如果是1的话哪么至少战斗过一次,即此脚本必须要在战斗中才能开始执行,如果不在战斗中,会循
//环到战斗中才开始。
//下面的战斗外加血的设置,执行到这里要满足两个条件:1,在不战斗中,2,在战斗中点击了一次“自动”
      图像值=图像.坐标点取色((71+6)*百分比/100+(X-6),Y-487)
//这句是战斗外加血的设置,原理是血条(右边X坐标-左边X坐标)*刚才保存设置中的百分比
//(由于是整数,所以后面还要除100)/100+左边X的坐标,这样就想得到了加血点的X坐标,配合Y坐标,得到此点正是你设
//置的百分比血量所在,得到此点的图像值,最后XY坐标点不要注意,明白解释的意思就行了
              如果(图像值>650016)
//图像值和空血格比较,这个根据不同的游戏设定,大话2中的血格为红色,空血格为灰色,所以比较一下,都是十进制的数
//红色要比灰色的十进制数值小,当然“650016“大约等于血格的红色,防止偏色可以自已设定,这之中需要记住的是:红色
//血格的值比灰色的要小,所以这条可以理解为:如果以上的坐标点大于大于红色血格的值,即是空血格了
移动((71+6)*百分比/100+(X-4),Y-487)
    辅助.等待(50)
    鼠标.右键单击(1)
//鼠标移动到血条上加血,大话2加血是点下右键就可以快速加的
    如果结束
如果结束
如果结束
如果结束
辅助.等待(1000)
//防止卡机加个延时
循环结束
返回 真
功能结束
功能 线程运行2()
//线程2和线程1都是显示脚本运行和电脑开机多长时间设置的,这里就不解释了,主要是为了让大家理解多线程的应用
循环(真)
    DU
    小时2
分钟2
秒2
小时1
分钟1
秒1
字符串1
辅助.等待(1000)
DU=系统.获取毫秒()
   小时2=DU/1000/60/60
    分钟2=(DU/1000/60)-(小时2*60)
    秒2=(DU/1000)-(小时2*60*60)-(分钟2*60)
   小时1=小时2
分钟1=分钟2
秒1=秒2
字符串1=字符串.连接("电脑已经运行了",小时1)
字符串1=字符串.连接(字符串1,"小时")
字符串1=字符串.连接(字符串1,分钟1)
字符串1=字符串.连接(字符串1,"分钟")
字符串1=字符串.连接(字符串1,秒1)
字符串1=字符串.连接(字符串1,"秒")
标签.设置文本("标签1",字符串1)
循环结束
返回 真
功能结束
功能 线程运行1()
TIME
TIME1
TIME2
小时1
分钟1
秒1
小时
分钟

字符串
TIME1=系统.获取毫秒()
循环(真)
    辅助.等待(1000)
    TIME2=系统.获取毫秒()
    TIME=TIME2-TIME1
    小时1=TIME/1000/60/60
    分钟1=(TIME/1000/60)-(小时1*60)
    秒1=(TIME/1000)-(小时1*60*60)-(分钟1*60)
   小时=小时1
分钟=分钟1
秒=秒1
字符串=字符串.连接("脚本已经运行了",小时)
字符串=字符串.连接(字符串,"小时")
字符串=字符串.连接(字符串,分钟)
字符串=字符串.连接(字符串,"分钟")
字符串=字符串.连接(字符串,秒)
字符串=字符串.连接(字符串,"秒")
标签.设置文本("标签0",字符串)
循环结束
返回 真
功能结束
功能 开始_点击()
//这里添加你要执行的代码
//定义好了线程需要开启,这里加上线程开启。
线程1=线程.开启("坐天自动.线程运行1","")
线程2=线程.开启("坐天自动.线程运行2","")
线程3=线程.开启("坐天自动.线程运行3","")
返回 真
//函数返回语句
功能结束
功能 退出_点击()
//这里添加你要执行的代码
辅助.退出()
返回 真
//函数返回语句
功能结束
功能 热键0_热键()
//热键开启线程,即我们常说的热键开始
线程1=线程.开启("坐天自动.线程运行1","")
线程2=线程.开启("坐天自动.线程运行2","")
线程3=线程.开启("坐天自动.线程运行3","")
返回 真
功能结束
功能 热键0_失去焦点()
//这里添加你要执行的代码
热键.销毁("热键0")
热键.注册("热键0")
返回 真
功能结束
功能 热键1_热键()
//这里添加你要执行的代码
//热键关闭线程,即我们所说的按热键停止脚本运行
线程.关闭(线程1)
线程.关闭(线程2)
线程.关闭(线程3)
返回 真
功能结束
功能 热键1_失去焦点()
//这里添加你要执行的代码
热键.销毁("热键1")
热键.注册("热键1")
返回 真
功能结束
功能 按钮0_点击()
//这里添加你要执行的代码
//按钮停止线程
线程.关闭(线程1)
线程.关闭(线程2)
线程.关闭(线程3)
返回 真
功能结束
空间结束
//空间结束语句
***************分割线***************************************************
由于本人文化有限(小学语文没及及格),表达之中有不明白之处还要请各位多多理解
大家可以多看看,也可以自已试着加上自动加法的功能,由于本人的级别低,附件太大传不上去,如果需要的可以在后面留下QQ号,我会把整个工程打包给需要的你发过去的!
:L 不知不觉写了半个小时了。最后需要提醒大家的是看贴要回贴也是一种美德。有不足之处请各位多提宝贵意见。

作者: kitty2008du    时间: 2011-12-2 20:10
自己顶一个先:)
作者: zeng529    时间: 2011-12-2 20:40
:D顶一个
作者: yysaplie    时间: 2011-12-2 21:02
很努力啊
作者: 莫默    时间: 2011-12-2 21:17
很不错!!!
作者: VIP    时间: 2011-12-2 21:45
不错,代码真长
作者: 4107125    时间: 2011-12-2 21:46
我怎么没人帮呢,在
作者: 4107125    时间: 2011-12-2 21:54
392000603能发给我吗
作者: dzh    时间: 2011-12-2 21:57
谢谢分享!我要努力学习!
作者: 小丶笨笨    时间: 2011-12-2 22:17
不错不错!
作者: 460912849    时间: 2011-12-2 22:28
要视频就好 这样怎么看的懂.....
作者: kitty2008du    时间: 2011-12-2 22:36
晕,视频我哪会做呀!您就将就一点吧!
作者: hackedu    时间: 2011-12-4 11:01
看惯了按键。看这个代码,头晕,不懂。
作者: 大仙    时间: 2011-12-4 11:42
回帖啊
作者: 大仙    时间: 2011-12-4 11:43
我还是留个QQ吧526602041方便交流
作者: 大仙    时间: 2011-12-4 11:56
刷积分,,好麻烦。。验证码亚验证码
作者: 大仙    时间: 2011-12-4 11:57
刷积分,,好麻烦。。验证码亚验证码1
作者: 大仙    时间: 2011-12-4 11:57
刷积分,,好麻烦。。验证码亚验证码2
作者: VIP    时间: 2011-12-4 15:09
楼主好,我想参考你的脚本,能发完整代码给我看下吗,谢谢了 我的QQ:1079917775
作者: 夜、殇    时间: 2011-12-4 16:00
支持一下啊
作者: 醉狂    时间: 2011-12-4 16:54
不错,这也算学有所成吧,恭喜
作者: kitty2008du    时间: 2011-12-4 17:51
回复 20楼夜、殇的帖子

如果你想要源代码可以联系我QQ"29851002,加的时候注明TC
作者: kitty2008du    时间: 2011-12-4 17:55
回复 18楼大仙的帖子

如果你能识别验证码的话,当然,包括远程代答,希望你能传授我!!!!!!!!!!!!!!!!!
作者: 不错    时间: 2011-12-4 19:04
谢谢分享了啊 ~
作者: liaohai    时间: 2011-12-4 21:05
哥,这是你所谓的简单啊。我盲目了
作者: kitty2008du    时间: 2011-12-4 23:10
回复 25楼liaohai的帖子

这方面有三个线程,我希望你不要注重写代码的多少,需要的是注重原理,如果你能看懂其中的原理,哪么恭喜你,你已以能独立编写一些简单的脚本了!
注:其实我写的代码看起来很长,如果你能仔细看完会发现他是由几个独立的功能拼凑起来的!
作者: gp1396    时间: 2011-12-5 02:12
好东西我喜欢!我强力的顶!:strong:
作者: love13love14    时间: 2011-12-10 12:27
支持下,,写的很不错
作者: yuan9201    时间: 2011-12-10 20:18
不错,顶
作者: lqgtc001    时间: 2011-12-13 15:24
膜拜。。我要是能写出这些代码就好了。。
作者: 三猫大叔    时间: 2011-12-13 16:53
不错,支持一个。
作者: w_526081092    时间: 2011-12-13 17:37
其实我什么都看不懂
作者: slr111111    时间: 2011-12-13 17:57
顶一下         继续学习
作者: wangdongze1984    时间: 2011-12-26 19:34
你QQ多少啊  我用的你代码说15行有问问 我不明白 能说说怎么回事呢?
作者: 新手小白白    时间: 2011-12-26 20:09
不回帖 是不够意思的行为,我看 我就顶!!1
作者: fabulis    时间: 2011-12-28 22:10
先顶一下慢慢看。
作者: die13719076310    时间: 2011-12-29 01:45
有志者事必成  加油楼主 祝你写出功能更好更强大的脚本
作者: 9165222    时间: 2011-12-29 06:34
感谢分享
作者: 919434039    时间: 2011-12-29 12:02
顶壹个 我也在努力学住
作者: wect12    时间: 2012-1-8 12:15
哈哈 支持啊 新手就能学出这么好的脚步 不错
作者: 菜B    时间: 2012-1-8 12:50
顶一个
作者: 小瓜    时间: 2012-1-8 14:18
顶个,辛苦了饿!
作者: 245120345    时间: 2012-1-8 19:32
不错,可是我还全部看不明白,在学习中
作者: 绝望的生鱼片    时间: 2012-1-8 19:51
我也刚接触TC,顶一个,努力学习
作者: 250136457    时间: 2012-1-8 21:35
顶一个
作者: 智盛辅助软件    时间: 2012-1-9 08:56
:-D支持下楼主
作者: 无处藏身    时间: 2012-3-24 18:24
好aaaaaaaa
作者: a3206208    时间: 2012-3-24 18:30
老实说我真的不明白
作者: 陈涛    时间: 2012-3-24 21:23
我是初学者QQ992895043      希望加个群,或者楼主加我QQ   不懂的时候可以问各位大侠。
作者: boyuting    时间: 2012-3-24 21:39
路过学习中
作者: kitty2008du    时间: 2012-3-25 14:03
回复 49楼陈涛的帖子

我自己建的群29544547但是刚建成,人比较少,只有几个人,如果有问题也许不能及明答复,如果有兴趣可以加,加的时候请注明“TC,自力更生!”
作者: hngsdj    时间: 2012-3-29 09:26
留个脚印吧。。。
作者: zx_fy    时间: 2012-3-29 13:02
:strong:不错不错
作者: zws5878    时间: 2012-3-29 14:35
拿分走人!!!
作者: 开心小鱼    时间: 2012-3-29 16:56
看贴要回贴也是一种美德
作者: zheng2001zhou    时间: 2012-4-6 19:21
QQ283792987能发个我参考下
作者: woaihuili8    时间: 2012-4-11 11:01
牛,值得顶
作者: xiao13lang    时间: 2012-4-11 14:26
很好很强大,不过看得我头晕
作者: xunyao966    时间: 2012-4-11 17:00
顶顶顶顶顶顶顶顶顶顶
给我发一下整个工程包好吗?
我现在正在学习:(
作者: xiao13lang    时间: 2012-4-12 08:16
非常不错
作者: 18210319520    时间: 2012-4-12 09:13
geile
作者: zxm4475    时间: 2012-4-12 10:50
顶一个,学习了呵呵
作者: zxm4475    时间: 2012-4-12 11:04
本人在学习TC时有很多人帮助,现已自已做了第一个脚本,现将他给大家发布并详细介绍原理。但愿能给像我一样的初学者给一点点启示。为了方便大家观看,本人将脚本中每一行加入原理介绍。脚本是应用在大话西游2中点自动以及战斗加自设置
以上是脚本及介绍:
界面:



kitty2008du 发表于 2011-12-2 20:09:02
想问下,里面的
原理是血条(右边X坐标-左边X坐标)*刚才保存设置中的百分比
//(由于是整数,所以后面还要除100)/100+左边X的坐标,这样就想得到了加血点的X坐标,配合Y坐标,得到此点正是你设
//置的百分比血量所在


这一句,为什么要除这个100?直接加左边的坐标不行吗?
比如 左边x=500 右边x=600
血条长是100  乘以 50% 就是 50  然后加左边的X 是550  这个不行吗?

作者: 刃帅    时间: 2012-4-12 11:47
很感谢楼主的分享
作者: kitty2008du    时间: 2012-4-12 14:33
回复 63楼zxm4475的帖子

由于我们界面输入的时候是百分数,也就是如果是50%,就输入50,所以后面要除以100,如果是输入百分比加血的时候要求输入百分数,比如50%加血,就输入50%,就又不一样了!由于是新手,所以有些还不太完善,还请理解
作者: xudanghui163    时间: 2012-4-12 15:49
什么啊
作者: xiao13lang    时间: 2012-4-12 23:49
学习了
作者: rapsame    时间: 2012-4-13 13:29
学习了
作者: 1906016667    时间: 2012-4-13 23:21
看看啊啊
作者: hxdcc    时间: 2012-4-14 00:51
正在学习中
作者: hxdcc    时间: 2012-4-14 00:52
呵呵,忘把自己QQ放上了,38557537
作者: 371222975    时间: 2012-4-14 10:50
?????
作者: 响尾蛇    时间: 2012-4-14 10:58
顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶
作者: saomkc    时间: 2012-4-14 12:00
自己顶一个
作者: HXP735582878    时间: 2012-4-14 16:44
兄弟 写的不错  我也是初学的   有空可以教教我吗  我QQ735582878
作者: zhang898600    时间: 2012-4-25 13:55
学习~~~~
作者: TC_小虎    时间: 2012-4-26 10:08
这几个如果语句看的人头晕
作者: 我又来了    时间: 2012-5-11 14:56
顶顶顶、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
作者: k5puvak    时间: 2012-5-11 16:03
拿回去学习了
作者: jq4561057    时间: 2012-6-4 10:58
楼主威武谢谢分享
作者: zhufl00    时间: 2012-6-16 21:39
很不错的哦
作者: scyx12345    时间: 2012-6-17 10:53
回复 1楼kitty2008du的帖子

看到头大
作者: bfebji    时间: 2012-6-17 20:10
这个必须支持
作者: 184252904    时间: 2012-6-18 13:09
QQ:184252904
作者: justaplayer    时间: 2012-6-18 16:48
顶个
作者: zou0804    时间: 2012-6-19 21:48
牛人啊,坐标点取色还能这样用啊!!!!
作者: welcome7288    时间: 2012-8-14 03:42
牛人啊,收我做徒弟吧!
作者: scj2zxy    时间: 2012-9-6 15:52
很强大
作者: xiaozhu58023    时间: 2012-9-11 14:12
我是菜鸟求帮助啊、穷学生愿意交个朋友的+QQ:771993620
作者: shi0806449    时间: 2012-11-2 19:43
刚开始学习TC,虽然看不懂,还是觉得LZ很厉害!
作者: tired    时间: 2012-12-9 11:18
好厉害~~
作者: a447932204    时间: 2012-12-14 01:07
定一个 我菜鸟中的菜鸟 我还羡慕那
作者: 2195730    时间: 2013-1-21 04:54
  好长。。。先回复 在收藏 慢慢看。。睡觉去了
作者: goodbest87    时间: 2013-2-8 19:40
小白的级别 表示完全看不懂,但还是要学习的
作者: feng353392713yy    时间: 2013-2-9 23:27
vvvvvvvvvvvvvvvvvvvvvvv
作者: dyw1336402184    时间: 2013-2-10 10:41
136402184给我发一个行吗??
作者: czczcz    时间: 2013-2-20 00:20
就算不隐藏也回复啊 素质看帖
作者: 373572825    时间: 2013-2-24 17:54
很好,顶
作者: qq200809158    时间: 2013-3-18 00:23
好东西
作者: 1343865839    时间: 2013-3-24 15:51
不错 顶个




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1