오토핫키 커뮤니티

조회 수 865 추천 0 댓글 2

이거로 3일정도 계속 찾아보고 시도하다 너무 스트레스 받아서 질문글을 올립니다^_T..

제가 하고싶은 건 대략 10초정도 일정 이미지를 찾다가, 찾아진다면 다음 이미지를 찾고, 못찾아진다면 그냥 그 아래 스크립트로 가게끔 하고싶습니다


참고한 게시글은


https://tailstar.net/autohotkey/9382218

https://tailstar.net/autohotkey/8512015


이 두곳이랑 구글에서 검색해서 나온 것들이구요8ㅅ8.. 

두곳에 나와있는 스크립트를 거의 그대로 사용했습니다ㅠ_ㅠ


F2::

loop

{

~~~~~~~~~~~~~~~~~~~~~~~~

~~~~제가짜놓은스크립트~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~

startTime:=A_TickCount

loop

{

ImageSearch,vx,vy, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 *transwhite *0 A.png

If errorlevel = 0 ;찾았을 경우

{

ImageSearch,vx,vy, 0, 0, A_ScreenWidth, A_ScreenHeight, *50 *transwhite *0 B.png

IF ErrorLevel = 0 ;찾았을 경우

{

sleep, 400

break

}

if (A_TickCount = startTime >= 10000) ;10초간 찾기

break

}

}

If errorlevel = 1 ;못찾았을 경우

{

sleep 100

break

}

~~~~~~~~~~~~~~~~~~~~~~~~

~~~~제가짜놓은스크립트~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~

}


이런식으로 해봤구요(제가 초보자라 아무렇게나 검색해서 집어넣고 수정하고 하고 있습니다ㅠㅠ)

결과는 아예 가동이 안되더라구요.. 딱 이 부분만 넘기고 파일이 실행됩니다ㅠㅠ

원래는 못찾았는데도 찾았다고 뜨거나 그래서 이래저래 계속 수정해보고 검색해보고 했는데ㅠㅠ 현재는 아예 안됩니다..


그래서 아예 새 파일로 만들어서 실행되면 붙여넣자는 마음에 이래저래 검색해서


F2::

startTime:=A_TickCount

loop

{

Imagesearch, ax, ay, 0, 0, 890, 890, *20 A.PNG

If errorlevel = 0

{

MsgBox, 찾았다

Sleep 100

if (A_TickCount = startTime >= 10000)

break

}

}


If errorlevel = 1

{

MsgBox, 못찾았다

sleep 100

}


이나


F2::

startTime:=A_TickCount ; <<--startTime에 시간을 기록

loop

{

if (A_TickCount = startTime >= 10000) ;;기준으로 10초 뒤에 루프탈출 하라 (1000단위가 1초)

{

break

}

Imagesearch, oX, oY, 1, 1, A_ScreenWidth, A_ScreenHeight, *50 A.PNG

If ( ErrorLevel = 0)

{

msgbox, 찾앗다

break

}

else if ( ErrorLevel = 1)

{

msgbox, 못찾았다 ㅠㅠ

break

}

}


혹은


F2::

startTime := A_TickCount ; 시작시간 기록

loop

{

ImageSearch,vx,vy, 0, 0, 890, 1150, *transwhite *0 A.PNG

if !errorlevel

MsgBox, 찾았다

 break ; 루프끝내기


if( A_TickCount - startTime >= 30000 ) ; 시작한지 30초가 경과됐으면

MsgBox, 못찾았다

 break ; 루프끝내기

}


등등..


이런식으로 새로 파일을 만들어서 되는지 해보고, 되면 원래 파일에 붙여넣으려고 했는데

이렇게 따로 파일을 만들어도 즉각즉각 찾는 건 되는데, 못찾았을 경우에 일정 시간동안 찾은다음에 못찾았다고 하는 게 아니고 바로바로 "못찾았다"라고 뜨더라구요ㅠㅠ(미칠 지경입니다..)


당연히 아예 수정해달라는 말이 아닙니다8ㅅ8.. 

