UserVar jn1=a 设置技能1键位
UserVar jn2=2 设置技能2键位
UserVar jn3=F11 设置技能3键位
UserVar s1=60 设置技能1施放间隔时间
UserVar s2=90 设置技能2施放间隔时间
UserVar s3=120 设置技能3施放间隔时间
//-----------------------------------------------------------------------
//---------------------------------------------------------[赋值初始变量]
//-----------------------------------------------------------------------
dim number(2),thetime(2),key(2),sj(2)
dim a,b,c,d,jn1,jn2,jn3,s1,s2,s3,t1,t2,t3,L
//声明变量
number(0)=jn1:number(1)=jn2:number(2)=jn3
thetime(0)=s1:thetime(1)=s2:thetime(2)=s3
//把自定义参数的返回值转换成数组元素
t1=now:t2=now:t3=now
//返回当前系统日期时间到变量
//-----------------------------------------------------------------------
//---------------------------------------------------------- [跳转子程序]
//-----------------------------------------------------------------------
Gosub 判断按键
Gosub 判断时间
//-----------------------------------------------------------------------
//---------------------------------------------------------- [脚本主程序]
//-----------------------------------------------------------------------
While true
    //条件无限循环
    If DateDiff("s",t1,now)>=sj(0)
        //< DateDiff 函数:返回两个日期之间的时间间隔>
        //<"s":秒> <t1:时间变量> <now:当前系统日期和时间> <s(0):自定义时间变量>
        Delay 10
        KeyPress key(0),1
        //按键 变量k(0) 1次
        t1=now
        //重新赋值日期时间到变量
    EndIf 
    If DateDiff("s",t2,now)>=sj(1)
        Delay 10
        KeyPress key(1),1
        t2=now
    EndIf 
    If DateDiff("s",t3,now)>=sj(2)
        Delay 10
        KeyPress key(2),1
        t3=now
    EndIf 
    Delay 10
EndWhile 
//-----------------------------------------------------------------------
//------------------------------------------------------ [判断键码子程序]
//-----------------------------------------------------------------------
Sub 判断按键
    a=0:b=0
    //赋值数组最小下标
    For 3
        L=Len(number(a))
        //< Len 函数:返回字符串内字符的数量>
        If L=1
            key(b)=Asc(UCase(number(a)))
            //< Asc 函数:返回字符串首字母的ASCII字符代码> < UCase 函数:返回转换为大写字母的字符>
            If key(b)<48 or key(b)>90
                Goto End
                //超出范围跳转到脚本结束标记
            ElseIf key(b)>57 and key(b)<65
                Goto End
            EndIf 
        ElseIf L>1 and L<4
            If UCase(Left(number(a),1))="F"
                //判断字符串首字字符  < Left 函数:返回字符串最左边的指定数量的字符>
                key(b)=Asc(UCase(Left(number(a),1)))+Right(number(a),L-1)+41
                //< Right 函数:返回字符串最右边的指定数量的字符>
                If key(b)<112 or key(b)>123
                    Goto End
                EndIf 
            Else 
                Goto End
            EndIf 
        Else 
            Goto End
        EndIf 
        a=a+1:b=b+1
        //数组下标+1
        Delay 10
    EndFor 
Return 判断按键
//-----------------------------------------------------------------------
//------------------------------------------------------ [判断时间子程序]
//-----------------------------------------------------------------------
Sub 判断时间
    c=0:d=0
    For 3
        If IsNumeric(thetime(c))=True
            //< IsNumeric 函数:返回布尔值指明表达式的值是否为数字>
            sj(d)=cint(thetime(c))
            //< CInt 函数:返回已被转换为整形子类型的变体的表达式>
        Else 
            Goto End
        EndIf 
        c=c+1:d=d+1
        Delay 10