UserVar Var1=30 "开枪频率"
UserVar Var2=1 "单次开枪子弹数量"
UserVar Var3=0 "第一枪延迟"
UserVar Var4=55 "压枪延迟"
//定义变量
DimEnv iWidth ,iHeight //int 屏幕分辨率
DimEnv iFD //开枪频率
iFD=Var1
DimEnv iFN //几发连射
iFN=Var2
DimEnv iFFD //第一枪延迟
iFFD=Var3
DimEnv iND //压枪延迟
iND=Var4
//调用主函数
Call Main()
//**Main
//程序入口主函数
Sub Main()
//int 四个角的坐标
Dim iLT,iRT,iLB,iRB
//临时对象
Dim vTemp
Dim bCanShoot
Dim sStr
//得到分辨率(四个坐标)
sStr=getParameter()
//把返回的坐标分割成数组
vTemp=Split(sStr, "|", -1, 1)
iLT=vTemp(0)
iRT=vTemp(1)
iLB=vTemp(2)
iRB=vTemp(3)
//启用设置开枪频率线程
BeginThread setFireDelay
//循环脚本
While True
Delay 1
//搜索射程内的敌人
bCanShoot=findFoe(iLT,iRT,iLB,iRB)
//进入射程
If bCanShoot
//第一枪延迟
Delay iFFD
//射击
Call shootFoe()
//如果没有命中就压枪
If ifBingo()
Delay iND
End If
End If
Wend
End Sub
//**Function
//功能:判断屏幕分辨率
//返回:四个坐标的字符串
Function getParameter()
Dim iLT,iRT,iLB,iRB //int 四个角的坐标
iWidth = Plugin.Sys.GetScRX() //得到屏幕的宽度
iHeight = Plugin.Sys.GetScRY() //得到屏幕的高度
If iWidth=800 Then
iLT=0
iRT=0
iLB=0
iRB=0
ElseIf iWidth=1024 Then
iLT=112 //加上坐标偏移
iRT=84
iLB=112
iRB=84
ElseIf iWidth=1280 Then
iLT=240 //加上坐标偏移
iRT=100
iLB=240
iRB=100
End If
iLT=iLT+380 //LeftTop 左上角
iRT=iRT+345 //RightTop 右上角
iLB=iLB+420 //LeftBottom 左下角
iRB=iRB+355 //RightBottom 右下角
getParameter=iLT&"|"&iRT&"|"&iLB&"|"&iRB //返回字符串
End Function
//**Function
//功能:判断射程内是否有敌人
//返回:是True,否False
Function findFoe(iLT,iRT,iLB,iRB)
Dim sColor(3) //Array(string) 用于存放颜色的数组
Dim i //int 循环变量
Dim iX,iY //int 得到颜色的坐标
Dim bHave //boolean 是否找到敌人
//初始化颜色
sColor(0)="3239A0"
sColor(1)="2A3EB8"
sColor(2)="1849F0"
sColor(3)="1849F0"
bHave=false //初始化