按键精灵脚本怎么用按键控制循环运行(「按键精灵脚本详解」轨迹滑动的写法)

大家好,我是公众号3分钟学堂的郭立员,今天给大家带来一个轨迹滑动的写法教程,轨迹滑动的这个名称是在群里看到他们问问题提到的,可以理解为模拟手动滑动,它的应用是在防止平台检测滑动方面使用。

轨迹滑动介绍


所谓轨迹滑动就是滑动不走直线,我对比下普通滑动和轨迹滑动的区别。


【普通滑动】


【轨迹滑动】

人在缓慢滑动屏幕的时候,很难滑出一条直线,通常情况都是曲线的。

曲线原理


一条直线(线段),想要变成曲线,可以在首尾两点之间,加入其它的点,并且这些点偏离原来的直线,最终形成分段的曲线。



这里面有两个要点:


①加入点进行分段,最简单的就是均分,比如加入7个点,平均分成8段

②偏移,坐标加上一个随机数


实例演示


假设起始点的坐标是(100,400),结束点的坐标是(300,400),分成5段。



直线的情况,每个点的纵坐标都是400,我们稍微调整一下纵坐标的数值~



调整后,可以看到原本的直线,变成了折线,这里纵坐标调整的数值如果是一个随机数,那么折线的幅度就会是随机不规则的。



继续微调折点的坐标,这一次把横坐标也加一个随机数。


按键精灵脚本怎么用


经过几次调整以后,原本一条直线变成了不规则的曲线。


代码


Dim x1=100,y1=400,x2=300,y2=400 Dim num=5 //分段数 Dim Range=15 //波动范围15像素 Dim x=(x2-x1)/num For i = 0 To num If i = 0 Then TouchDown x1, y1, 1 ElseIf 0 < i < num Then TouchMove x1 + x * i + Int(Range * Rnd() - Range / 2), y1 + Int(Range * Rnd() - Range / 2),1 Else Touch x2,y2,1 End If Delay 100 Next TouchUp 1


延展


①设置滑动速度快慢,这一步是由循环里面的延迟控制,延迟越长,滑动的速度越慢。


②纵坐标分段,我们滑动未必都是横向的,也可能是纵向的,或者斜向的,那么就要求纵向也是分段随机的。


Dim x1=100,y1=200,x2=500,y2=700 Dim num=10 //分段数 Dim Range=15 //波动范围15像素 Dim Rndtime=200 //滑动快慢,单位是毫秒 Dim x=(x2-x1)/num Dim y=(y2-y1)/num For i = 0 To num If i = 0 Then TouchDown x1, y1, 1 ElseIf 0 < i < num Then TouchMove x1 + x * i + Int(Range * Rnd() - Range / 2), y1 + y*i+Int(Range * Rnd() - Range / 2),1 Else TouchMove x2,y2,1 End If Delay Rndtime Next TouchUp 1


封装函数


Dim x1=500,y1=200,x2=200,y2=700 Dim num=10 //分段数 Dim Range=15 //波动范围15像素 Dim Rndtime=200 //滑动快慢,单位是毫秒 Call RndSwipe(x1, y1, x2, y2, num, Range, Rndtime) Function RndSwipe(x1,y1,x2,y2,num,Range,Rndtime) Dim x=(x2-x1)/num Dim y=(y2-y1)/num For i = 0 To num If i = 0 Then TouchDown x1, y1, 1 ElseIf 0 < i < num Then TouchMove x1 + x * i + Int(Range * Rnd() - Range / 2), y1 + y*i+Int(Range * Rnd() - Range / 2),1 Else TouchMove x2,y2,1 End If Delay Rndtime Next TouchUp 1 End Function


封装函数有几个参数:


起始坐标,结束坐标,分段数,随机范围,滑动快慢

您可以还会对下面的文章感兴趣

使用微信扫描二维码后

点击右上角发送给好友