TC官方合作论坛
标题:
求助我写了个很简单的老是开不起线程
[打印本页]
作者:
lixuefeng1008
时间:
2012-5-3 23:02
标题:
求助我写了个很简单的老是开不起线程
空间 大唐无双
整型 线程句柄
整型 x,y
整型 窗口句柄
功能 逻辑型 打怪()
逻辑型 是否找到
线程句柄=线程.开启("大唐无双.打怪()")
整型 窗口句柄=窗口.找到窗口("大唐无双公测 (1.3.183:180436 1.0.122:180182)")
窗口.激活(窗口句柄)
辅助.等待(200)
返回 真
//函数返回语句
功能结束
循环 真
键盘.按下(17)
键盘.弹起(9)
辅助.等待(889)
是否找到=窗口.区域找色(窗口句柄,505,128,667,129,#0000BD,1,x,y)
循环
键盘.按下(49)
辅助.等待(200)
键盘.按下(50)
辅助.等待(200)
//打怪过程中,取自己生命值判断,是否需要给自己加血
生命值=窗口.区域找色(窗口句柄,309,127,471,126,#0000BD,1,x,y)
辅助.等待(200)
//判断血量是否低于50
如果(!生命值)
键盘.按下(56)
辅助.等待(200)
如果结束
//打怪过程中,取自己蓝值判断,是否需要给自己蓝 0%
蓝值=窗口.区域找色(窗口句柄,311,145,472,143,# 9C3C00,1,x,y)
//判断蓝值是否低于150
如果(!蓝值)
键盘.按下(57)
辅助.等待(200)
如果结束
功能 逻辑型 退出_点击()
线程.关闭(线程句柄)
返回 真
功能结束
辅助.退出()
返回 真
//函数返回语句
功能结束
空间结束
//空间结束语句
提示第7行 ( ("大唐无双.打怪()"))是错误的是参数列表?怎么回事?老是开不起线程
望高手来指点感激不尽,处男作,最新的TC版本
作者:
lixuefeng1008
时间:
2012-5-3 23:04
帮帮看看还有哪里错了免得我还来发帖啊。。。
作者:
cylhb
时间:
2012-5-3 23:17
去掉 ()...
("大唐无双.打怪")
作者:
夏末
时间:
2012-5-3 23:45
线程句柄=线程.开启("大唐无双.打怪()")
复制代码
不要这行
大唐无双.打怪()
复制代码
把这行写到 一个按钮事件里面 或热键事件里面
才可以 打开线程
还有楼主 你怎么 编译通过的 复制你代码 编译 出了一大堆错误
作者:
lixuefeng1008
时间:
2012-5-3 23:52
我现在也很头疼啊,这么简单的都出错???
作者:
z0230226
时间:
2012-5-4 00:01
你这个没有热键开启,把线程开启写线程自己里面了当然开不了
作者:
lixuefeng1008
时间:
2012-5-4 00:06
空间 大唐无双
整型 线程句柄
整型 x,y
整型 窗口句柄
功能 逻辑型 打怪()
逻辑型 是否找到
窗口句柄=窗口.找到窗口("大唐无双公测 (1.3.183:180436 1.0.122:180182)")
窗口.激活(窗口句柄)
如果(窗口句柄==0)
辅助.消息框("请确保已开启游戏!")
如果结束
窗口.设置位置(窗口句柄,0,0)
辅助.等待(200)
是否找到=窗口.区域找色(窗口句柄,505,128,667,129,#0000BD,1,x,y)
循环 (真)
键盘.按下(17)
键盘.弹起(9)
辅助.等待(889)
如果(!是否找到)
键盘.按键(49,1)
辅助.等待(200)
键盘.按键(50,1)
辅助.等待(200)
如果结束
返回 真
辅助.退出()
返回 真
空间结束 就是最后这个空间结束提示说没定义的字符?怎么办啊
作者:
lixuefeng1008
时间:
2012-5-4 00:26
这个我仿照那个的自动打怪,写了个点那个开始和昨天一样美反应?
空间 大唐无双自动打怪
功能 逻辑型 打怪线程()
整型 x
整型 y
整型 窗口句柄
逻辑型 取怪颜色
逻辑型 取怪生命值
逻辑型 生命值
逻辑型 蓝值
//获得界面文本框的值
窗口句柄=窗口.找到窗口("大唐无双公测 (1.3.183:180436 1.0.122:180182)")
//查找游戏窗口是否存在
//根据返回的值判断为窗口是否存在,如果返回值为0,证明没有找到窗口,否则找到窗口
如果(窗口句柄==0)
辅助.消息框("没有找到游戏窗口")
否则
窗口.设置位置(窗口句柄,0,0)
辅助.等待(1000)
//这里写个while死循环,大家都知道,自动打怪是不停的打的,而不是打一次,
//所以我这里写个while,不停的重复执行打怪功能
//循环(true)
//tab键的按键码是9,这里我们执行tab操作,就是锁定怪,大部分游戏都是通过tab实现的
//但是你不同游戏的锁定怪,你这里可以选择不同的键来锁定。
循环(true)
键盘.按键(9,1)
辅助.等待(1000)
//这里通过区域找色,根据延时判断是否锁定了怪,如果锁定了,就会进下面的while循环
//执行打怪操作,反正继续执行外面的while循环,继续执行锁定怪的操作.
取怪颜色=图像.区域找色(10,10,500,600,0,#1E3C04,x,y)
//如果返回true,证明锁定了怪,那就执行下面的打怪功能
循环(取怪颜色)
//2的键码是50,这里按下2键。也就是功能键技能2
键盘.按键(50,1)
//按键完成延时,这个是延时1秒执行下面的操作
辅助.等待(1000)
//1的键码是49,这里按下1键.也就是功能键技能1
键盘.按键(49,1)
辅助.等待(1000)
键盘.按键(49,1)
辅助.等待(1000)
//这个是取生命值的颜色,根据颜色判断。当生命值到这个坐标点,延时值变了,
//证明掉血掉到这里了,要执行补血功能了。如果返回的是true,证明血没有掉
生命值=图像.区域找色(10,10,500,600,0,#1E3C04,x,y)
如果(!生命值)
//6的键码是54,这里按下6键.也就是功能键补血的
键盘.按键(54,1)
辅助.等待(1000)
如果结束
//这个判断和上面取生命值一样的,这个是取蓝值
蓝值=图像.区域找色(10,10,500,600,0,#1E3C04,x,y)
如果(!蓝值)
//7的键码是55,这里按下7键.也就是功能键补蓝的
键盘.按键(55,1)
辅助.等待(1000)
如果结束
//这个时候取怪的颜色,是为了怪是否死亡,如果没有死,继续执行while循环打怪
//如果死了,停止这个while循环,跳到外面的while循环,再锁定怪。
取怪颜色=图像.区域找色(10,10,500,600,0,#1E3C04,x,y)
循环结束
循环结束
如果结束
返回 真
功能结束
功能 逻辑型 退出_点击()
辅助.退出()
返回 真
功能结束
功能 逻辑型 开始_点击()
//这里添加你要执行的代码
返回 真
功能结束
空间结束
作者:
tyuyan
时间:
2012-5-4 09:11
我觉得说问题 。 自己写说自己的版本,, 因为TC是有些版本。 一些方法的参数改了。
线程句柄=线程.开启("大唐无双.打怪") 这里是2.1一下的写法
线程句柄=线程.开启("大唐无双.打怪","") 这里是3.0以上的写法
还有你要把线程放到开始里面去执行。
作者:
花开花落
时间:
2012-5-4 09:44
小三说的对。。
作者:
落叶归根
时间:
2012-5-4 10:42
楼楼上的正解
作者:
战斗之神
时间:
2012-5-4 10:58
不要照搬别人的代码啊! 错在哪里都不找到。 还要其他人来找茬。。
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1