|
本帖最后由 lluxury 于 2011-4-15 00:33 编辑
最近在外网页游戏,点的烦,就简单写了个前台挂,放虚拟机上跑,注释了不少,发上来让大家看看
我虽然知道后台取色的方法,取不知道后台怎么发送鼠标,求告知...
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_outfile=..\桌面\05_13_30a.exe
#AutoIt3Wrapper_Add_Constants=n
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
Global $Title="xxxx - Microsoft Internet Explorer" ;1
If Not WinExists($Title) Then Exit MsgBox(16,0,"游戏未运行")
Global $FormPos=WinGetPos($Title) ;程序运行时获取窗体信息
WinActivate($Title) ;激活
Sleep(2000)
While 1 ;2挂机,建死循环
WinActivate($Title);3发送前先激活游戏窗口
Sleep(1000)
$FormPos=WinGetPos($Title);获取游戏窗口信息
checkGWAlive();5检测血
MouseClick("left", 855, 356) ;全是鼠标点的地方
Sleep(2000)
;a
MouseClick("left", 839, 278)
;MouseClick("left", 863, 323)
Send("{Enter}")
Sleep(1000)
MouseClick("left", 856, 260)
sleep(1000)
checkHF()
checkMP()
WEnd
Func checkHF() ;改检测耐
If PixelGetColor($FormPos[0]+485,$FormPos[1]+324)<>0xFFFF00 Then
MouseClick("left", 926, 268)
Sleep(2000)
MouseClick("left", 902, 313)
MouseClick("left", 965, 266)
Sleep(60000)
MouseClick("left", 868, 255)
Sleep(2000)
EndIf
EndFunc
Func checkMP() ;改检测内力
If PixelGetColor($FormPos[0]+557,$FormPos[1]+345)<>0xFFFF00 Then
MouseClick("left", 926, 268)
Sleep(1000)
MouseClick("left", 884, 302)
MouseClick("left", 965, 266)
Sleep(120000)
MouseClick("left", 868, 255)
Sleep(2000)
EndIf
EndFunc
Func checkGWAlive() ;改检血
If PixelGetColor($FormPos[0]+444,$FormPos[1]+345)<>0xFFFF00 Then
MouseClick("left", 926, 268)
Sleep(1000)
MouseClick("left", 884, 302)
MouseClick("left", 965, 266)
Sleep(300000)
MouseClick("left", 868, 255)
;Sleep(2000)
EndIf
EndFunc |
|