count=0
//用户自定义变量
UserVar selfhp=285 自己补红下限
UserVar selfmp=130 自己补蓝下限
UserVar pathp=180 宠物补红下限
UserVar patmp=108 宠物补蓝下限
UserVar pateat=12 宠物食物补充间隔次数
UserVar movetime=2000 随机移动时间间隔
//
Rem 开始
VBSCall FindColorEx(170,94,227,97,"#f0f8",0,0.8,xa,ya)
If xa>0 and ya>0
    Gosub 是否需要加血
    Gosub 随机移动
Else 
    Gosub 战斗
EndIf 
Goto 开始
Sub 随机移动
    y=Int(100*rnd(100)) mod 4
    If y=0
        //左上方移动
        MoveTo 334,201
        LeftClick 1
        Goto y++
    EndIf 
    If y=1
        //右上方移动
        MoveTo 675,201
        LeftClick 1
        Goto y++
    EndIf 
    If y=2
        //左下方移动
        MoveTo 334,546
        LeftClick 1
        Goto y++
    EndIf 
    If y=3
        //右下方移动
        MoveTo 675,546
        LeftClick 1
        Goto y++
    EndIf 
    Rem y++
    Delay movetime
Return 随机移动
Sub 战斗
    i=1
    While i=1
        //■■■■下面的这个按键是你攻击怪物时用的技能,请修改为自己所用的键
        KeyPress 51,1
        Delay 150
        //■■■■下面的这个按键是宠物攻击怪物时用的技能,请修改为自己所用的键
        KeyPress 112,1
        Delay 2000
        IfColor 204,93,f0f8,2
            i=0
        EndIf 
    EndWhile 
    //通过战斗次数判断宠物是否需要喂食
    count=count+1
Return 判断是否战斗
Sub 是否需要加血
    //红循环控制参数
    j=1
    //兰循环控制参数
    k=1
    // 自己加红
    While j=1
        //读取内存中红的地址
        VBSCall ReadMemory(&h00103A10,1,m)
        If m<selfhp
            KeyPress 49,1
            Gosub 加血鼠标动作
        Else 
            j=0
        EndIf 
    EndWhile 
    // 自己加蓝
    While k=1
        //读取内存中红的地址
        VBSCall ReadMemory(&h00103A14,1,n)
        If n<selfmp
            KeyPress 50,1
            Gosub 加血鼠标动作
        Else 
            k=0
        EndIf 
    EndWhile 
    //红循环控制参数
    j=1
    //兰循环控制参数
    k=1
    // 宠物加红
    While j=1
        VBSCall ReadMemory(&h0327FE1C,1,o)
        If o<pathp
            KeyPress 49,1
            Gosub 宠物加血鼠标动作