首先要明确你那个游戏血条颜色是统一颜色还是渐变
要明确空血颜色是纯色吗比如黑色,然后考虑如何自动加血
1、假如血条是纯色,你就可以根据百分比计算一个监控区间,这个区间找不到你的血条颜色,就补血
2、假如空血之后是纯色,你还是计算出需要监控区间的坐标,找到空血的颜色就补血
假设你的血条 是 20,470开始 20,70结束
你想在50%以下自动补
区间按照20像素考虑
区间坐标 上坐标 20,470-400*0.5 下坐标 20,470-400*0.5+20
找色的语法见下面例程
函数空间: | 中文:图像 | 英文:color | 函数描述: | 模糊找色 | 函数原型: | 模糊找色(lx,ly,rx,ry,color,sim,scantype,rx,ry) | findrectpixelcolorex(lx,ly,rx,ry,color,sim,scantype,rx,ry) | 函数参数: | lx: 左上角的x坐标 注:lx<RX
ly: 左上角的y坐标 注:ly<RY
rx: 右下角的x坐标 注:lx<RX
ry: 右下角的y坐标 注:ly<RY
color: 十六进制颜色值,如 #FFFFFF、#0F30DE
sim: 颜色的相似度(取值范围0.5~1.0)
scantype: 扫描方式,0: 从左上到右下 1: 从中间到四周 2: 从右下到左上
rx: 返回的x坐标
ry: 返回的y坐标 | 返回值: | 如果出现的颜色值是区域内指定坐标点的颜色,返回真,否则返回假,返回所找图片在指定窗口的x坐标与y坐标的参数 返回的x坐标,返回的y坐标 | 脚本示例: | 中文示例:复制代码
- 返回的x坐标=0,返回的y坐标=0
- 是否找到=图像.模糊找色(10,10,500,600,#1E3C04,0.8,0,返回的x坐标,返回的y坐标)
- 如果(是否找到)
- 辅助.消息框(返回的x坐标)
- 辅助.消息框(返回的y坐标)
- 辅助.消息框("找到该颜色")
- 否则
- 辅助.消息框("没有找到该颜色")
- 如果结束
英文示例:复制代码
- x=0,y=0
- tru=color.findrectpixelcolorex(10,10,500,600,#1E3C04,0.8,0,x,y)
- if(tru)
- help.messagebox(x)
- help.messagebox(y)
- help.messagebox("找到该颜色")
- else
- help.messagebox("没有找到该颜色")
- endif
|
|