马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
先上代码 `````
空间 我的程序
//这是一个以"我的程序"命名的空间,下面的语句都在这个空间里实现
整型 线程编号
//定义一个整型的全局变量来获取线程句柄
功能 整型 大唐自动打怪()
//自定义一个大唐自动打怪的方法
整型 窗口编号
//定义一个整型的全局变量来获取窗口句柄
整型 x坐标
整型 y坐标
逻辑型 蓝值
逻辑型 生命值
逻辑型 取怪颜色
字符型 接受游戏窗口名
窗口编号=窗口.找到窗口("大唐无双公测 (1.3.120:169363 1.0.91:169324)")
如果(窗口编号!=0)
窗口.置顶(窗口编号)
循环(真)
键盘.按键(9,1)
//键盘按1下切换键
辅助.等待(500)
取怪颜色=图像.区域找色(432,182,434,189,#0000bd,0,x坐标,y坐标)
//区域取怪颜色,并获得X,Y坐标 这里我用的是取怪最左边血条颜色
循环(取怪颜色)
//取怪颜色为真时,执行循环语句
键盘.按键(50,1)
//键盘按2键1次
辅助.等待(1000)
键盘.按键(49,1)
//键盘按1键1次
辅助.等待(1000)
键盘.按键(51,1)
//键盘按3键1次
辅助.等待(1000)
生命值=图像.区域找色(341,182,343,186,#0000bd,0,x坐标,y坐标)
//区域取生命值颜色,并获得X,Y坐标 百分之70的样子 回血
如果(!生命值)
//当生命值小于这个值时,运行下面语句
键盘.按键(54,1)
//键盘按下6键,加血
辅助.等待(1000)
如果结束
蓝值=图像.区域找色(342,200,347,204,#BD4900,0,x坐标,y坐标)
//区域取蓝值颜色,并获得X,Y坐标 这里也是百分之70的样子 回蓝
如果(!蓝值)
//当蓝值小于这个值时,运行下面语句
键盘.按键(55,1)
//键盘按下7键,加蓝
辅助.等待(1000)
如果结束
取怪颜色=图像.区域找色(432,182,434,189,#0000bd,0,x坐标,y坐标)
//判断怪是否死亡
辅助.等待(500)
键盘.按键(192,1)
辅助.等待(500)
循环结束
循环结束
否则
辅助.消息框("没有找到游戏窗口")
如果结束
返回 0
功能结束
功能 逻辑型 开始_点击()
//这里添加你要执行的代码,这里是你点击开始按钮执行的代码
线程编号=线程.开启("我的程序.大唐自动打怪")
//开启大唐自动打怪函数
返回 真
//函数返回语句
功能结束
功能 逻辑型 退出_点击()
//这里是你退出的时候要执行的代码,这类是你点击退出按钮执行的代码
辅助.退出()
返回 真
//函数返回语句
功能结束
空间结束
//命名空间结束语句
我感觉不对的地方就是 取怪颜色那里 本来我是取怪血条最左边的颜色的 不过 运行中发现 就算怪没有死亡 也会运行到 第二次取怪颜色 后面的 我在第二次取怪颜色后加了一条辅助消息框实验过 理论上 如果 取怪颜色那里正常的话 如果 怪还没有死亡 应该是跳回循环第一句(键盘.按键(50,1))执行的吧 不过 好象加红加蓝这两个 倒正常 也就是 当血或者蓝掉到预定值后 才会执行加血加蓝 没有到的时候倒不会喝药 大家帮我看看哪个地方有问题
|