openAd(){
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
While(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\common\adventure.bmp
if (ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
hideclick2(185,90)
RandSleep(1000,1500)
break
}
}
RandSleep(1000,1500)
While(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\lastadventure.bmp
if (ErrorLevel = 0)
{
RandSleep(1000,1500)
hideclick(FoundX,FoundY)
break
}
else
{
RandSleep(1000,1500)
hideclick2(608,435)
break
}
}
}
adventure()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
S1:=0
S2:=0
S3:=0
While(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\start.bmp
if (ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(5000,5500)
IniRead,S1,lib/Setting.ini,SkillChecked,S1
IniRead,S2,lib/Setting.ini,SkillChecked,S2
IniRead,S3,lib/Setting.ini,SkillChecked,S3
useskill(S1)
RandSleep(1500,2000)
useskill(S2)
RandSleep(1500,2000)
useskill(S3)
break
}
}
While(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\skill.bmp ;각성
if (ErrorLevel = 0)
hideclick2(470,305)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\re.bmp ;재시작
if (ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(3000,3500)
hideclick2(400,240)
RandSleep(1000,1500)
setdragon()
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\quest.bmp ;업적달성
if (ErrorLevel = 0)
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\lv30.bmp ;상태창 확인
if (ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(3000,3500)
set()
lvset()
ready()
back()
break
}
else
break
}
}
}
set()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
Mob1 :=0
Mob2 :=0
Mob3 :=0
Mob4 :=0
IniRead,Mob1,lib/Setting.ini,MobChecked,Mob1
IniRead,Mob2,lib/Setting.ini,MobChecked,Mob2
IniRead,Mob3,lib/Setting.ini,MobChecked,Mob3
IniRead,Mob4,lib/Setting.ini,MobChecked,Mob4
IniWrite,0,lib/Setting.ini,MobChecked,DelMob1
IniWrite,0,lib/Setting.ini,MobChecked,DelMob2
IniWrite,0,lib/Setting.ini,MobChecked,DelMob3
IniWrite,0,lib/Setting.ini,MobChecked,DelMob4
while(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\heroset.bmp ;영웅관리
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(2000,2500)
if(Mob4=1)
{
hideclick2(130,410) ;4번제거
RandSleep(800,1000)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\check30.bmp ;30
if(ErrorLevel = 0)
{
teamout()
IniWrite,1,lib/Setting.ini,MobChecked,DelMob4
}
else
teamnoout()
}
if(Mob3=1)
{
hideclick2(130,320) ;3번제거
RandSleep(800,1000)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\check30.bmp ;30
if(ErrorLevel = 0)
{
teamout()
IniWrite,1,lib/Setting.ini,MobChecked,DelMob3
}
else
teamnoout()
}
if(Mob2=1)
{
hideclick2(130,240) ;2번제거
RandSleep(800,1000)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\check30.bmp ;30
if(ErrorLevel = 0)
{
teamout()
IniWrite,1,lib/Setting.ini,MobChecked,DelMob2
}
else
teamnoout()
}
if(Mob1=1)
{
hideclick2(130,165) ;1번제거
RandSleep(800,1000)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\check30.bmp ;30
if(ErrorLevel = 0)
{
teamout()
IniWrite,1,lib/Setting.ini,MobChecked,DelMob1
}
else
teamnoout()
}
RandSleep(1000,1500)
break
}
}
}
ready()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
setch := 1
DelMob1 :=0
DelMob2 :=0
DelMob3 :=0
DelMob4 :=0
IniRead,DelMob1,lib/Setting.ini,MobChecked,DelMob1
IniRead,DelMob2,lib/Setting.ini,MobChecked,DelMob2
IniRead,DelMob3,lib/Setting.ini,MobChecked,DelMob3
IniRead,DelMob4,lib/Setting.ini,MobChecked,DelMob4
if(DelMob4=1)
{
while(true)
{
if(chok = 1)
{
setch := setch+1
chok := 0
break
}
setch(setch)
teamin()
while(true) ;4추가
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *40 %A_ScriptDir%\lib\Adventure\4.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\fail.bmp
if(ErrorLevel = 0)
{
setch := setch+1
hideclick(FoundX,FoundY)
}
else
{
chok := 1
}
break
}
}
RandSleep(1000,1500)
}
}
if(DelMob3=1)
{
while(true)
{
if(chok = 1)
{
setch := setch+1
chok := 0
break
}
setch(setch)
teamin()
while(true) ;3추가
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *40 %A_ScriptDir%\lib\Adventure\3.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\fail.bmp
if(ErrorLevel = 0)
{
setch := setch+1
hideclick(FoundX,FoundY)
}
else
{
chok := 1
}
break
}
}
RandSleep(1000,1500)
}
}
if(DelMob2=1)
{
while(true)
{
if(chok = 1)
{
setch := setch+1
chok := 0
break
}
setch(setch)
teamin()
while(true) ;2추가
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *40 %A_ScriptDir%\lib\Adventure\2.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\fail.bmp
if(ErrorLevel = 0)
{
setch := setch+1
hideclick(FoundX,FoundY)
}
else
{
chok := 1
}
break
}
}
RandSleep(1000,1500)
}
}
if(DelMob1=1)
{
while(true)
{
if(chok = 1)
{
setch := setch+1
chok := 0
break
}
setch(setch)
teamin()
while(true) ;1추가
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *40 %A_ScriptDir%\lib\Adventure\1.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\fail.bmp
if(ErrorLevel = 0)
{
setch := setch+1
hideclick(FoundX,FoundY)
}
else
{
chok := 1
}
break
}
}
RandSleep(1000,1500)
}
}
}
teamout()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
RandSleep(3000,3500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\teamout.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
}
}
teamnoout()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
RandSleep(3000,3500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\noout.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
RandSleep(1000,1500)
}
}
teamin()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
RandSleep(2000,2500)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\teamin.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
}
}
lvset()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
while(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\lvup.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
while(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\lvup.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
break
}
}
RandSleep(1000,1500)
break
}
}
}
back()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
while(true)
{
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\common\back.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
break
}
}
}
superback()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
while(true)
{
RandSleep(1000,2000)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\common\back.bmp
if(ErrorLevel = 0)
{
hideclick(FoundX,FoundY)
}
else
break
}
}
setdragon()
{
CoordMode, Pixel, Screen
WinGetPos, pos_x,pos_y, width, height, BlueStacks App Player
x_right := width + pos_x
y_bottom := height + pos_y
loop,3
{
RandSleep(500,800)
ImageSearch,FoundX,FoundY,%pos_x%,%pos_y%,%x_right%,%y_bottom%, *50 %A_ScriptDir%\lib\Adventure\dragon.bmp ;용
if (ErrorLevel = 0)
{
superback()
openAd()
break
}
}
}
hideclick(x,y)
{
WinGetPos, w_x, w_y, w_w, w_h, BlueStacks App Player
inx := x - w_x
iny := y - w_y
lparam := inx|iny<<16
PostMessage, 0x201, 1, %lparam%, , BlueStacks App Player
PostMessage, 0x202, 0, %lparam%, , BlueStacks App Player
}
hideclick2(x,y)
{
lparam := x|y<<16
PostMessage, 0x201, 1, %lparam%, , BlueStacks App Player
PostMessage, 0x202, 0, %lparam%, , BlueStacks App Player
}
RandSleep(x,y)
{
Random, rand, %x%, %y%
Sleep %rand%
}
setch(x)
{
if(x=1)
hideclick2(330,200)
if(x=2)
hideclick2(460,200)
if(x=3)
hideclick2(590,200)
if(x=4)
hideclick2(720,200)
if(x=5)
hideclick2(330,410)
if(x=6)
hideclick2(460,410)
if(x=7)
hideclick2(590,410)
if(x=8)
hideclick2(720,410)
}
useskill(x)
{
if(x=1)
hideclick2(470,345)
if(x=2)
hideclick2(540,345)
if(x=3)
hideclick2(620,345)
if(x=4)
hideclick2(690,345)
if(x=5)
hideclick2(765,345)
if(x=6)
hideclick2(470,405)
if(x=7)
hideclick2(540,405)
if(x=8)
hideclick2(620,405)
if(x=9)
hideclick2(690,405)
if(x=10)
hideclick2(765,405)
}
CheckImage(img, seconds=0, ByRef imgX="", ByRef imgY="", fromX=0, fromY=0, toX=0, toY=0)
{
global ActiveID, DebugMode
Sleep, 10
If ( ActiveID)
WinGetPos, winX, winY, winW, winH, % ActiveID
Else
winX := 0, winY := 0, winW := 800, winH := 480
sleepTime := 100
times := seconds * (1000 / sleepTime)
If ( times=0)
times := 1
x := winX, y := winY, w := winX+winW, h := winY+winH
If (fromX && fromY && toX && toY)
{
w := x+toX, h := y+toY, x := x+fromX, y := y+fromY
If ( DebugMode = 1)
{
ToolTip, 범위시작, x, y, 11
ToolTip, 범위끝, w, h, 12
}
}
Loop, %times%
{
ImageSearch, oX, oY, x, y, w, h, *50 %A_ScriptDir%\%img%
If ( ErrorLevel = 0)
{
imgX := oX
imgY := oY
If ( DebugMode = 1)
{
ToolTip, %img%, imgX, imgY, 10
}
Return 1
}
Else If ( ErrorLevel = 2)
{
Return -1
}
Sleep, %sleepTime%
}
Return 0
}
ClickImage(img, seconds=0, fromX=0, fromY=0, toX=0, toY=0)
{
Sleep, 10
result := CheckImage( img, seconds, x, y, fromX, fromY, toX, toY)
If (result = 1)
{
global ActiveID, DebugMode, WindowCaptionHeight, WindowBorderWidth, WindowBorderHeight
WinGetPos, winX, winY, winW, winH, % ActiveID
px:=x-winX-WindowBorderWidth
py:=y-winY-WindowBorderHeight-WindowCaptionHeight
p := px|py<<16
If ( DebugMode = 1)
{
ToolTip, 이미지 클릭 %img%, x, y, 10
}
PostMessage, 0x201, 0, %p%, , % ActiveID
PostMessage, 0x202, 0, %p%, , % ActiveID
}
Sleep, 200
Return result
}
사냥부분으로써 꽤나 유용하게 썻던거같네요 잘 활용해보세요