TC官方合作论坛

标题: 多线程运行如何在某一线程中关闭其他线程? [打印本页]

作者: nihaoma123    时间: 2017-8-10 23:33
标题: 多线程运行如何在某一线程中关闭其他线程?
我想要实现的是,掉线之后自动登录,我在自动登录的函数中将其他三个线程先暂停,这样不会影响到我登录的键鼠操作。代码如下。
但是在实际运行过程中,游戏掉线后,打怪这个功能的中的循环在继续,并没有结束。
我可能是我对线程的理解不够彻底,我不太明白 希望大佬能给我一些指引,谢谢。

变量 线程ID1
变量 线程ID2
变量 线程ID3
变量 线程ID4
//从这里开始执行
功能 加血()
    变量 颜色值
    循环(真)
        颜色值=取色(258,622)
        如果(颜色值!=#EE0000)
            键盘按键(90)   
        结束
        等待(200)//这里添加你要执行的代码
    结束//从这里开始你的代码
结束

功能 打怪()
    变量 颜色值1
    变量 颜色值2
    循环(真)
        等待(100)
        键盘按下(39)
        等待(200)
        键盘按键(88)
        等待(300)
        键盘弹起(39)
        等待(100)
        键盘按键(84)
        等待(500)
        颜色值1=取色(800,403)
        如果(颜色值1==#AA6644)
            等待(200)
            循环(真)
                等待(100)
                键盘按下(37)
                等待(200)
                键盘按键(88)
                等待(300)
                键盘弹起(37)
                等待(100)
                键盘按键(84)
                等待(500)
                颜色值2=取色(19,401)
                如果(颜色值2==#AA6644)
                    break
                结束


            结束



        结束
    结束
结束
功能 喂宠物()
    循环(真)
        键盘按键(33)
        等待(1200000)
    结束
结束

功能 自动登录()
    变量 返回序号,intx,inty
    循环(真)
        返回序号 = 找图(0,0,900,700,"rc:2.bmp|rc:123.bmp","101010",0.6,0,intx,inty)
        if(intx>0 && inty>0)
            线程暂停(线程ID1)
            线程暂停(线程ID2)
            线程暂停(线程ID3)
            等待(8000)
            鼠标移动(409,359)
            等待(2000)
            鼠标左键单击()
            等待(2000)
            鼠标移动(535,280)
            等待(500)
            鼠标左键双击()
            等待(2000)
            键盘发送字符串("nihaoma123") //密码
            鼠标移动(intx+10, inty+10)
            sleep(2000)
            鼠标左键单击()
            sleep(3000)
            鼠标移动(510, 400)
            鼠标左键单击()
            sleep(3000)
            键盘按键(13)
            sleep(3000)
            键盘按键(13)
            sleep(3000)
            键盘按键(13)
            sleep(5000)
            线程恢复(线程ID1)
            线程恢复(线程ID2)
            线程恢复(线程ID3)
        else
            调试输出(1)
        end
        sleep(5000)
    结束
结束


//启动_热键操作
功能 启动_热键()
    线程ID4=线程开启("自动登录","")
    线程ID1=线程开启("喂宠物","")
    线程ID2=线程开启("加血","")
    线程ID3=线程开启("打怪","")


结束

//终止热键操作
功能 终止_热键()
    线程关闭(线程ID1)
    线程关闭(线程ID2)
    线程关闭(线程ID3)
    线程关闭(线程ID4)
结束



作者: nihaoma123    时间: 2017-8-11 12:02
求助啊!!
作者: 498518599    时间: 2017-8-13 15:33
你还不如用线程关闭 登陆好了再开启线程




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