2016 - 2025

感恩一路有你

监视游戏窗口,实现掉线重连

浏览量:4668 时间:2024-08-18 16:26:58 作者:采采

高高兴兴写脚本,开开心心挂游戏~但是,网络渣的时候游戏掉线怎么办?(游戏掉线还有可能是游戏服务器超负荷,例如热门游戏刚开服的时候,那掉线掉得脸都绿了。)晚上挂机,早上起来看成果,映入眼帘的居然是游戏掉线提示~天啊~这不仅仅是损失一点点挂机成果,最伤的还是我们的心情。掉线!掉线!多么烦躁!掉了就给我自己乖乖重新连上!那么,用脚本该如何实现掉线重连的功能呢?一起来了解看看。

脚本思路

脚本启动之后,循环判断游戏是否掉线,如果掉线则重登游戏,没有掉线则继续循环判断是否掉线。

步骤

1. 监视游戏窗口。循环找掉线提示。监视游戏窗口的方法:

1. 在主程序内调用子程序无限循环判断

2. 启动单独的线程来监视。小编拿武尊游戏做个掉线重连的例子,这里我们选择单独线程的方式来监控。

2. 线程相关命令:

- BeginThread 启动新线程

- StopThread 停止线程运行

- PauseThread 暂停线程运行

- ContinueThread 继续线程运行

3. 启动"监视"线程代码:

```

线程ID BeginThread(监视)

Sub 监视

//判断游戏是否掉线

End Sub

```

在线程中我们要循环查看游戏窗口中有没有出现掉线窗口,我们可以通过找字或者找图的方法,找掉线窗口里的标识图文。

找图技巧

1. 首先将运行游戏的浏览器大小调整到固定大小。本例子中浏览器的窗口大小为:1024,900,并且隐藏了浏览器收藏栏。

2. 把浏览器窗口先移动到屏幕左上角坐标(0,0)位置。

3. 使用抓抓工具将浏览器窗口整个抓取。

4. 在抓抓图像里点击掉线窗口的左上角和右下角获取找图的范围。

5. 经过第四步获取到的找图的范围坐标是相对于屏幕的,如果浏览器窗口移动了,找图范围就是错误的。所以,需要将屏幕坐标转换为浏览器窗口坐标。

掉线处理逻辑

1. 找掉线窗口,找到则点击确定。

2. 找武尊首页的标识图片,例子中小编找的是"武尊首页"这几个文字的截图。

3. 如果找到这张图,说明是第二种情况,掉线太久了之后返回到武尊游戏首页。点击上次进入的区服。

4. 如果没有找武尊首页的截图,则开始找角色界面里的"进入游戏"按钮截图。找到则点击。

通过以上步骤,我们就可以实现武尊游戏掉线重连的功能了。

掉线重连脚本

```

Dim Env sRect //定义环境变量 -因为这个值是要传递到线程中的,如果是局部变量是不支持线程的。

PutAttachment "c:a*.bmp" //释放图片

hwnd () //获取鼠标指向窗口的窗口句柄

Call (hwnd, 1024, 900)//设置窗口大小为1024,900

sRect (Hwnd) //获取窗口客户区大小

//////////////////////////////////////////////////////////

BeginThread 监视

Sub 监视

MyArray Split(sRect, "|")

Do //循环找掉线窗口,找到的话才进入第二个循环

L Clng(MyArray(0)): T Clng(MyArray(1)) //获取窗口左上角坐标

FindPic L 300,T 413,L 721,T 611,"C:掉线.bmp", 0.9,intX,intY //找掉线重连图片

If intX > 0 And intY > 0 Then

MoveTo L 568, T 566

LeftClick 1

Do //第二个循环,循环找是不是首页,是的话点击进入区服,不是的话则进入下一个循环。

FindPic L 9,T 144,L 100,T 195,"C:武尊首页.bmp", 0.9,intX,intY //找游戏首页里的"武尊首页"字体图片 判断是不是在游戏首页

If intX > 0 And intY> 0 Then

MoveTo L 72, T 683

LeftClick 1

Delay 200

End If

Do//第三个循环,找角色界面的进入游戏按钮,找到的话则点击,没有找到则继续查找

FindPic L 414,T 701,L 623,T 780,"C:进入游戏.bmp", 0.9,intX,intY //找角色界面里的"进入游戏"字体图片 判断是不是在角色选择界面

If intX > 0 And intY > 0 Then

MoveTo intX,intY

LeftClick 1

Delay 200

End If

loop

Loop

End If

Loop

End Sub

```

通过以上代码,我们可以实现武尊游戏掉线后自动重新登录的功能。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。