TC官方合作论坛

 找回密码
 立即注册
查看: 797|回复: 2
打印 上一主题 下一主题

[已解决] 我做了一个游戏脚本,读到找色的时候提示,获取BK位图失败

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-18 01:47:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上加入TC

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
请高手来给看看啊,

空间 刷图
整型 线程句柄
逻辑型 是否暂停
整型 对象句柄   // 这个是临界区的对象
// 线程执行方法
功能 整型 线程方法() //这里接收线程开启时传入的参数
//循环(真)
    //辅助.消息框("这里是线程方法!")
    //辅助.等待(100)
//循环结束
字符型 返回值=系统.枚举("SsOnline",1)  // 类名枚举
字符型[] 字符句柄集=字符型[1] //需要先初始化一次
逻辑型 是否成功=字符串.分割(返回值,"|",字符句柄集)
整型 c1,i=0
数组.大小(字符句柄集,c1)
循环(i<c1)
    //线程操作.向窗口发送内容(字符句柄集)
    线程.开启("刷图.向窗口发送内容",字符句柄集)  // 开启线程
    线程.开启("刷图.向窗口发送内容",字符句柄集)  // 开启线程
    线程.开启("刷图.向窗口发送内容",字符句柄集)  // 开启线程
    i = i + 1
循环结束
返回 0
功能结束
功能 整型 向窗口发送内容(字符型 字符句柄)
    字符型 返回值=系统.枚举(字符句柄,3)  // 父窗口枚举子窗口
    字符型[] 字符句柄集=字符型[1] //需要先初始化一次
    逻辑型 是否成功=字符串.分割(返回值,"|",字符句柄集)
    整型 c1,i=0,句柄
    数组.大小(字符句柄集,c1)
    循环(i<c1)
        如果(窗口.类名(转换.字符型转整型(字符句柄集,0)) == "Shell Embedding ")
            句柄 = 转换.字符型转整型(字符句柄集)
            跳出
        如果结束
        i = i + 1
    循环结束
辅助.等待(4000)
    重复(200)//这里写重复多少次
        线程.进入临界区(对象句柄)
        //说明: 支持多张图片(图片与图片中间使用竖线隔开)和根据四角的颜色判断是否为透明图
整型 x,y

整型 图片X坐标,图片Y坐标,图片序号,窗口句柄
窗口句柄=窗口.找到窗口("SsOnline")
图片序号=窗口.找图(窗口句柄,20,20,800,600,"rc:2.bmp",0,0.6,0,图片X坐标,图片Y坐标)
如果(图片X坐标>0)
    辅助.等待(1000)
    超级鼠标.移动(图片X坐标+20,图片Y坐标+90)
    辅助.等待(1000)
    超级鼠标.左键按下()
    辅助.等待(300)
    超级鼠标.左键弹起()
    辅助.等待(1000)
如果结束
图片序号=窗口.找图(窗口句柄,20,20,800,600,"rc:前往.bmp",0,0.6,0,图片X坐标,图片Y坐标)
如果(图片X坐标>0)
    辅助.等待(500)
    超级鼠标.移动(图片X坐标+120,图片Y坐标+33)
    辅助.等待(600)
    超级鼠标.左键按下()
    辅助.等待(300)
    超级鼠标.左键弹起()
    辅助.等待(700)
如果结束
    超级鼠标.移动(742,619)
    辅助.等待(500)
    超级鼠标.左键按下()
    辅助.等待(300)
    超级鼠标.左键弹起()
    辅助.等待(3000)
   
    超级键盘.按下(87)
    辅助.等待(4000)
    超级键盘.弹起(87)
    辅助.等待(1000)
图片序号=窗口.找图(窗口句柄,20,20,800,600,"rc:3.bmp",0,0.6,0,图片X坐标,图片Y坐标)
如果(图片X坐标>0)
    辅助.等待(1000)
    超级鼠标.移动(图片X坐标+20,图片Y坐标+90)
    辅助.等待(1000)
    超级鼠标.左键按下()
    辅助.等待(300)
    超级鼠标.左键弹起()
    辅助.等待(1000)
