매크로

A B C D 단계로 이뤄진 루프를 돌리고 있다고 할때, 각 단계에서 if를 걸어 조건 불만족시 처음 A로 돌아가는 함수를 쓰려고 합니다


Loop

{

Loop

{

ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 C:\Image1\001.bmp

if(ErrorLevel = 0)

{

Send {Click %FoundX% %FoundY%}

break

}

else

{

sleep, 1000

}

   }

sleep, 4000


Loop

{

ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 C:\Image1\002.bmp

if(ErrorLevel = 0)

{

Send {Click %FoundX% %FoundY%}

break

}

else

{

sleep, 1000

}

   }

sleep, 2000




......요런식으로 진행하다가(여기까지는 문제가 없이 동작됩니다), 루프안에 if를 많이 넣을경우 문제가 생기고 있습니다(이것보다 쉽게 하는법을 모르겠네요; 뭔가 더 방법이 있을것 같긴 한데 초보라서...)




Loop

{

ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 C:\Image1\010.bmp

if(ErrorLevel = 0)

   {

   Send {Click %FoundX% %FoundY%}

    

sleep, 3000

    

   ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\enemy.bmp

if(ErrorLevel = 0)

       {

mouseclick, L, 1000, 450

 

sleep, 4000

 

    Loop

           {

       ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\pause1.bmp

   if(ErrorLevel = 0)

{

Send {Click %FoundX% %FoundY%}

break

}

else

{

sleep, 300

}

}

sleep, 1000

Loop

           {

       ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\withdraw.bmp

           if(ErrorLevel = 0)

           {

       Send {Click %FoundX% %FoundY%}

       break

           }

           else

           {

       sleep, 300

           }

               }

   

    

           sleep, 4000

    

Loop

           {

       ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\hg.bmp

           if(ErrorLevel = 0)

           {

       Send {Click %FoundX% %FoundY%}

       break

           }

           else

           {

       sleep, 300

           }

               }

   

   sleep, 4000

    

Loop

           {

ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\stop1.bmp

           if(ErrorLevel = 0)

           {

       Send {Click %FoundX% %FoundY%}

       break

           }

           else

           {

       sleep, 300

           }

               }

   

 

           sleep, 2000

 

   Loop

   {

       ImageSearch, FoundX, FoundY, 0, 0, A_ScreenWidth, A_ScreenHeight, *70 C:\Image1\stop2.bmp

           if(ErrorLevel = 0)

           {

       Send {Click %FoundX% %FoundY%}

       break

           }

           else

           {

       sleep, 300

           }

               }

   

 

           sleep, 3000

 

   reload 


}

else

{

mouseclick, L, 1000, 450

break

}

}

else

{

sleep, 1000

}

   }




reload --->;요기가 문제인것 같습니다. 여기에서 다시 맨 처음 시작하는 곳으로 가고 싶은데 어떤식으로 표현해야 할지 모르겠습니다...실제로 적용해보니 reload가 맨 처음으로 돌아가게 하지는 않는것 같더라구요


reload라고 쓴 부분에 어떻게 해야 매크로를 처음으로 시작하는것 처럼 만들 수 있을까요??


(image 1,2를 찾는 앞부분은 잘 되다가 image10을 찾는것이 잘 안되는 상태입니다)


  • 리체 2017.08.19 09:10

    sss:

    loop

    {

       ...

       goto, sss

    }

    이렇게 라벨을 만들어 점프 하면 됩니다.


    님의 코드는 거짓일때만 reload를 하게 되어 있습니다.

    참일때는 루프를 벗어나서 reload를 실행하지 않아요.

    의도하신바가 맞고 reload 시켰을때 스크립트가 끊김없이 수행하는거라면 문제없습니다.


    그리고 로그를 넣어서 각 이미지서치마다 성공했을 경우 알수 있게 하는게 디버깅 하는데에도 좋습니다.

  • 병살타 2017.08.19 09:31

    라벨 만들어 점프! 감사합니다

  • 병살타 2017.08.19 09:32

     '로그를 넣어서 각 이미지서치마다 성공했을 경우 알수 있게 하는게 디버깅 하는데에도 좋습니다.'


    어떤 식으로 함수를 넣어서 적용하는 방법이 있을까요??

  • 리체 2017.08.19 18:16

    로그로 이용할수 있는건 여러가지 많습니다.

    간단하게 tooltip으로 표시하고 파일에 저장하여 나중 찬찬히 살펴볼수도 있고

    gui의 text나 edit를 이용할수도 있고 listview를 이용할수도 있습니다.



  • 병살타 2017.08.19 19:15

    친절한 답변 감사합니다 ^^


    덕분에 무사히 해결했네요

  • 포롤포포롤 2017.09.11 02:39
    어렵네요 ㅠㅠ 아무리봐도 머리만아파와요 ㅠ

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 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글