TC官方合作论坛

标题: 循环问题~大神们帮看看。。。急~~~~~~ [打印本页]

作者: kovsko    时间: 2012-10-5 09:26
标题: 循环问题~大神们帮看看。。。急~~~~~~
function bool 再次雷天()
    system.setcurrentpath(help.getrcpath("rc:"))
    dm.SetDict(0,"任务NPC.txt")
    int intx,inty,intx1,inty1,intX,intY,ret
    help.sleep(500)
    while(true)
        dm.FindPic(26,501,118,547,"交付.bmp","202020",0.9,0,intx,inty)
        if(intx>0)
            break
        endif
    endwhile
    help.sleep(800)
    dm.MoveTo(intx+10,inty+8)
    help.sleep(700)
    dm.LeftClick()
    help.sleep(500)
    dm.LeftClick()
   
    dm.FindStr(868,234,968,273,"瘟疫蚩尤","fd2424-101010",0.9,intx1,inty1)
    help.sleep(1000)
    dm.MoveTo(intx1+8,inty1+4)
    help.sleep(300)
    dm.LeftClick()
    help.sleep(10000)
   
    while(true)
        ret=dm.FindStr(805,238,883,276,"雷天","7bac1b-000000",0.9,intX,intY)
        help.sleep(500)
        if(ret>0)
            break
        else
            开始任务.打怪()
        endif
    endwhile
    help.sleep(200)
    dm.MoveTo(intX+3,intY+3)
    help.sleep(300)
    dm.LeftClick()
    help.sleep(100)
    开始任务.交付接取()
   
    return true
endfunction



上面这段是一个一直找"雷天" 两个字的循环。找到了 就跳出。没找到就一直执行"开始任务.打怪()"
不知道为啥 任务完成了..雷天 两个字也出来了..他还在那里一直打怪.....可是呢 我把红色字体注释掉~他就可以找到"雷天"了..是不是问题出在 开始任务.打怪()
功能上了?

下面粉色的字是打怪的功能大神门帮看下。。

function int 打怪()
    system.setcurrentpath(help.getrcpath("rc:"))
    int intX,intY,intx,inty
    help.sleep(500)
    while(true)
        help.sleep(500)
        dm.KeyPress(9)
        help.sleep(500)
        dm.FindPic(390,29,616,74,"百分号.bmp","202020",0.9,0,intX,intY)
        if(intX>0)
            while(true)
                help.sleep(500)
                dm.KeyPress(49)
                help.sleep(500)
                dm.FindPic(390,29,616,74,"百分号.bmp","202020",0.9,0,intX,intY)
                if(intX>0)
                    continue
                else
                    break   
                endif
            endwhile
        else
            continue
            
        endif
    endwhile
   
    return 0
endfunction



这里是不是有问题呀。。。 那里有问题给详细说说呗~~~~~~~~~~

作者: subugui    时间: 2012-10-5 09:30
你打怪是一个死循环.应该打怪几次跳出...
作者: kovsko    时间: 2012-10-5 09:32
回复 2楼subugui的帖子

这位大神有时间的话。帮改改  怎么弄呗,,我现在看着都发懵了、、、
作者: subugui    时间: 2012-10-5 09:33
在打怪里面写判断是否找到雷天..如果找到跳出循环..
或者写.打怪的循环条件就是没有找到雷天..
作者: kovsko    时间: 2012-10-5 17:47
没人帮顶呀,,自己顶呀。。
作者: pest    时间: 2012-10-8 05:05
学习中




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