如果结束
    超级鼠标.移动(371,421)
    辅助.等待(500)
超级鼠标.左键按下()
辅助.等待(300)
超级鼠标.左键弹起()
辅助.等待(2000)//挑战第一波
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束


从这里往上面测试了 都没有问题,从这里往下就出问题啦(就先谈了一个消息框:获取BK位图数据失败。 然后又谈了一个:没有设置窗口句柄,好像是这句话,点掉还一直谈)




逻辑型 是否找到
循环(真)
辅助.等待(100)
//判断是否找到颜色,
是否找到=窗口.模糊找色(窗口句柄,400,10,500,100,#1010DE,0.8,0,x,y)
如果(是否找到)
    超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
超级键盘.按下(49)//按1打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(3000)
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
辅助.等待(2000)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
    重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(87)//这里按的W键,防止卡怪
辅助.等待(500)
超级键盘.弹起(87)
辅助.等待(300)
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(83)//这里按的S键 回NPC那防止卡怪
辅助.等待(500)
超级键盘.弹起(83)
辅助.等待(500)
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
超级键盘.按下(49)//按1开始打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(1000)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
    重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
辅助.等待(1000)//防卡怪结束
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
   
否则
    重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
   辅助.等待(500)
   超级键盘.按下(87)//这打完怪后停止
辅助.等待(500)
超级键盘.弹起(87)
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
辅助.等待(500)
超级键盘.按下(83)
辅助.等待(500)
超级键盘.弹起(83)//这打完怪后停止
   辅助.等待(500)
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
如果结束
循环结束
返回 0
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
  辅助.等待(3000)
图片序号=窗口.找图(窗口句柄,100,100,700,500,"rc:3.bmp",0,0.6,0,图片X坐标,图片Y坐标)
如果(图片X坐标>0)
    辅助.等待(1000)
    超级鼠标.移动(图片X坐标+20,图片Y坐标+90)
    辅助.等待(1000)
超级鼠标.左键按下()
辅助.等待(300)
超级鼠标.左键弹起()
辅助.等待(1000)
如果结束
    超级鼠标.移动(371,421)
    辅助.等待(500)
超级鼠标.左键按下()
辅助.等待(300)
超级鼠标.左键弹起()
辅助.等待(2000)//挑战第二波
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
循环(真)
辅助.等待(100)
//判断是否找到颜色,
是否找到=窗口.模糊找色(窗口句柄,400,10,500,100,#1010DE,0.8,0,x,y)
如果(是否找到)
    超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
超级键盘.按下(83)//这里按的S键 往下拉怪
辅助.等待(3500)
超级键盘.弹起(83)
辅助.等待(10000)
超级键盘.按下(87)//这里按的W键,往上拉怪
辅助.等待(6500)
超级键盘.弹起(87)
辅助.等待(6000)
超级键盘.按下(83)//这里按的S键 回NPC那
辅助.等待(3000)
超级键盘.弹起(83)
超级键盘.按下(49)//按1开始打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(400)
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
辅助.等待(5000)
重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(87)//这里按的W键,防止卡怪
辅助.等待(700)
超级键盘.弹起(87)
辅助.等待(300)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
    重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
辅助.等待(200)
超级键盘.按下(83)//这里按的S键 回NPC那防止卡怪
辅助.等待(700)
超级键盘.弹起(83)
辅助.等待(500)
超级键盘.按下(49)//按1开始打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(1000)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
    重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
辅助.等待(400)//防卡怪结束
否则
   辅助.等待(500)
   超级键盘.按下(87)//这打完怪后停止
辅助.等待(500)
超级键盘.弹起(87)
辅助.等待(500)
超级键盘.按下(83)
辅助.等待(500)
超级键盘.弹起(83)//这打完怪后停止
   辅助.等待(500)
重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
如果结束
循环结束
返回 0
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
循环(真)
辅助.等待(100)
//判断是否找到颜色,
是否找到=窗口.模糊找色(窗口句柄,400,10,500,100,#1010DE,0.8,0,x,y)
如果(是否找到)
    超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
超级键盘.按下(49)//按1打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(3000)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
    重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
辅助.等待(2000)
重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(87)//这里按的W键,防止卡怪
辅助.等待(500)
超级键盘.弹起(87)
辅助.等待(300)
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
超级键盘.按下(83)//这里按的S键 回NPC那防止卡怪
辅助.等待(500)
超级键盘.弹起(83)
辅助.等待(500)
超级键盘.按下(49)//按1开始打怪
辅助.等待(400)
超级键盘.弹起(49)
辅助.等待(1000)
重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束
超级键盘.按下(69)//按E加血
辅助.等待(400)
超级键盘.弹起(69)
辅助.等待(1000)//防卡怪结束
重复(10)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
重复(3)
超级键盘.按下(81)
辅助.等待(400)
超级键盘.弹起(81)
辅助.等待(400)
    重复结束   
否则
   辅助.等待(500)
   超级键盘.按下(87)//这打完怪后停止
辅助.等待(500)
超级键盘.弹起(87)
辅助.等待(500)
超级键盘.按下(83)
辅助.等待(500)
超级键盘.弹起(83)//这打完怪后停止
   辅助.等待(500)
   重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
//跳出
如果结束
循环结束
返回 0
重复(15)
窗口.发送按键(窗口句柄,32)
辅助.等待(300)
重复结束
    超级鼠标.移动(836,619)
    辅助.等待(100)
超级鼠标.左键按下()
辅助.等待(300)
超级鼠标.左键弹起()
辅助.等待(1000)
    超级鼠标.移动(464,440)
    辅助.等待(100)
超级鼠标.左键按下()
辅助.等待(300)
超级鼠标.左键弹起()
辅助.等待(3000)
超级键盘.按下(192)
辅助.等待(400)
超级键盘.弹起(192)
辅助.等待(4000)
线程.离开临界区(对象句柄)
    重复结束
   
    返回 0
功能结束
功能 逻辑型 开始_点击()
//这里添加你要执行的代码
//线程句柄=线程.开启("蜀山刷图.线程方法","")  // 开启线程
蜀山刷图.线程方法()
返回 真
//函数返回语句
功能结束
功能 逻辑型 退出_点击()
//这里添加你要执行的代码
辅助.退出()
返回 真
//函数返回语句
功能结束

功能 逻辑型 按钮0_点击()
//这里添加你要执行的代码
// 实现暂停与恢复的功能方法
如果(!是否暂停)
    线程.暂停(线程句柄)
    是否暂停 = 真
否则
    线程.恢复(线程句柄)
    是否暂停 = 假
如果结束
返回 真
功能结束

功能 逻辑型 按钮1_点击()
//这里添加你要执行的代码
线程.关闭(线程句柄)
返回 真
功能结束

功能 逻辑型 初始化()
//这里添加你要执行的代码
对象句柄=线程.创建临界区()
返回 真
功能结束
功能 逻辑型 销毁()
//这里添加你要执行的代码
线程.删除临界区(对象句柄)
返回 真
功能结束
空间结束
//空间结束语句

回复

使用道具 举报

板凳
发表于 2012-9-18 10:20:35 | 只看该作者
应该是不支持TC后台找图吧.你用AB抓抓图像那里截个图看看能不能显示出来.
回复 支持 反对

使用道具 举报

沙发
 楼主| 发表于 2012-9-18 02:12:39 | 只看该作者
给看看啊
回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18043773号

GMT+8, 2025-10-11 07:07 , Processed in 0.134930 second(s), 24 queries .

Powered by 海安天坑软件科技有限公司

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表