|
楼主 |
发表于 2012-6-15 18:56:33
|
显示全部楼层
以下是原码,修改雨天大大的作品
抓鸡程序
#import "dm.dmsoft" DM
空间 win
//定义默认空间
功能 逻辑型 mkey_fun() //宣告,函数
整型 mkey=窗口.找到窗口(编辑框.获得文本("编辑框1"))
窗口.激活(mkey)
窗口.设置位置(mkey,883,724)
辅助.等待(500)
返回 真
功能结束
整型 hThread //线程句柄,变量宣告
功能 逻辑型 Dragon_fun() //宣告,函数
整型 是否成功1,是否成功2
逻辑型 是否成功
整型 intx,inty,intx2,inty2
//------------
整型 Dragon_win=窗口.找到窗口(编辑框.获得文本("编辑框0")) //把魔龙传说填入Dragon_win自订变量中
窗口.激活(Dragon_win)
窗口.设置位置(Dragon_win,0,0)
辅助.等待(500)
DM.SetPath("E:\\koo\\Tc.test\\win\\win") //全局路径
是否成功1=DM.FindPic(0,50,1026,800,"lv33.bmp","000000",0.8,0,intx,inty)
是否成功2=DM.FindPic(0,50,1026,800,"egg1.bmp","000000",0.8,0,intx2,inty2)
窗口.激活(Dragon_win)
//------------循环-----------
循环(真)
如果(inty+30>inty2-30&&inty+30<inty2+30) //Y轴在范围
如果(intx+15>intx2) //开始X轴的移动
////// //37← 39→ 40↓ 38↑
超级键盘.按下(37)
辅助.等待(200)
超级键盘.弹起(37)
辅助.等待(150)
////
否则
超级键盘.按下(39)
辅助.等待(200)
超级键盘.弹起(39)
辅助.等待(150)
////
如果结束
如果(inty+30>inty2-30&&inty+30<inty2+30)
如果(intx+15>intx2-40&&intx+15<intx2+40) //X轴在范围
如果(intx+15>intx2) //人在怪右边的方向 转向,反之。
超级键盘.按下(37)
辅助.等待(10)
超级键盘.弹起(37)
辅助.等待(100)
超级键盘.按键(32,4) //抓鸡蛋时间
辅助.等待(6500)
超级键盘.按下(37)
辅助.等待(10)
超级键盘.弹起(37)
辅助.等待(100)
超级键盘.按键(32,4) //捡鸡蛋
辅助.等待(100)
超级键盘.按键(32,4)
超级键盘.按下(37) //走一段 太近不能再次抓
辅助.等待(200)
超级键盘.弹起(37)
辅助.等待(10)
否则
超级键盘.按下(39)
辅助.等待(150)
超级键盘.弹起(39)
辅助.等待(10)
超级键盘.按键(32,4) //抓鸡蛋时间
辅助.等待(6500)
超级键盘.按下(39)
辅助.等待(10)
超级键盘.弹起(39)
辅助.等待(100)
超级键盘.按键(32,4) //捡鸡蛋
辅助.等待(100)
超级键盘.按键(32,4)
超级键盘.按下(39) //走一段 太近不能再次抓
辅助.等待(200)
超级键盘.弹起(39)
辅助.等待(10)
如果结束
如果结束
如果结束
否则
如果(inty+30>inty2) //Y轴的移动
超级键盘.按下(38)
辅助.等待(200)
超级键盘.弹起(38)
辅助.等待(200)
////
否则
超级键盘.按下(40)
辅助.等待(200)
超级键盘.弹起(40)
辅助.等待(200)
如果结束
如果结束
是否成功1=DM.FindPic(0,50,1026,800,"lv33.bmp","000000",0.8,0,intx,inty)
// 是否成功1=大漠.找字(0,0,2000,2000,"鞋子","5e5e60-000000|535252-000000|d4d6da-000000|d5d5d6-000000|f3f7fa-000000|fbfdfd-000000|f0f6f9-000000|fbfdfe-000000|d2d9dc-000000|d7dbda-000000",1.0,intx,inty)
如果(是否成功1>=0)
// 辅助.消息框("找到怪")
//DM.MoveR(intx,inty)
//鼠标.移动(intx,inty)
//辅助.等待(100)
//鼠标.左键单击(1)
否则
//辅助.消息框("没有找到人")
DM.MoveR(300,300) //鼠标移动是因为有可能鼠标飞掉,找不到人
辅助.等待(100)
DM.LeftClick()
如果(intx+15>intx2) //人在怪右边的方向 转向,反之。
DM.KeyDown(37)
辅助.等待(100)
DM.KeyUp(37)
辅助.等待(100)
否则
DM.KeyDown(39)
辅助.等待(100)
DM.KeyUp(39)
辅助.等待(100)
如果结束
如果结束
是否成功2=DM.FindPic(0,50,1026,800,"egg1.bmp","000000",0.8,0,intx2,inty2)
如果(是否成功2>=0)
//DM.MoveR(intx2,inty2)
//鼠标.移动(intx2,inty2)
//辅助.等待(100)
//
否则
//辅助.消息框("没有找到怪")
//DM.MoveR(300,300) //鼠标移动是因为有可能鼠标飞掉,找不到怪
鼠标.移动(300,300)
辅助.等待(100)
DM.LeftClick()
如果结束
循环结束
//------------循环结束-----------
DM.UnBindWindow()
返回 真
//函数返回语句
功能结束
功能 逻辑型 开始_点击()
hThread=线程.开启("win.Dragon_fun","1")
线程.开启("win.mkey_fun","1")
返回 真
功能结束
功能 逻辑型 退出_点击()
线程.关闭(hThread)
DM.UnBindWindow()
辅助.退出()
返回 真
//函数返回语句
功能结束
//功能 逻辑型 热键f10_热键()
//线程.开启("win.mkey_fun","1")
//返回 真
//功能结束
功能 逻辑型 热键f11_热键()
线程.关闭(hThread)
返回 真
功能结束
空间结束
//空间结束语句 |
|