매크로

질문
2020.05.21 08:36

픽셀서치 도움 요청 드립니다

조회 수 179 추천 0 댓글 3

제가 하고 있는 게임이 있어 픽셀 서치를 만들었는데


CoordMode, Pixel, Screen

CoordMode, Mouse, Screen

Gui, Add, Text, x10 y10 w150 h20 Center, 매크로 프로그램

Gui, Add, Button, x10 y30 w150 h20, 시작

Gui, Add, Button, x10 y55 w150 h20, 멈춤

Gui, Add, Button, x10 y80 w150 h20, 종료

Gui,Show


상태변수 := false

return


GuiClose:

{

ExitApp

}

return

-::

Button시작:

{

상태변수 := true

While(상태변수 = true)

{

Loop

{

PixelSearch, vx, vy, 0,0, A_ScreenWidth, A_ScreenHeight, 0xD2D2D3, 1, Fast RGB (A)

if(ErrorLevel = 0)

{

Click, %vx%, %vy%

Sleep, 2000

}

{

PixelSearch, vx, vy, 0,0, A_ScreenWidth, A_ScreenHeight, 0x12345, 1, Fast RGB (B)

if(ErrorLevel = 0)

{

Click, %vx%, %vy%

Sleep, 2000

}

}

}

}


return

=::

Button멈춤:

{

상태변수 := false

}

return

Button종료:

{

ExitApp

}



코드를 이렇게 짰습니다

여기서 문제점이 2가지 발생하는데

1.전혀 관련없는 픽셀 지점으로 이동 후 제가 지정한 픽셀로 이동합니다
2.멈춤 버튼이 작동을 안하네요 (멈춤 버튼 눌러도 계속 실행)

그리고 픽셀서치 2개를 넣었는데 A를 찾아서 클릭하고 B를 찾아서 클릭 하는데
A 또는 B 를 찾으면 클릭하게 바꾸고 싶은데 가능한가요?

고수님들 도움 부탁드립니다

  • 리체 2020.05.22 12:28
    1.전혀 관련없는 픽셀 지점으로 이동 후 제가 지정한 픽셀로 이동합니다
    픽셀은 전체화면에서 검색하면 같은 색상이 여러군데서 나올수 있기 때문에 범위를 좁혀서 해야
    정확성을 높일수 있습니다

    2.멈춤 버튼이 작동을 안하네요 (멈춤 버튼 눌러도 계속 실행)
    와일문안의 루프문에서 서치가 반복되기 때문에 와일문으로 돌아가지 않습니다

    A 또는 B 를 찾으면 클릭하게 바꾸고 싶은데 가능한가요?
    픽셀서치문 하나로는 불가능, 지금 하고 있는게 결과적으로 똑같은 기능 아닙니까?
    픽셀서치 함수를 만들고 if문을 이용하면 간소화 할수는 있습니다.
    if 픽셀함수(색상a)=0 or 픽셀함수(색상b)=0
       클릭
  • dlslwl 2020.06.05 17:35

    지금 대괄호를 보시면

    첫번째 pixelsearch 가 끝나야 두번째 pixelsearch가 시작하게끔 되어있어요

    첫번째 pixelsearch 다음 {click, %vx%, %vy%    sleep,2000} 다음 { 괄호 지워주시면 되구요

    되도록이면 if구문이나 서치구문은 줄 맞춰서 보셔야 보기 수월해요~ 첫번째 픽셀 끝나고 대괄호를 열어주셔서 A를 찾아야지 B를 찾게끔 되어있는거구요. 동일선상으로 놓으시면 A찾고 없으면 B찾고 클릭, A찾고 있어도 클릭 후 B찾고 클릭 이렇게 진행되요.


    멈춤기능은 두번째픽셀구문 클릭 sleep,2000 } 끝나고 if(상태변수 = false) 줄바꿔서 { 줄바꿔서 break 줄바꿔서 } 넣으시면 되요.

  • dlslwl 2020.06.05 17:38

    상태변수 := false

    return


    GuiClose:

    {

    ExitApp

    }

    return

    -::

    Button시작:

    {

    상태변수 := true

    While(상태변수 = true)

    {

    Loop

    {

    PixelSearch, vx, vy, 0,0, A_ScreenWidth, A_ScreenHeight, 0xD2D2D3, 1, Fast RGB (A)

    if(ErrorLevel = 0)

    {

    Click, %vx%, %vy%

    Sleep, 2000

    }

    PixelSearch, vx, vy, 0,0, A_ScreenWidth, A_ScreenHeight, 0x12345, 1, Fast RGB (B)

    if(ErrorLevel = 0)

    {

    Click, %vx%, %vy%

    Sleep, 2000

    }

    if(상태변수 = false)

    {

    break

    }

    }

    }

    }


    return

    =::

    Button멈춤:

    {

    상태변수 := false

    }

    return

    Button종료:

    {

    ExitApp

    }


List of Articles
분류 제목 글쓴이 최근변경 추천
자유 히트2는 오토핫키 없을까요 1 매매매핫키 2022.12.07 0/0
자유 히로매크로 사용중입니다. 1 매끄로 2015.03.16 0/0
자유 희한하네요... 2 보득 2015.02.02 0/0
자유 흠냐 오토핫키와 c++ 연관성 34f35 2015.10.09 0/0
자유 흠.. 안녕들 하세요.. 13 폐이니즘 2015.01.16 0/0
자유 흠 gdip 안쓰고도 비활성 이미지 서치가 가능하네요 4 루뽕 2015.11.19 0/0
질문 흑백화를 시킨 후 이미지를 저장 하였습니다. 이후 이... 1 haegu 2018.09.11 0/0
질문 흑백화 이미지서치 참고할만한 글 있나요?? 3 급홍어감별사 2018.07.02 0/0
질문 흑백 비활성 이미지 검색 구현하신 분 계세요? 4 프리 2019.05.23 0/0
자유 후.. 검은거 한번 만들어 볼까 합니다 쟈브 2018.11.14 0/0
질문 후 문의 2번째.. 드립니다......... 4 문의드립니다 2015.06.10 0/0
자유 효율적인 쫄작교체방법이 없을까요? 3 세나블텍 2015.08.06 0/0
질문 활성화된 프로세스 죽이는법 kill 3 리엔니케니스타 2017.03.29 0/0
정보 활성화된 창으로 esc보내는 라이브러리. 1 헐키 2015.06.19 0/0
질문 활성과 비활성의 차이가 무엇인가요~? 1 배고파3000 2018.09.04 0/0
질문 활성 ? 비활성 질문.. 2 아카드 2014.11.04 0/0
자유 확장자 변환기 3 없어돌아가 2015.04.01 0/0
질문 확장모니터에서 controlclick질문드립니다 레나류륜 2016.10.27 0/0
질문 확율을 결과물로 출력중입니다. 특수문자 출력을 못해요 3 가족오락관 2016.11.08 0/0
자유 확실히 오토핫키가... 16 아카드 2014.11.09 0/0
Board Pagination Prev 1 2345678910 ... 208 Next
/ 208

전체 최신 인기글

전체 주간 인기글