TC论坛

 找回密码
 立即注册
查看: 239|回复: 10

[已解决] 求助,萌新,新写的一个挂机程序,有毛病,请大神来指...

[复制链接]
  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

    发表于 2018-5-8 22:55:22 | 显示全部楼层 |阅读模式

    马上加入TC

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

    x
    大概就是先定义一个找色,如果找不到就一直循环按向上还有S键挂机,但只要游戏回合结束切换到一个界面找到那个颜色就执行。 现在感觉执行最后一个while(true)之前都没有问题,就是在游戏内挂机时(也就是从最后一个 while(true)开始)有俩问题
    1、循环只按S键,向上的键不给按,而且感觉按S键的时候也间隔了挺长时间,
    2、在循环完以后找到颜色了鼠标移动不给执行。请问大神们这是为什么?
    3、我想让执行最最后一个 while(true)之后再循环一直执行整个程序,应该怎么办?
    以上就是我的问题,请大神指教。


    var 线程ID
    //从这里开始执行
    function 执行()
    //这里添加你要执行的代码

    mousemove(515,494)
    sleep(1000)
    mouseleftclick(1)
    sleep(500)
    mouseleftclick(1)
    sleep(1100)
    mousemove(915,392)
    sleep(2000)
    mouseleftclick(1)

    while(true)
    var x=-1,y=-1
    var ret=findcolor(430,429,628,516,"1F1F1F",1.0,0,x,y)
    if(ret>=0)
    sleep(1000)
    mousemove(x,y)
    sleep(1000)
    mouseleftclick(1)
    sleep(10000)
    mousemove(496,729)
    sleep(3000)
    mouseleftclick(1)
    sleep(10000)
    end
    end


    while(true)
    var x=-1,y=-1
    var ret=findcolor(475,777,557,790,"BD4E5D",1.0,0,x,y)
    if(ret=0)
    mousemove(521,705)
    sleep(1500)
    mouseleftclick(1)
    sleep(4000)
    mouseleftclick(1)
    else
    keydown(38,3)
    keyup(38)
    keypress(83,2)

    end

    end


    end




    //启动_热键操作
    function 启动_热键()
    线程ID=threadbegin("执行","")
    end


    //终止热键操作
    function 终止_热键()
    threadclose(线程ID)
    end


    回复

    使用道具 举报

  • TA的每日心情
    郁闷
    19 小时前
  • 签到天数: 1091 天

    [LV.10]进化论

    发表于 2018-5-9 01:07:05 | 显示全部楼层
    1:你的第一个循环体内没有跳出指令,是一个死循环,不明白是怎样能跳出到能执行第2个循环体的?
    2:第2个循环体下 if(ret>=0),这里应该这样写.
    3:第2个循环体下,按键之间需要加入延时,一般如果可以用"按键"可以解决的,就不需要用"按下,弹起"来解决.同时第2个循环体也是死循环,没有跳出.
    4:在代码外面再套一个大循环就可以一直执行这个函数了.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

     楼主| 发表于 2018-5-11 09:55:22 | 显示全部楼层
    lxy7336483 发表于 2018-5-11 09:54
    大概循环已经做好,现在可以持续循环,还是有两个问题。
    1、最后一个循环,现在还是不一直按38号键,我就想 ...

    上边写错了,应该是keydown(38)
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    19 小时前
  • 签到天数: 1091 天

    [LV.10]进化论

    发表于 2018-5-11 12:02:41 | 显示全部楼层
    lxy7336483 发表于 2018-5-11 09:54
    大概循环已经做好,现在可以持续循环,还是有两个问题。
    1、最后一个循环,现在还是不一直按38号键,我就想 ...

    1:弹起38按键后加入延时,延时的大小根据你机器的速度不同而不同,机器实在太慢时适当加入大一点的延时.可自行调试该延时值,一般500-1000就足够.

    2:看你的代码意思,找到色后和找不到色后的判断操作是应该这样写了,并且看你找色的范围比较小,所耗的时间是忽略的.如果你觉得程序运行缓慢,可在硬件或其他延时代码处找原因.

    PS:for循环只是可以精确的控制你的循环次数,现在你的代码功能下无此需要.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

     楼主| 发表于 2018-5-11 14:40:09 | 显示全部楼层
    chen71512 发表于 2018-5-11 12:02
    1:弹起38按键后加入延时,延时的大小根据你机器的速度不同而不同,机器实在太慢时适当加入大一点的延时.可 ...

    后来也试了试在弹起后边加延迟,但是感觉它就没有自动按38,好像延迟完以后直接去按的83……
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

     楼主| 发表于 2018-5-11 14:54:08 | 显示全部楼层
    chen71512 发表于 2018-5-11 12:02
    1:弹起38按键后加入延时,延时的大小根据你机器的速度不同而不同,机器实在太慢时适当加入大一点的延时.可 ...

    是否可以加入“继续语句”加速循环速度,如果能加应该怎样加?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

     楼主| 发表于 2018-5-11 15:14:41 | 显示全部楼层
    chen71512 发表于 2018-5-11 12:02
    1:弹起38按键后加入延时,延时的大小根据你机器的速度不同而不同,机器实在太慢时适当加入大一点的延时.可 ...

    测试了,38键还是没有按下

    键盘按下(38)
    等待(1000)
    键盘弹起(38)

    我想让它按下38键持续时间长点(比如说:延长10秒),应该在哪里加什么命令,是在键盘弹起下边加等待吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2018-5-12 09:13
  • 签到天数: 7 天

    [LV.3]循序渐进

     楼主| 发表于 2018-5-11 15:42:06 | 显示全部楼层
    chen71512 发表于 2018-5-11 12:02
    1:弹起38按键后加入延时,延时的大小根据你机器的速度不同而不同,机器实在太慢时适当加入大一点的延时.可 ...

    刚才新建了一个试了试,我其实就想让它一直死按着38不放一会,应该用什么命令呢,刚才试了试,只用keydown也不行。是不是我命令用错了?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    前天 09:32
  • 签到天数: 54 天

    [LV.5]凌波微步

    发表于 前天 09:37 | 显示全部楼层
    这个问题很简单需要的话加我我给你说
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

    关闭

    小黑屋|TC论坛 ( 苏ICP备10231425号-2

    GMT+8, 2018-5-23 20:59 , Processed in 0.150762 second(s), 28 queries .

    Powered by 湖南长沙异次元网络科技有限公司

    © 2001-2013 Comsenz Inc.

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