用前先找好坐标内存地址,还有XP满时的鼠标位子(每台机子都不同的)
找坐标内存地址可以用 游戏修改大师(Game Master) v8.0.rar
VBS Dim BB,Bang,Xm1,Ym1,Xin,Yin,Memx,Memy,N
VBS Dim ScreenX,ScreenY,Xim(5),Yim(5),s
VBS Dim XunGuai1,XunGuai2,JianChe1,JianChe2
VBS Dim JianDongXi1,JianDongXi2,XunWu1,XunWu2
VBSCall Call GetScreenResolution(ScreenX,ScreenY)
UserVar Memx=&H006B8FEC 【游戏坐标内存地址中的横坐标】
UserVar Memy=&H006B8FF0 【游戏坐标内存地址中的纵坐标】
UserVar N=30 【用户输入需要挂机的范围】
//--------------------------------------------- [
脚本主程序]
VBS Xim(0)=416:Xim(1)=445:Xim(2)=479
VBS Yim(0)=142:Yim(1)=168:Yim(2)=134
Rem 循环开始
Delay 10
IfColor 107 51 a5aeff 1
//检查人物是否死亡
Delay 20000
MoveTo 885 667
Delay 300
LeftClick 1
Delay 1000
EndIf
Gosub 检查宝宝是否出征
Gosub 检查宝宝是否和体
Gosub 拣幻魔
If s=2
Gosub 移动到挂机点
VBS s=0
Goto 移动结束
EndIf
If s<2
Gosub 移动到挂机点
VBS s=s+1
EndIf
//KeyPress 13 1
//Gosub 读取坐标内存地址
//SayExpression ("现在开始挂机坐标为:"&Xin&","&Yin)
//Delay 300
//KeyPress 13 1
Rem 移动结束
Goto 循环开始
EndScript
//------------------------------------[检测XP技能是否已满]
Sub 检测XP技能是否已满
IfColor 948 711 861ff 2
//检测XP技能是否已满
MoveTo 929 674
Delay 500
LeftClick 1
EndIf
Return 检测XP技能是否已满
//------------------------------------[拣幻魔]
Sub 拣幻魔
VBSCall FindColorEx(281,367,785,497,"ff82ff",1,0.9,XunWu1,XunWu2)
If XunWu1>=0 and XunWu2>=0
MoveTo XunWu1+1 XunWu2+1
Delay 100
LeftClick 1
Delay 1000
Else
Goto 没有幻魔
EndIf
Rem 没有幻魔
VBSCall FindColorEx(281,367,785,497,"ad3c10",1,0.9,XunWu1,XunWu2)
If XunWu1>=0 and XunWu2>=0
MoveTo XunWu1+1 XunWu2+1
Delay 100
LeftClick 1
Delay 1000
Else
Goto 没有经验宝石
EndIf
Rem 没有经验宝石
//VBSCall FindColorEx(281,367,785,497,"42ae52",1,0.9,XunWu1,XunWu2)
//If XunWu1>=0 and XunWu2>=0
//MoveTo XunWu1+1 XunWu2+1
//Delay 100
//LeftClick 1
//Delay 1000
//Else
//Goto 没有减伤害
//EndIf
//Rem 没有减伤害
Return 拣幻魔
//------------------------------------[检查宝宝是否和体]
Sub 检查宝宝是否和体
IfColor 272 59 6baaef 2
//检查第1只宝宝是否合体
Goto 第1只宝宝不要合体
Else
MoveTo 345 57
Delay 500
LeftClick 1
EndIf
Rem 第1只宝宝不要合体
IfColor 419 59 6baaef 2
Goto 第2只宝宝不要合体
Else
//检查第2只宝宝是否合体
MoveTo 495 57
Delay 500
LeftClick 1
EndIf
Rem 第2只宝宝不要合体
IfColor 567 59 6baaef 2
//检查第3只宝宝是否合体
Goto 第3只宝宝不要合体
Else
MoveTo 645 57
Delay 500
LeftClick 1
EndIf
Rem 第3只宝宝不要合体
Return 检查宝宝是否和体
//-------------------------------[检查宝宝是否出征]
Sub 检查宝宝是否出征
IfColor 303 59 73b2f7 2
//检查第1只宝宝是否出征
MoveTo 303 59
Delay 500
LeftClick 1
EndIf
IfColor 452 60 73b2f7 2
//检查第1只宝宝是否出征
MoveTo 452 60
Delay 500
LeftClick 1
EndIf
IfColor 601 59 73b2f7 2
//检查第1只宝宝是否出征
MoveTo 601 59
Delay 500
LeftClick 1
EndIf
Return 检查宝宝是否出征
//-----------------------------------[读取坐标内存地址]
Sub 读取坐标内存地址
VBSCall ReadMemory( Memx,1,Xin)
//读取游戏坐标内存地址中的横坐标的值保存到Xin
VBSCall ReadMemory( Memy,1,Yin)
//读取游戏坐标内存地址中的纵坐标的值保存到Yin
Return 读取坐标内存地址
//-----------------------------------------[移动到挂机点]
Sub 移动到挂机点
Rem 开始移动
Gosub 检查宝宝是否出征
Delay 15
Gosub 检查宝宝是否和体
Delay 15
Gosub 读取坐标内存地址
VBS BB=((Xim(s)-Xin)^2+(Yim(s)-Yin)^2)^0.5
///用勾股定理计算和目标位置有多远,BB为和目标位置的直线差.
If BB>6
///如果和目标位置差距是大于6
VBS Bang=250/BB
///把你的鼠标移动范围限制在半径250的圆以内
/////这里这步很重要,不然你点到的始终是屏幕的最边缘.
VBS XX=(Xim(s)-Xin)*Bang:YY=(Yim(s)-Yin)*Bang
/////利用相似三角形算出鼠标点击的位置
MoveTo ScreenX/2+XX ScreenY/2+YY
Delay 100
LeftClick 1
Gosub 打怪
Delay 15
Goto 开始移动
EndIf
If BB>1 and BB<=6
///距离在直线地图位置距离6以内,表示和你的目标在屏幕能看到了.
MoveTo ScreenX/2+(Xim(s)-Xin)*30 ScreenY/2+(Yim(s)-Yin)*30
////直接准确的移到目标上.
Delay 100
LeftClick 1
Gosub 打怪
Delay 15
EndIf
Return 移动到挂机点
//------------------------------------[打怪]
Sub 打怪
Rem 打怪开始
VBSCall FindColorEx(0,106,969,504,"0000BD",1,1,XunGuai1,XunGuai2)
If XunGuai1>=0 and XunGuai2>=0
MoveTo XunGuai1+10 XunGuai2+60
Delay 50
RightClick 1
Delay 200
LeftClick 1
Gosub 检测XP技能是否已满
Delay 15
Gosub 拣幻魔
Delay 15
Goto 打怪开始
EndIf
Return
//-------------------------------
怎么没人说话啊,求判断东西的
脚本> >