매크로

정보
2014.11.20 16:07

폴더내 이미지 찾는 Loop

조회 수 912 추천 0 댓글 5

세나 쫄작을 구현해보고 있다가 괜찮아서 올리는 팁입니다.

아직 오토핫키 언어가 어려움이 있지만 공유합니다.


예로 설명하겠습니다. 아래와 같이 폴더가 구성되어 있을때입니다.
img\쫄작\만렙\아론
img\쫄작\만렙\아론\1아론30.bmp
img\쫄작\만렙\아론\2아론30.bmp???????????????????????????????????
img\쫄작\만렙\바론
img\쫄작\만렙\바론\1바론30.bmp
img\쫄작\만렙\바론\2바론30.bmp?????????????????
//사설로 위같이 만들어놓은 이유는 저만 그런지 모르겠는데 팀이랑 진형이 바뀌면 이미지 검색이 안되더라구요..

이렇게 있는 상태에서 아론을 검색하고, 바론을 검색하는 것을 하나의 루틴으로 처리하고자 할 때입니다.


그러면 1차 루프로 아론, 바론 폴더 이름을 얻어옵니다.

Loop, %A_ScriptDir%\img\쫄작\만렙\*,1,0
{
?? vMonsterName=A_LoopFileName
?? fChangeMonster(A_LoopFileName)??
?? ; 위 fChangeMonster는 제가 만들고 있는 함수입니다.
?? ; MsmBox를 해보면 A_LoopFileName에, 아론,바론이 있습니다.
??
}
설명 :
?? Loop, %A_ScriptDir%\img\쫄작\만렙\*,1,0
?? 만렙 폴더 밑에 있는 모든것, 폴더를 포함해서 루프를 돌자
?? 폴더 포함 Flag로 인해서 A_LoopFileName에 아론과 바론이 들어갑니다.
??

그러면 폴더 이름을 찾았습니다.

그럼 아래와 같이 다시 *.bmp로 하면 아론과 바론 밑에 있는 1아론30.bmp,2아론30.bmp,3아론30.bmp로
루프가 가능합니다.( vMonsterName은 위에서 얻어온것처럼 넘겼습니다. )

Loop, %A_ScriptDir%\img\쫄작\만렙\%vMonsterName%\*.bmp
{
?? vOldMonsterFile=쫄작\만렙\%vMonsterName%\%A_LoopFileName%
?? ;fFindImg도 사진을 넘기면 찾는 제가 만든 함수입니다...
?? If(? fFindImg( vOldMonsterFile ) = 0? )
?? {
????? vStatus=%vMonsterName%를 발견했습니다. 교체를 시도합니다.
?? }
}


위와 같이 루프속 루프를 돌려서 전체 bmp를 찾아 볼수 있습니다.

위에서 만약 아론, 바론 폴더 이름을 얻지 않고 전체 bmp를 루프돌고자 한다면
???? Loop, %A_ScriptDir%\img\쫄작\만렙\*.bmp,0,1
???? 이렇게 하면 A_LoopFileName에 bmp파일만 나오게 됩니다.


  • 생물 2014.11.20 16:10

    흠.. 참고로 말씀드리자면 세나의 경우 몇몇 창들이 게임의 뒷 배경의 영향을 받는 듯 합니다. 영웅관리창도 마찬가지로

    모든 자리가 픽셀값이 모두 다릅니다..ㅠㅠ 주륵..

  • 묵치기 2014.11.20 16:12
    역시는 역시나 역시군요... 그런거 같았습니다. 3번 자리에 나온 스샷이 4번 자리에서는 찾아지다가
    1,5,2에 가면 못찾고 그렇더라구요..
    답답 ㅎㅎㅎㅎ
  • 따기따기 2014.12.01 15:38
    거의 모든게임이 그럴듯 싶습니다. 포토샵등을 이용해보신분들은 아시겠지만
    이미지파일을 반투명으로 설정해서 뒤에 배경이 비쳐서 이미지서치도 픽셀서치도 어렵게 만들어놓았죠...
    맨눈으론 같아보이는데 같은곳을 배경이 다른곳에서 찍어서 알씨나 포샵등으로 확대해보시면 색이 다른것을 알수잇습니다
  • theruin 2014.11.20 23:05

    이미지를 폴더별로 나누워 두셨군요. 전 귀찮아서 이런경우 걍 파일이름을 1,2,3 같은 번호로 넣어 버리고

    ImageSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, %i%.bmp

    이거 i++ 해주면서 루프 돌려버렸네요..

    다음에 이방법 참고해 봐야겠네요

  • 묵치기 2014.11.21 09:34
    파일 이름에 정보가 들어갈수 있을까 싶어서 고민했었습니다.
    저도 동일하게
    ImageSearch, OutputVarX, OutputVarY, X1, Y1, X2, Y2, 아론%i%.bmp
    이런식으로 구현했었습니다.. 저 특정 이름 "아론" 요녀석을 빼고 싶었습니다.

List of Articles
분류 제목 글쓴이 최근변경 추천
정보 외치기님 푸쉬블렛 .. 시간 보내기 (누군가 질문던지신... 2 제발등업좀2 2016.03.30 1/0
질문 xe홈페이지 로그인 인증방법 문의 24 우리형 2016.02.16 1/0
자유 처음 만들었던 디아블로3 오토 14 무하마드알리 2016.02.17 1/0
자유 커스덤UI 한번 제작해봄. 얻은 교훈은 다시는 이런 뻘... 8 슉슉이 2016.09.07 1/0
질문 오토핫키의 Gui 에 비활성 클릭은 안되는 건가요?? 1 나귀 2016.02.10 1/0
질문 외치기님 Gdip_ImageSearchWithHwnd 함수 오차율에 대... 2 나귀 2016.02.09 1/0
질문 winhide 상태에서 이미지서치 방법이 있나요? 나귀 2016.01.23 1/0
질문 여러가지 인증방법 8 우리형 2016.01.21 1/0
질문 비활성 스크린 가져오기 gdip말고 다른거없나요? 9 cjh71 2016.01.13 1/0
질문 초보입니다, 웹페이지에서 어떤 텍스트를 검색하려면 3 삭제기호 2015.12.25 1/0
질문 녹스 타이틀 질문드립니다. 3 쁘랑키 2015.12.06 1/0
자유 명령어 쉽게 풀어주신 분이계시네요 6 침묵의고요 2016.04.14 1/0
정보 adb 관련 비활성화 이미지 서치 쉽게하기 6 운하파는 2016.07.02 1/0
자유 잘고텍스트 신기하네요. 17 외치기 2015.11.27 1/0
자유 오토핫키 명령어 찾다가 발견했네요^^ 9 럭셔리김 2015.11.19 1/0
질문 adb방식이 구체적으로 어떤건가요? 5 세븐나이쯔 2015.11.24 1/0
정보 맥주소 얻기 12 와이로 2015.10.05 1/0
자유 아..언패킹당해네요 ㅋㅋ 기분..참 29 제발등업좀2 2016.01.14 1/0
정보 네이버에서 현재시간 가져오기 6 와이로 2016.11.14 1/0
정보 레이븐 블루스택용 소스3탄 - 필요하신분쓰세요 추천X T7GG 2015.09.13 1/0
Board Pagination Prev 1 34567891011 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글