매크로

조회 수 363 추천 0 댓글 1

 

게임내에서 숫자를 인식하는 소스인데 해석좀 부탁드려요 ㅠㅠ

 

 

=====================================================================================

 

 

number =
WinGet, hwnd, ID, A
imgDir = %A_ScriptDir%\image_autocheck
detectAuto := CheckAutoDetectWindows(x, y, hwnd, imgDir)
if detectAuto
loop 4
number .= GetAutoNumbers(x, y, hwnd, imgDir)
return
CheckAutoDetectWindows(byref num_x, byref num_y, hwnd, imgDir)
{
상태_오토신고창인식 = 주흔.bmp
global FindImage_area_x
global FindImage_area_y
global FindImage_area_width
global FindImage_area_height
FindImage_area_x := 149
FindImage_area_y := 234
FindImage_area_width := 266
FindImage_area_height := 348
if !FindImageScreen(num_x, num_y, hwnd, 상태_오토신고창인식, 70)
return 0
num_x += -3, num_y += 17
return 1
}
GetAutoNumbers(ByRef num_x, ByRef num_y, hwnd, imgDir)
{
global FindImage_area_x
global FindImage_area_y
global FindImage_area_width
global FindImage_area_height
FindImage_area_x := num_x
FindImage_area_y := num_y
FindImage_area_width := 7
FindImage_area_height := 9
margin = 10
loop 10
{
number := A_index - 1
pre = number_%number%
if FileExist(image := pre ".bmp")
{
if FindImageScreen(x, y, hwnd, image, margin)
{
num_x := x + 8
return number
}
}
else
{
loop 9
{
if !FileExist(image := pre "_" A_index ".bmp")
break
if FindImageScreen(x, y, hwnd, image, margin)
{
num_x := x + 8
return number
}
}
}
}
return
}
FindImageScreens(ByRef foundx,ByRef foundy, handle, image, margin)
{
global FindImage_area_x
global FindImage_area_y
global FindImage_area_width
global FindImage_area_height
IfWinNotExist ahk_id %handle%
{
foundx = -1
foundy = -1
return 0
}
CoordMode, Pixel, Screen
WinGetPos, winx,winy , width,height, ahk_id %handle%
if FindImage_area_x>=0
x := winx + FindImage_area_x
else
x := winx + width + FindImage_area_x
if FindImage_area_y>=0
y := winy + FindImage_area_y
else
y := winy + height + FindImage_area_y
if FindImage_area_width and FindImage_area_width<=width
width := FindImage_area_width
if FindImage_area_height and FindImage_area_height<=height
height := FindImage_area_height
ImageSearch, foundx,foundy , x,y , x+width, y+height , *transED1C24 *%margin% %image%
if ErrorLevel=0
{
foundx := foundx - winx -2.7
foundy := foundy - winy
return 1
}
else
if ErrorLevel=1
foundx = -1
else
{
MsgBox,, Error, %A_ThisFunc%`n`nImageSearch ErrorLevel2 오류
ExitApp
}
foundx = -1
foundy = -1
return 0
}


  • profile
    외치기 2016.08.03 17:56

    숫자가 들어있는 창의 위치를 파악하고

    왼쪽에서부터 하나씩 숫자를 비교하는 로직이네요.

    첫번째 숫자가 있을 범위에서 숫자이미지를 0부터 9까지 쭉 비교해보고

    이미지가 발견되면 두번째 숫자를 비교하기 위해 x값을 8 증가시키네요.


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 포스트메시지를 사용하여 조합키를 보낼수있을까요? 3 클래식나인 2014.12.15 0/0
질문 비활성매크로 PostMessage 사용 시 클릭이 안되는 문제 13 시나브로 2015.01.20 0/0
질문 오토핫키 실행시키고.......... 3 맹물도사 2014.12.11 0/0
질문 오토핫키가 다루기가 어려울까요? 7 그냥그래요 2014.12.13 0/0
질문 절전모드 전부 해제 시켰는데도 잘 때 매크로가 멈추네요 2 FKILLER 2014.12.14 0/0
질문 몽길이 메클 질문드립니다... 1 헬로시드니 2014.12.09 0/0
질문 질문하나합니다.. 2 dsaf3 2014.12.10 0/0
질문 오랜만의 질문 1 가지~!!! 20 파더 2014.12.08 0/0
자유 아.. 이제 서서히 빛이 보이네요... 46 파더 2014.12.11 0/0
질문 변수로 저장된 값마다 터치위치를 변경하고싶을때..어... 2 파더 2014.12.05 0/0
질문 VMProtect Unpack 17 외치기 2017.03.19 0/0
자유 아주 간단한건데.. 하면 이쁜 gui 색입히기... 2 로우얄 2017.12.19 0/0
질문 1004매크로 1 dlalsrb86 2014.12.04 0/0
질문 숫자인식 소스 해석 부탁드립니다 1 notes5 2016.08.03 0/0
자유 오토핫키컴파일 이후 Themida 패킹 사용하면되는건가요? 파더 2014.12.04 0/0
질문 오토핫키 이미지서치좀 봐주세요ㅡ모비즌연동 8 뀨잉여기좋아 2014.12.05 0/0
질문 체크박스 if 에대해서 6 파더 2014.12.04 0/0
질문 리스트박스 관련질문 4 파더 2014.12.03 0/0
질문 어떤 이미지를 찾을때 같은 이미지가 있을때 대한 처리 7 프로구라머 2014.12.07 0/0
질문 혹시 1004 매크로 1920 * 1080 해상도를 세나에 맞춰 ... 인사왕바이킹 2014.12.01 0/0
Board Pagination Prev 1 ... 196197198199200201202203204 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글