혹시 보시고 어느쪽이 문제인지 아신다면 조금이라도 조언을 해주십사 찾아왔습니다ㅠㅠ 그럼 늦은 새벽에 고맙습니다ㅠㅠ...!


  • 할거엄따구 2017.09.15 08:46

    if( A_TickCount - startTime >= 30000 ) ; 시작한지 30초가 경과됐으면

    MsgBox, 못찾았다

     break ; 루프끝내기

    if 문 다음을 { } 대괄호로 묶어주지 않으면 if 다음 첫줄만 if문의 영향을 받고 두번재 줄부터는 if문에 걸린 조건과 관계 없이 실행이됩니다.

    때문에 위와 같이 작성하시면 if문 조건을 만족하지 않더라도 바로 break가 실행이 되어 loop를 탈출하게되죵..

    if( A_TickCount - startTime >= 30000 ) ; 시작한지 30초가 경과됐으면

    {

    MsgBox, 못찾았다

     break ; 루프끝내기

    }

    요렇게 묶어보세요.

    그리고 if (A_TickCount = startTime >= 10000) ;;기준으로 10초 뒤에 루프탈출 하라 (1000단위가 1초) 요부분은

    if (A_TickCount >= startTime + 10000) ;;기준으로 10초 뒤에 루프탈출 하라 (1000단위가 1초)

    이렇게 되는게 맞습니다.

  • 가태 2017.09.15 20:13
    ㅠㅠ정말 감사합니다. 친절히 설명해주신 덕분에 교체하고 다른 부분도 손보면서 정확히 수정되었습니다ㅠㅠ!! 좋은 하루 보내세요!!

List of Articles
분류 제목 글쓴이 최근변경 추천
질문 이미지서치 스크립한번 봐주세요.. 1 일기 2016.02.07 0/0
질문 이미지서치 순서에 대한 답좀 부탁드립니다.. 1 sinyoonh 2017.11.23 0/0
질문 이미지서치 성능개선할 수 없나요 3 츠네로바 2017.05.24 0/0
질문 이미지서치 서치능력이 너무 형편없는데... 3 펩티드 2018.06.05 0/0
질문 이미지서치 사진크기 달라도 찾을방법있나요? 7 Toon 2014.12.02 0/0
질문 이미지서치 사이에 이벤트 1 Sklz 2019.01.21 0/0
질문 이미지서치 부분입니다. 변수에 값을넣는데요. 4 우후훅 2014.11.11 0/0
질문 이미지서치 범위지정에 대한 질문을 합니다~! 7 메루루루 2015.07.30 0/0
질문 이미지서치 범위지정 질문있습니다~ 5 페르니코 2016.01.31 0/0
질문 이미지서치 범위서칭 질문드립니다. 8 오핫정보공유 2019.11.26 0/0
질문 이미지서치 범위 관련해서 도움좀 주세요 2 몬길을하자 2016.12.07 0/0
질문 이미지서치 방향에 대해서 질문 3 키리 2018.05.15 0/0
질문 이미지서치 방법좀 알려주실분 4 잘생긴욱이 2017.10.09 0/0
질문 이미지서치 방법좀 알려주세요 3 초근성 2018.08.12 0/0
질문 이미지서치 반복문 줄이기 질문드립니다. 1 무쌍류 2023.02.24 0/0
질문 이미지서치 및 document..에 대해 알려주세요..해당내... 2 정직한 2016.10.31 0/0
질문 이미지서치 미인식 검출 3 메이커s 2020.05.26 0/0
질문 이미지서치 무한루프 질문 좀 할게요 5 으뜸어린이 2014.11.05 0/0
질문 이미지서치 명령어에 대해 궁금한게 있어요 7 스웨이스 2016.11.15 0/0
질문 이미지서치 명령어 질문있습니다. 8 지니블렉션 2015.04.10 0/0
Board Pagination Prev 1 ... 303132333435363738 ... 173 Next
/ 173

전체 최신 인기글

전체 주간 인기글