//坐标变量:
dim x,x1,x2,xx,px
//时间变量:
dim t,t1,t2,tt,dt
//初始化变量:
i=1:tt=0:xx=0
//循环及按键的延时设置,请根据电脑及网络情况自行调整:
dt=2
//响一下,提示脚本开始运行:
Beep
Rem 测节拍速度
//循环防卡延时:
Delay 8*dt
//第一次测小圆珠的位置:
VBSCall FindColor(400,365,540,370,"520000",x1,y1)
If x1>0
//记录从系统启动到现在的毫秒数:
Plugin t1=Sys.GetTime()
Delay 512
//第二次测小圆珠的位置:
VBSCall FindColor(400,365,540,370,"520000",x2,y2)
If x2>x1
//再次记录从系统启动到现在的毫秒数:
Plugin t2=Sys.GetTime()
//计算两次测量的时间差,并累加:
tt=tt+t2-t1
//计算两次测量的坐标差差,并累加:
xx=xx+x2-x1
i=i+1
//循环测5次以减小误差:
If i=5
//算出不同节拍下小球的移动速度()
t=tt/xx
//根据歌曲速度调整P点位置:
If t>20
//在70-90之间:
px=502
ElseIf t>16 and t<=20
//在90-110之间:
px=501.5
ElseIf t>14 and t<=16
//在110-130之间:
px=501
ElseIf t>12 and t<=14
//在130-150之间:
px=500.5
ElseIf t>11 and t<=12
//在150-160之间:
px=500
ElseIf t>10 and t<=11
//在160-170之间:
px=499.5
ElseIf t>9.5 and t<=10
//在170-180之间:
px=499
Else
//在180-190之间:
px=498.5
EndIf
Goto 开始
EndIf
Goto 测节拍速度
EndIf
EndIf
Goto 测节拍速度
Rem 按空格
//循环防卡延时:
Delay 8*dt
//检测小球位置:
VBSCall FindColor(413,366,513,370,"520000",x,y)
If x>0 and x<px
//没到P点,延时等待小球到达设定的P点处
Delay (px-x)*t
KeyPress 32 1
//延时等待小球滚完剩余路程:
Delay 40*t
Goto 开始
ElseIf x>=px
//已到或超过设定的P点,直接按空格:
KeyPress 32 1
Delay 40*t
Goto 开始
Else
Goto 按空格
EndIf
Rem 开始
//循环防卡延时:
Delay 8*dt
//单数箭头
IfColor 399 391 ef0000 2
IfColor 399 404 ffffff 2
IfColor 263 404 ffffff 2
s=9:k=0
Goto 按箭头
EndIf
IfColor 297 404 ffffff 2
s=7:k=34
Goto 按箭头
EndIf
IfColor 331 404 ffffff 2