TC官方合作论坛

标题: 关于窗口坐标点找色的bug, [打印本页]

作者: PGhuman    时间: 2015-1-11 20:55
标题: 关于窗口坐标点找色的bug,
本帖最后由 PGhuman 于 2015-1-11 21:00 编辑

空间:
namespace xj
int a=2623442,h
int z=0

function xj(hwnd)
/////
/////-----------以下的测试代码在此处
/////
endfunction

function button0_click()
    h=thread.beginthread("xj.xj",a)
endfunction
endnamespace

第一种情况:这种情况下直接运行会无限循环,但若是单步调试的话亦可正常检测到颜色值并break(与第二种情况的测试条件相同且多次测试,第二种能够正常检测到颜色值并break。)
while(1)////判断点的颜色值是否符合条件
        z=window.getpixelcolor(hwnd,455-3,582-25)
        help.sleep(300)
        if(z==#FFFF50)
            window.leftclick(hwnd,455-3,582-25)
            break
        else
            window.sendkeypress(hwnd,71)
        endif
        z=0
endwhile

这是第二种情况:
while(1)////判断点的颜色值是否符合条件
        xj.fc1(hwnd)////找色函数用单独的功能调用,此处与第一种情况不同
        help.sleep(300)
        if(z==#FFFF50)
            window.leftclick(hwnd,455-3,582-25)
            break
        else
            window.sendkeypress(hwnd,71)
        endif
        z=0
endwhile
function fc1(hwnd)////找色函数用单独的功能调用,只有一个句柄参数
    z=window.getpixelcolor(hwnd,455-3,582-25)
endfunction

这是第三种情况:这种情况下同样会无限循环
while(1)////判断点的颜色值是否符合条件
        xj.fc1(hwnd,455,582)////fc1功能带3个参数,一个句柄参数,两个坐标参数。此处与第二种情况不同
        help.sleep(300)
        if(z==#FFFF50)
            window.leftclick(hwnd,455-3,582-25)
            break
        else
            window.sendkeypress(hwnd,71)
        endif
        z=0
endwhile
function fc1(hwnd,x,y)
    z=window.getpixelcolor(hwnd,x-3,y-25)
endfunction

附:用AB抓抓得到的窗口内坐标 x 要减 3 , y 要减 25 在窗口找图找色中才是相对应的坐标。。

问:是 tc 的问题还是游戏窗口的问题?

作者: 落小雨    时间: 2015-1-12 01:35
都有可能




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1