吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 803|回复: 1
收起左侧

[其他求助] 按键精灵循环抓图问题

[复制链接]
18907994442 发表于 2024-6-5 22:54
100吾爱币


Call 大漠
Delay 10
hwnd = dm.FindWindow("SDL_app","Androidscreen")
If hwnd = 0 Then
    MsgBox "投屏窗口不存在", 4096
    EndScript
End If
Delay 50
TracePrint hwnd
Delay 50
dm_ret = dm.SetWindowSize(hwnd,460,1047)'修改窗口大小
Delay 50
dm.MoveWindow hwnd,0,0'移动窗口位置
Delay 50
//前台 鼠标:前台键盘:前台 模式0
dm_ret = dm.BindWindow(hwnd,"normal","normal","normal",0)
If dm_ret = 0 Then
    MsgBox "绑定失败",4096
    EndScript
End If
////////////////////////////////////////////////////
Delay 100
Text = Plugin.File.ReadFileEx("D:\内测五雷工资号\2角色浮生答题.txt")
T_Text = split(Text, "|")
For i = 0 To UBound(T_Text) - 1
    账号 = split(T_Text(i), "----")(0)
    密码 = split(T_Text(i), "----")(1)
    TracePrint "第 " & i + 1 & " 个账号是 " & 账号 & "    密码是 " & 密码
    Call Plugin.Sys.SetCLB(账号)'把获取到的账号放入剪切板
    Call 登录()
    Call 任务()
Next
Sub 登录()
    Do
        Delay 500
        If 识_图(165,165,292,260,"登录界面.bmp") Then
            TracePrint "登录界面"
            Call zj(206,369)'点击账号框
            For 20
                Delay 10
                KeyPress "BackSpace", 1'删除原账号
            Next
            Delay 300
            KeyDown 17, 1
            Delay 300
            KeyPress 86, 1'粘贴账号
            Delay 300
            KeyUp 17, 1
            Delay 200
            KeyPress "Enter", 1
            Delay 300
            Call zj(324,574)'点击登录
            Exit Do
        End If
        TracePrint "检测输入账号" & time
    Loop
    Do
        Delay 100
        If 识_图(34,118,404,197,"线路选择.bmp") Then
            TracePrint "线路选择"
            Delay 500
            Call zj(256,552)'点击线路4
            Exit Do
        End If
        TracePrint "检测线路选择" & time
    Loop
    Do
        Delay 100
        If 识_图(3,71,451,657,"选择角色.bmp") Then
            TracePrint "选择角色"
            Delay 500
            Call zj(64,392)'点击第1角色
            Exit Do
        End If
        TracePrint "检测角色界面" & time
    Loop
    Do
        Delay 100
        If 识_图(266,739,405,802,"公告确定.bmp") Then
            TracePrint "公告确定"
            Delay 500
            Call zj(intX,intY)'点击公告确定
        End If
        If 识_图(266,739,405,802,"公告返回.bmp") Then
            TracePrint "公告返回"
            Delay 100
            Call zj(intX, intY)'点击公告返回
            Delay 50
            For 4
                Delay 10
                Call zj(223,665)'点击空白出,防止有窗口未关闭×口
            Next
            Exit Do
        End If
        TracePrint "检测公告界面" & time
    Loop
End Sub
Sub 任务
    Delay 300
    Call zj(344, 407)'点击浮生录
    Delay 300
    Call zj(328, 211)'点击化身集
    Delay 300
    Call zj(186, 751)'点击对话
    Do
        Delay 500
        If 识_图(5,353,169,448,"大.bmp") =True
            TracePrint "找到1-1题目"
            Call zj(159,503)'点击答题位置1
            Delay 200
            Call zj(159, 503)'点击答题位置1
            Exit Do
        ElseIf 识_图(5,353,169,448,"白.bmp") =True  
            TracePrint "找到1-2题目"
            Call zj(159,503)'点击答题位置1
            Delay 200
            Call zj(167, 551)'点击答题位置2
            Exit Do
        ElseIf 识_图(5,353,169,448,"小.bmp")=True   
            TracePrint "找到2-2题目"
            Call zj(167, 551)'点击答题位置2
            Delay 200
            Call zj(167, 551)'点击答题位置2
            Exit Do
            ExitIf 识_图(5,353,169,448,"敖.bmp") =True   
            TracePrint "找到2-1题目"
            Call zj(167, 551)'点击答题位置2
            Delay 200
            Call zj(159, 503)'点击答题位置1
        End If
    Loop
End Sub
For 3
    Delay 300
    Call  zj(220, 649)'关闭弹窗
Next
Delay 300
Call zj(420, 195)'关闭浮生录
Delay 300
Call zj(417,712)'点击退出
Delay 300
Call zj(297,531)'点击确定
Function 识_图(x1, y1, x2, y2, 图片名)
    Delay 50
    dm_ret = dm.FindPic(x1,y1,x2,y2,图片名,"050505",0.8,0,intX,intY)
    If intX >= 0 and intY >= 0 Then
        识_图 = true
    Else
        识_图 = false
    End If
End Function
Sub zj(x, y)
    Delay 200
    dm.MoveTo x, y
    Delay 150
    dm.LeftClick
    Delay 200
End Sub
////////////////////////////////////////////////////
Sub OnScriptExit()
    Delay 10
    dm_ret = dm.UnBindWindow()
    Delay 10
End Sub
////////////////////////////////////////////////////
////////////////////////////////////////////////////
Sub 大漠
    PutAttachment "C:\dnf_pm", "*.*"
    PutAttachment ".\Plugin","RegDll.dll"
    Call Plugin.RegDll.Reg("C:\dnf_pm\dm.dll")'注册大漠
    Set dm = createobject("dm.dmsoft")'创建对象
    If len(dm.ver())>0 Then'检查是否注册成功
    Else
        MessageBox "大漠注册失败"
        EndScript
    End If   
    dm_ret = dm.SetPath("C:\dnf_pm")'设置全局路径
    dm_ret = dm.SetDict(0, "dm_soft.txt")'创建字库
End Sub
////////////////////////////////////////////////////




  删除USB任务这些命令 脚本可以正常运行【萌新自己网上找资料加进去的。。没想到没用】
想要效果:  脚本运行会出现4种图,出现了其中一种就运行对应的点击坐标 就跳出这个任务。。 求大哥教教我怎么写。。  
奉上全部金币。。。

最佳答案

查看完整内容

是循环找吗 如果是 do 大漠找多图的命令。根据返回的值,调用对应的子程序。感觉你这写的太啰嗦。 适当延迟 loop 先整明白流程。在去实现。看你写的。你没写流程,很难明白你的情境是什么。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

xbang 发表于 2024-6-5 22:54
是循环找吗
如果是
do
大漠找多图的命令。根据返回的值,调用对应的子程序。感觉你这写的太啰嗦。
适当延迟
loop
先整明白流程。在去实现。看你写的。你没写流程,很难明白你的情境是什么。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-13 02:45

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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