매크로

조회 수 744 추천 0 댓글 3

바람의나라 매크로를 만들어서 사용하고 있습니다.


1~2시간정도 돌아가면  autohotkey unicode 64-bit 작동이 중지되었습니다. 라는 오류가 뜹니다


여기 저기서 오류에 대해 찾아보니  메모리가 쌓여서 작동이 중지 된다고 하시더군요


제가 필요한부분만 짜집어서 배우고 만들다보니까


거의 초보수준이라  해결하기가 쉽지 않네요


return은 잘 넣고 있는데


실시간으로 좌표를 인식해서 불러와야 하기 때문에

loop 안에 gosub으로  이미지 서치해서 좌표를 따내는 명령을 불러옵니다.

gosub이 굉장히 많이 돌아가는 거죠


gosub이 많으면 메모리가 쌓여서  위와 같은 오류가 발생한다고 하신 글을 읽었습니다.


그래서 gosub같은 명령어를 쓰지 않고  함수를 사용하신다고 하셨구요


밑에는 좌표인식 부분만 복사한 내용입니다  x좌표 세자리 y좌표 세자리

0부터 순서대로 이미지와 대조해서 맞는것이 나오면 그 값을 저장하고 다음자리를 검색하는 방식으로 만들었습니다


XXX:
imagesearch, xg, yg, 800, 700, 1000, 800, 좌표\x.bmp
100x=0
loop, 9
{

imagesearch, 100xx, 100xy, xg+20, yg, xg+32, yg+12, *transwhite 좌표\%100x%.bmp
if errorlevel = 1
 {
 100x:=100x+1
 }
else if errorlevel = 0
 {
 break
 }
}

10x=0
loop, 9
{
imagesearch, 10xx, 10xy, xg+28, yg, xg+41, yg+12, *transwhite 좌표\%10x%.bmp
if errorlevel = 1
 {
 10x:=10x+1
 }
else if errorlevel = 0
 {
 break
 }
}

1x=0
loop, 9
{
imagesearch, 1xx, 1xy, xg+37, yg, xg+48, yg+12, *transwhite 좌표\%1x%.bmp
if errorlevel = 1
 {
 1x:=1x+1
 }
else if errorlevel = 0
 {
 break
 }
}

x좌표=%100x%%10x%%1x%
return


YYY:
imagesearch, hx, hy, 800, 700, 1000, 800, 좌표\y.bmp
100y=0
loop, 9
{
imagesearch, 100yx, 100yy, hx+20, hy, hx+32, hy+12, *transwhite 좌표\%100y%.bmp
if errorlevel = 1
 {
 100y:=100y+1
 }
else if errorlevel = 0
 {
 break
 }
}

10y=0
loop, 9
{
imagesearch, 10yx, 10yy, hx+28, hy, hx+41, hy+12, *transwhite 좌표\%10y%.bmp
if errorlevel = 1
 {
 10y:=10y+1
 }
else if errorlevel = 0
 {
 break
 }
}

1y=0
loop, 9
{
imagesearch, 1yx, 1yy, hx+37, hy, hx+48, hy+12, *transwhite 좌표\%1y%.bmp
if errorlevel = 1
 {
 1y:=1y+1
 }
else if errorlevel = 0
 {
 break
 }
}
y좌표=%100y%%10y%%1y%
return



이것을 함수로 표현 한다면


xxx(){

내용}

yyy(){

내용}


이렇게 해도 될까요?


gosub, xxx

gosub, yyy

이건

xxx()

yyy()

이렇게 되는 거겠죠?


정말 모르는게 많다보니 궁금한것도 많고 질문할것도 많네요


다른분들이 올리신걸 읽어보니

함수

function()

이건 function을 호출 하는 것이고

function() 다음에 {}가 바로 오면

