#NoEnv?
#SingleInstance, force
sendmode input
SetWorkingDir %A_ScriptDir%
SetBatchLines,-1
ListLines, Off
ActiveID := "FIFA ONLINE3 - Developed by SPEARHEAD"
; ================================ 본문시작 =========================================
[:: ;start
if(checkimage("buy.bmp")=1)
{
clickposition(imgx,imgy)
}
else
{
msgbox, 이미지 못찾음
}
return
]::pause
\::reload
; ================================ 함수시작 =========================================
; 이미지 서치
; seconds : 시간 지정 (기본설정상 1초 = 10번 시도, 0.5초 = 5번 시도함)
; imgX, imgY : 리턴받기 위해 사용
; fromX , fromY , toX , toY : 이미지 서치 범위 지정
; 리턴값 : 1 = 이미지 찾음 , 0 = 이미지 못찾음, -1 = 이미지 파일 없음
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 := A_ScreenWidth, winH := A_ScreenHeight
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)
{
MsgBox, , , 이미지 없음 : %img% , 1
Return -1
}
Sleep, %sleepTime%
}
Return 0
}
; 비활성 이미지 클릭
; seconds : 시간 지정 (CheckImage 설정에 따름)
; fromX , fromY , toX , toY : 이미지 서치 범위 지정
; 리턴값 : 1 = 이미지 찾음 , 0 = 이미지 못찾음, -1 = 이미지 파일 없음
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
}
; 비활성 좌표 클릭
; x, y 좌표를 클릭
ClickPosition(x, y)
{
global ActiveID, DebugMode, WindowCaptionHeight, WindowBorderWidth, WindowBorderHeight
Sleep, 10
px:=x-WindowBorderWidth/2
py:=y-WindowBorderHeight/2-WindowCaptionHeight
p := px|py<<16
PostMessage, 0x201, 0, %p%, , % ActiveID
PostMessage, 0x202, 0, %p%, , % ActiveID
If ( DebugMode = 1)
{
WinGetPos, winX, winY, winW, winH, % ActiveID
ToolTip, 좌표클릭, winX+px, winY+py, 10
}
Sleep, 200
Return 1
}
; 비활성 마우스 드래그
; (fromX, fromY) 좌표에서 (toX, toY) 로 드래그함
MouseDrag(fromX, fromY, toX, toY)
{
global ActiveID, DebugMode, WindowCaptionHeight, WindowBorderWidth, WindowBorderHeight
Sleep, 10
px1 := fromX-WindowBorderWidth/2
py1 := fromY-WindowBorderHeight/2-WindowCaptionHeight
p1 := px1|py1<<16
px2 := toX-WindowBorderWidth/2
py2 := toY-WindowBorderHeight/2-WindowCaptionHeight
p2 := px2|py2<<16
PostMessage, 0x201, 0, %p1%, , % ActiveID
PostMessage, 0x200, 0, %p2%, , % ActiveID
PostMessage, 0x202, 0, %p2%, , % ActiveID
If ( DebugMode = 1)
{
WinGetPos, winX, winY, winW, winH, % ActiveID
ToolTip, 드래그시작, winX+px1, winY+py1, 11
ToolTip, 드래그종료, winX+px2, winY+py2, 12
}
Sleep, 200
Return 1
}
이렇게 썻는데 이미지를 찾는건 확인하였지만 클릭이 안됩니다 ㅠㅠ 이유가 뭘까요
프로그램 자체내에서 비활성함수를 막은건가요 ?
보통은 게임가드가 영향이 크죠