TC官方合作论坛
标题:
传参选择语句怎么调用? 求大神们帮帮忙!!!
[打印本页]
作者:
zhaoogua
时间:
2012-8-12 00:07
标题:
传参选择语句怎么调用? 求大神们帮帮忙!!!
求解惑: 下面代码 下面第二代码传参中的选择(方式) 和(左右键) 怎么调用?
如果 调用成功了 是否只能在一个整型的功能里面调用 ?
例如: 我创建一个 逻辑型 打怪的功能,是否必须 创建一个 整型功能 把所有要找的图片和字存在
这个整型 功能 然后才能在 逻辑型调用这个 整型功能的寻找图片?
求大神们帮忙解答下,不胜感激!!
功能 整型 吃太阳()
整型 x,y
整型 返回信息
辅助.等待(50)
找图传参.找图点击(0,0,2000,2000,"商铺.bmp",0,0)
辅助.等待(50)
找图传参.找图点击(0,0,2000,2000,"太阳包.bmp",0,0)
返回 0
功能结束
功能 整型 找图传参(整型 x1,整型 y1,整型 x2,整型 y2,字符型 内容,字符型 颜色,字符型 左右键,整型 延时,
字符型 方式,整型 整型x,整型 &整型y,浮点型 相似度=1.0)
整型 i,返回值
选择 (方式)
条件 "字":
返回值=dm.FindStr(x1,y1,x2,y2,"内容","颜色",1.0,整型x,整型y)
条件 "色":
返回值=dm.FindColor(x1,y1,x2,y2,"颜色",相似度,0,整型x,整型y)
条件 "图":
返回值=dm.FindPic(x1,y1,x2,y2,"内容","颜色",相似度,0,整型x,整型y)
选择结束
如果(整型x>0)
选择 (左右键)
条件 "左":
辅助.等待(100)
dm.MoveTo(整型x,整型y)
辅助.等待(100)
dm.LeftClick()
辅助.等待(200)
返回 返回值
条件 "右":
辅助.等待(100)
dm.MoveTo(整型x,整型y)
辅助.等待(100)
dm.RightClick()
辅助.等待(200)
返回 返回值
默认:
返回 返回值
选择结束
否则
i=i+1
如果 (i==延时)
返回 返回值
否则
辅助.等待(1000)
如果结束
如果结束
返回 0
功能结束
作者:
超自然
时间:
2012-8-12 00:09
这段代码好眼熟
作者:
zhaoogua
时间:
2012-8-12 00:14
这个就是大神你的,是我寻找好久才找到的一个 求你帮帮忙吧, 帮我解决下!
作者:
超自然
时间:
2012-8-12 00:35
方式:用来控制
查找的方式:是找字的,就输入个"字",找图的,就输入个"图",找色的就传个"色"字进去,此参数只能是"字","图","色"三种之一
左右键用来控制动作
如果你需要找到的时候点击左键,那么就输入个"左",如果需要点击右键,就灌个"右",如果不需要点击,只是查找一下标的物,那么灌除了"左","右"之外的任意字符均可
这个可以简化你的代码,比如一般我们这样写:
功能 整型 吃太阳()
整型 x,y
dm.FindPic(0,0,2000,2000,"商铺.bmp","000000",0.9,0,x,y)
if (x>0)
dm.MoveTo(x,y)
dm.LeftClick()
endif
return true
endfunction
这样有个毛病,常常会因为画面没打开或者网络延迟等等各种毛病导致找不到,那么就要写成
功能 整型 吃太阳()
整型 x,y
while (true)
dm.FindPic(0,0,2000,2000,"商铺.bmp","000000",0.9,0,x,y)
if (x>0)
dm.MoveTo(x,y)
dm.LeftClick()
break
ekse
辅助.等待(200)
endif
endwhile
return true
endfunction
好,这样当找不到的时候还有机会再找,但是引发新的问题:死循环了
当你一个功能很多句查找的时候,这样的循环代码就相当多,用这样封装之后你就这样写:
功能 整型 吃太阳()
整型 x,y
整型 返回信息
辅助.等待(50)
找图传参.找图点击(0,0,2000,2000,"商铺.bmp","000000","左",3,"图"x,y)
if (x<0)
return 999999
endif
辅助.等待(50)
找图传参.找图点击(0,0,2000,2000,"太阳包.bmp","000000","左",3,"图"x,y)
if (x<0)
return 999999
else
return 0
endif
功能结束
每个图有3秒的时间,3秒后确实没这图,吃太阳这个函数返回个9999999代表失败了,图没打开,不至于死循环
在任意需要查找的地方都可以用这个封装
作者:
zhaoogua
时间:
2012-8-12 00:53
找图传参.找图点击(0,0,2000,2000,"太阳包.bmp","000000","左",3,"图"x,y)
大神,这里的3 代表的是什么呢?
而且好像没有找图里面 相似度 与查找的方向 0 ?
还有 就是找图字色 非要是整型 就必须设置一个功能 整型
然后在逻辑型调用吗? 能否在逻辑型里面调用?
作者:
超自然
时间:
2012-8-12 01:19
相似度默认了是1.0,可以省略,一般我喜欢找字用1.0,找图找色0.9左右这样换机器时可移植性稍强一点,我个人用找字多,所以默认了1.0,碰上偶尔用来找图,就最后 "图",x,y,0.9) 给他加上
3代表查找3次也就是3秒,3秒内确实没这图,才算失败,你可以自己根据实际情况改时间.比如用在过地图的时候,你可以找个血条什么的,直接给他个120,两分钟内任意时刻,过完地图它就出来了,如果真的120秒了还没过完地图,那么8成你游戏卡了还是掉线了
至于用在那,所有需要用查找确认或者点击的的都可以应用
作者:
c724211922
时间:
2012-8-12 01:48
是我 泄露的代码吗呵呵
作者:
zhaoogua
时间:
2012-8-12 02:08
大神,我想问一下 那个找图色字 这个功能 传参 可以不写找图的方向模式嘛?
找图传参.找图点击(0,0,2000,2000,"太阳包.bmp","000000","左",3,"图"x,y,0.9)
long FindPic(x1, y1, x2, y2, pic_name, delta_color,sim, dir,intX, intY)
dir 整形数:查找方向 0: 从左到右,从上到下 1: 从左到右,从下到上 2: 从右到左,从上到下
3: 从右到左, 从下到上
找图传参 与大漠的找图例子 中间就少了这个dir(查找方向 ) 这个可以不写的吗?
还是说 不写可默认为 0?
我试着加入进去可是报错。。。
本来我试着调整型 定义传参里面的 类型顺序也是报错
本来想改成dm.FindPic(0,0,2000,2000,"内容","颜色",0.9,0,x,y,"图","左","延时")
顺序错误,纳闷了!!!!
大神别怪我刨根问底,我只是想彻底了解 这个功能的使用
作者:
超自然
时间:
2012-8-12 11:27
回复
8楼
zhaoogua
的帖子
自己再加个参数
作者:
zhaoogua
时间:
2012-8-14 18:50
功能 整型 找图传参(整型 x1,整型 y1,整型 x2,整型 y2,字符型 内容,字符型 颜色,字符型 方式,字符型 左右键,整型 延时,整型 &整型x,整型 &整型y,浮点型 相似度,整型 方向=0)
整型 i,返回值
dm.SetPath(辅助.获取资源路径("rc:"))//Dm.SetPath
选择 (方式)
条件 "字":
返回值=dm.FindStr(x1,y1,x2,y2,"内容","颜色",整型x,整型y,相似度)
条件 "色":
返回值=dm.FindColor(x1,y1,x2,y2,"颜色",整型x,整型y,相似度,方向)
条件 "图":
返回值=dm.FindPic(x1,y1,x2,y2,"内容","颜色",整型x,整型y,相似度,方向)
选择结束
如果(整型x>0)
选择 (左右键)
条件 "左":
辅助.等待(800)
dm.MoveTo(整型x,整型y)
辅助.等待(800)
dm.LeftClick()
辅助.等待(800)
返回 返回值
条件 "右":
辅助.等待(400)
dm.MoveTo(整型x,整型y)
辅助.等待(500)
dm.RightClick()
辅助.等待(600)
返回 返回值
默认:
返回 返回值
选择结束
否则
i=i+1
如果 (i==延时)
返回 返回值
否则
辅助.等待(1000)
如果结束
如果结束
返回 0
功能结束
功能 整型 按键()
辅助.等待(1000)
dm.KeyPress(72)
辅助.等待(2000)
整型 x,y
//dm.FindPic(x1,y1,x2,y2,"内容","颜色",整型x,整型y,相似度,方向)
功能测试.找图传参(0,0,800,600,"炼宝任务图.bmp","5884A2","图","左",3,x,y,1.0,0)
辅助.消息框("找到炼宝图")
辅助.等待(2000)
dm.SetDict(0,"炼宝.txt")
dm.FindStr(0,0,950,600,"冷少泉","7bac1b-000000",0,0,1.0)
辅助.消息框("找冷少泉")
辅助.等待(2000)
返回 0
功能结束
调用- =总是程序出错是为什么啊? 大漠注册了, 路径也写了,图片也添加了,窗口也绑定了···
作者:
zhaoogua
时间:
2012-8-15 02:45
神啦 谁来救救我吧
欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/)
Powered by Discuz! X3.1