|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 wuyunlong516 于 2014-12-1 20:26 编辑
从新发帖重要部分的源码,整个源码可以通过编译,主要是打怪操作是个无限循环,当按下快捷退出键的时候出现异常关闭窗口,如果不是无限循环,快捷键结束可以通过,不会出现异常,跪求导师,大神,高手,同学们来帮解答一下,如果出现这个无限循环的情况,退出应该是怎么写呀?
空间 QQ空间
ts=数组[0]
技能组合=数组[0]
功能 主线程() ----------------------------------------获取窗口功能----------------------------------------------
变量 返回值,数组大小,i
句柄数组=数组[1]
返回值=系统.枚举("游戏窗口名",0)
如果(返回值=="")
辅助.消息框("没有找到游戏窗口")
返回 假
如果结束
字符串.分割(返回值,"|",句柄数组)
数组空间.大小(句柄数组,数组大小)
遍历(i=0;i<数组大小;i++)
ts=数组空间.重定义(ts,真,i+1)
参数=句柄数组&","&i
线程.开启("QQ空间.子线程",参数,"QQ空间.解绑",i)
辅助.等待(1000)
遍历结束
功能结束
功能 子线程(参数) --------------------------------------绑定每个窗口并执行功能----------------------------------------------
i,窗口句柄,绑定返回值
参数数组=数组[1]
字符串.分割(参数,",",参数数组)
窗口句柄=参数数组[0]
i=参数数组[1]
ts=com("ts.tssoft")
绑定返回值=ts.BindWindow(窗口句柄,"gdi2","dx","dx",0)
辅助.等待(1000)
如果(绑定返回值==0)
help.messagebox("绑定失败")
返回 假
如果结束
ts.SetPath(辅助.获取资源路径("rc:"))
//下面进行操作
QQ空间.打怪操作(i)
功能结束
功能 打怪操作(i) ----------------------------------重点在这里,无限循环打怪功能---------------------------------------------
延时=辅助.随机数(100,1000) //设置一个随机延时
循环(真) //无限循环开始
ts.KeyPress(9) //键盘按下TAB选怪
辅助.等待(延时)
小怪血条=ts.GetColor(521,36) //判断小怪是否满血,是就执行,否从新选怪
如果(小怪血条=="961818")
循环(真) //按技能操作
ts.KeyPress(49) //技能键1
辅助.等待(延时)
ts.KeyPress(50) //技能键2
辅助.等待(延时)
是否死亡=ts.GetColor(411,36) //判断小怪是否死亡,是就跳出,否继续按技能
如果(是否死亡=="ae8308")
辅助.等待(延时)
跳出
否则
继续
如果结束 //判断小怪死亡结束
循环结束 //循环按技能结束
如果结束 //判断小怪满血结束
循环结束 //无限循环,小怪杀完继续选,继续杀.
功能结束
功能 开始游戏_热键() -------------------------------------开始热键----------------------------------------------
线程.开启("QQ空间.主线程","")
功能结束
功能 结束游戏_热键() -------------------------------------结束热键----------------------------------------------
辅助.退出() //如果在结束的时候,加入线程.关闭(线程句柄),和ts.UnBindWindow()不行的哈,还是要卡死
功能结束
功能 解绑(i) ---------------------------------如果没有无限循环,执行完所有功能自动进行解绑----------------------------------------------
ts.UnBindWindow()
功能结束
功能 初始化() ----------------------------------------------初始化注册插件----------------------------------------------
辅助.注册插件("rc:\\TSPlug.dll",真)
功能结束
空间结束
|
|