按键精灵制作自用游戏脚本所需的简单操作

分享一下疫情期间自己玩游戏时用按键精灵制作脚本常用的关键字,函数和设计方式。

版本:按键精灵2014

#按键精灵语法大小字母写无影响,变量可以用汉字。
#按键精灵2014和按键精灵9语法上有一定区别,以下适用于按键精灵2014,不适用与按键精灵9
#屏幕拖动需要使用平滑移动
#尽量不要用区域找图,并且区域设置范围不要太大,采用多点找色更加稳定
#多做容错机制,把功能定义在函数中,给函数设置返回值来判断功能是否执行成功
#SayString方法会偶尔出现输入错误的情况,原因不详,可能是因为SayString最后输出位置会在鼠标位置上,所有尽量把鼠标放在输入框最后。
#如果电脑上安装了Visual Stadio ,使用VS之后可能会无法进行按键精灵调试,重启电脑即可,原因可能是系统库干扰,不重启可以运行,但是不能调试。
#没有使用插件,验证码部分使用的是第三方打码,打码平台会提供相应代码,操作简单方便。大漠做字库需要自己做,初学者稍微麻烦,用自己做的字库,识别效率高,可拓展性强。

Global:用于定义全局变量,类型不限

Global 自动挖矿线程, 人机验证线程            //定义线程ID接收器
自动挖矿线程 = BeginThread(自动挖矿)
人机验证线程 = BeginThread(人机验证)

Global 账号(18), 密码(18)		         //定义长度为18的数组
账号(0)="************"
密码(0)="************"

UBound(账号)								//返回数组最大可用下标

Global 首次登陆, 每日首登, 换号记录, 换号次数 //定义变量
换号次数=0
首次登陆 = True
每日首登 = True
换号记录=0

Dim:用于定义局部变量,类型不限

	dim mx
    dim x,y
    dim tx,ty

TracePrint:输出log,用于调试,参数必须为String类型,拼接字符串使用 &

TracePrint "开始获取个人信息界面"
TracePrint "已经换号:" & CStr(换号次数) & "次"

Delay:延时执行,单位毫秒

Delay 20000

Rem :标记一个位置
Goto :前往标记处

Rem 继续
Goto 继续

发声提示,参数1:频率 ,参数2:时间(毫秒)

Call Plugin.Media.Beep(200, 1000)

获取句柄

    Hwnd =Plugin.Window.Find ("Qt5QWindowIcon","夜神模拟器")

句柄窗口前置,Hwnd为句柄参数

    Plugin.Window.Show Hwnd

移动句柄窗口,Hwnd为句柄参数

    Plugin.Window.Move Hwnd, 0, 0 

区域找图(实际制作脚本时推荐使用多点找色)
参数1-4:区域坐标(左上,右下XY),
参数5:图片路径,
参数6精确度(0.1-1,精确逐渐增高,一般0.9为好,自行调节)
参数7-8,返回的XY坐标

FindPic 611,736,989,859,"D:\images\进入游戏.bmp",0.9,intX,intY
    If intX > 0 And intY > 0 Then 
        MoveTo intX, intY
        Delay 1000
        LeftClick 1
        TracePrint "进入游戏成功"
    Else 
        TracePrint "没找到进入游戏,重新再找"
        Goto 进入游戏
    End If

鼠标移动

MoveTo 800, 800

鼠标左键点击

LeftClick 1

鼠标左键压下

LeftDown 1

鼠标左键抬起

LeftUp 1

鼠标拖动屏幕使用单纯的压下抬起是无效的,要使用平滑移动

//鼠标移动至起始位置,然后左键下压
MoveTo 900, 500
LeftDown 1
Call 平滑移动鼠标to(450, 350, 1000, 900, 500,10)
LeftUp 1
Function 平滑移动鼠标to(终点坐标px,终点坐标py,移动时间,起点坐标beginx,起点坐标beginy,平滑灵敏度)
    dim mx
    dim x,y
    dim tx,ty
    x=起点坐标beginx
    y=起点坐标beginy
    tx=abs(x-终点坐标px)
    ty=abs(y-终点坐标py)
    if tx>=ty
        mx=tx
    else
        mx=ty
    end if
    if mx>0
        for i = 0 to mx step 平滑灵敏度
            sx=int((终点坐标px*i+x*(mx-i))/mx)
            sy=int((终点坐标py*i+y*(mx-i))/mx)
            moveto sx,sy
            delay int(移动时间/mx*平滑灵敏度)
        Next
    else
        delay 移动时间
    end if
    MoveTo 终点坐标px, 终点坐标py
    平滑移动鼠标to=true
End Function

定义函数
给函数名赋值表示函数返回值

Function 收矿
	//业务代码
	收矿=true       //函数返回值
End Function
  • 11
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
好的,下面是一个简单的 Python 按键精灵脚本制作教程: 1. 安装 PyAutoGUI 库 PyAutoGUI 是一个用于自动化 GUI 操作的 Python 库,可以用它来模拟鼠标和键盘操作。可以通过在命令行输入以下命令来安装该库: ``` pip install pyautogui ``` 2. 导入 PyAutoGUI 库 安装库之后,要在你的 Python 脚本中导入 PyAutoGUI 库,可以使用以下代码: ```python import pyautogui ``` 3. 编写脚本 下面是一个简单按键精灵脚本示例,它可以执行如下操作: - 打开记事本程序 - 等待 5 秒钟 - 输入一段文本 - 保存并关闭记事本 ```python import pyautogui import time # 打开记事本程序 pyautogui.press('win') pyautogui.typewrite('notepad') pyautogui.press('enter') # 等待 5 秒钟 time.sleep(5) # 输入一段文本 pyautogui.typewrite('Hello, world!') # 保存并关闭记事本 pyautogui.hotkey('ctrl', 's') pyautogui.typewrite('test.txt') pyautogui.press('enter') pyautogui.hotkey('alt', 'f4') ``` 在这个脚本中,我们使用 `pyautogui.press()` 函数模拟按下 Windows 键和输入 notepad,使用 `time.sleep()` 函数等待 5 秒钟,使用 `pyautogui.typewrite()` 函数输入文本,使用 `pyautogui.hotkey()` 函数模拟按下组合键(例如 Ctrl + S),使用 `pyautogui.press()` 函数模拟按下 Enter 和 Alt + F4。 4. 运行脚本 将以上代码保存为一个 Python 文件,然后在命令行中运行它,就可以看到记事本程序被打开,并自动输入文本,保存并关闭。 注意事项: - 在使用 PyAutoGUI 库时,一定要小心操作,确保不会对系统或其他程序造成不必要的影响。 - 在编写按键精灵脚本时,要考虑到各种情况的异常处理,例如窗口未打开、输入框未获取到焦点等。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值