function의 내용이 되는 것... 맞나요?



  • 제발등업좀2 2015.09.11 12:39

    function() 

    {

    내용

    리턴  ;써도되고 안써도되구.. 그런다네요 ㅋ

    }

    이렇게하고 알고계신대로..

    function()  요거만써서.. 펑션의 내용을 불러옵니다.


  • fnwj 2015.09.12 16:57

    예를 들면

    function TEXT(a,b,)

    {

    }


    이라고 펑션값을 설정해 주셨으면, 본문에 TEXT(a,b)를 적어주시면 됩니다.

    여기서 a값과 b값은 본문에서 TEXT(1,2)라고 설정했으면

    function에서 a는 1이고 b는 2가 됩니다. 본문에서 a라는 변수와 b라는 변수가 있다고 했을때

    function에서 본문의 변수는 읽을 수 없습니다.


    예를 들어 본문에 a와 b라는 변수를 설정해 주고

    본문에 TEXT(a,b)라고 설정해 줬을 경우에만 function에서 a와 b를 본문에 있는 변수 그대로 쓸 수 있는 겁니다.

  • MC하얀늑대 2015.10.12 19:41

    음.. gosub부분만 말씀드릴께요.

    저도 매클짤때 고섭으로 많이 짰습니다.

    님처럼 그런 애러 떳구요

    그래서 생각한 방법이 함수화키느냐 돌아올 자리가 필요없게 고투로 바꾸느냐 였죠

    함수화는 시간이 오래걸려서

    고투로 바로 노선 변경했습니다.

    매크로 구조상 리턴이 필요없이 바로 다음단계로 넘어가서 거기서 끝나도 되는것들은 고투로 바꿔보세요

    그러면 그런 애러 안납니다 ㅎ


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 혹시 오토핫키얘기는 아니지만 가상머신에 대해 아시는... 바남 2018.10.21 0/0
질문 혹시 온라인 게임 메크로 제작문의도 받으시나요.. 8 큰일났숑 2017.01.08 0/0
질문 혹시 움직이는 대상 이미지서치를 쉽게 하는방법있을까요 1 쿠쿠다스4 2018.11.15 0/0
질문 혹시 이미지인식이 옛날 온라인게임도 가능할까요? 노가다게임 2023.02.24 0/0
질문 혹시 이브온라인 게임하시는분있나요?? 아이응 2018.03.10 0/0
자유 혹시 이오류아시는분계시나용.. 1 sk브로드반드 2018.04.12 0/0
질문 혹시 제작의뢰 받아주시는분있을까요 엄청간단한겁니다 1 운월임 2018.07.13 0/0
질문 혹시 지니모션 이나 블루스택 용 매크로 스크립트 공유... 5 소문난힌켈 2015.01.07 0/0
질문 혹시 컬러 설정 어떻게 하는지 아시는분...! 1 빵빵또앙 2020.02.24 0/0
질문 혹시 쿠키런 매크로 만드시는분있나요? 벋시s 2014.11.03 0/0
자유 혹시 특정 윈도우창의 볼륨만 컨트롤 할 수 있을까요? 1 sica 2015.11.02 0/0
질문 혹시 퓨처파이트 하시는분? 2 dkdh2 2016.12.07 0/0
질문 혹시 플래시위에 매크로를 입력하는 방법이 있을까요? 1 준기네필름 2018.01.17 0/0
질문 혹시 피시마다 이미지 색상이 달라서 인식 안되는 경우... 3 hiki 2017.10.26 0/0
질문 혹시 피파온라인3 오토핫키 스크립트 갖고 계신분있나... 앗뵤 2015.09.22 0/0
질문 혹시 핫키 눌러서 수행중에 다른핫키도 먹히게 하는게 ... 3 으뜸어린이 2014.11.15 0/0
질문 혹시 핫키 하나로 on,off 기능 수행할수 있나요? 10 으뜸어린이 2014.11.10 0/0
질문 혹시 항상 창을 활성화시킬수는 없을까요? 4 투혼레몬 2015.07.07 0/0
질문 혹시... 같은모양 찾는방법이있나요? 11 제발등업좀2 2022.12.14 0/0
질문 혹시... 드래곤플라이트나 포코팡같은 게임도 오핫키로... 5 flem 2015.05.21 0/0
Board Pagination Prev 1 ... 201202203204205206207208 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글