NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 팁 앤 테크
  • 매뉴얼

    팁과 테크니컬 노하우를 확인하세요.

    팁 앤 테크

    팁과 테크니컬 노하우를 확인하세요.

    본 사이트의 컨텐츠는 저작권법의 보호를 받으므로 무단 복사, 게재, 배포 등을 금합니다.

    에디터 1부 - 미니맵에서 내 케릭터와 목표 지점 거리를 계산해서 이동시키는 방법.

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 좌측 상단에 미니맵이 있는 게임들이 있는데요. 미니맵의 내 케릭터 위치를 파악하고, 어떤 목표 위치까지 이동하려면 2점 간의 거리를 계산할 수 있어야 합니다. 간단한 산수이긴 하지만~ 100 - 50과 같이 간단한 문제가 아닙니다. 좌표는 X축과 Y축으로 이우러져 있고, 기준점에서 상하좌우에 따라 마이너스 값이 나올수도 있습니다. 그래서, 여러가지 경우들을 고려해야 내 케릭터를 원하는 위치까지 이동시킬 수 있습니다. 여기까지만 종이에 써가면서 계산하면 누구나 할 수 있을겁니다. 하지만, 엔지엠 매크로의 함수 기능들을 이용해서 액션을 어떻게 조합해야 하는지는 또 다른 문제입니다. 학습 능력과 응용력이 없으면... 아마도 거의 불가능할겁니다. 엔지엠 매크로 에디터를 실행하고, 새로운 스크립트를 추가하세요.

    cnOuw3h.gif

     

     

    그림판에 캐릭터가 이동할 목표 위치(오랜지색 점)와 내 케릭터(파란색 점)를 표시 해두었습니다.

    lZBvi6y.png

     

     

    파란색점이 오랜지색점까지 이동하려면 우선 거리를 알아야겠죠? 파란색점이 오랜지색점과 겹쳐지면 다 온거니 더이상 이동하면 안되니까요. 각각의 점들의 거리를 알기 위해 위치를 먼저 파악해야 합니다. 아래 그림과 같이 [ 픽셀 서치 ] 액션을 2개 추가하세요.

    H9ZLR3r.png

     

     

    그림판의 점들을 찾기 위해 픽셀 서치 액션에서 픽셀 값을 따줍니다.

     

     

    픽셀 서치 2개 다 찾기 영역을 설정 해주세요. 찾기 영역은 그림판만 설정하면 됩니다. 찾기 영역을 설정하는 이유는 윈도우 화면 전체에서 오랜지색점이나 파란색점이 여러개 있을 수 있기 때문입니다. 그림판의 동그마리가 아니더라도 하나의 픽셀 값으로 처리하기 때문에 영역을 설정해야 정확한 동작을 보장할 수 있습니다.

    pDo6Ily.png

     

     

    마우스 좌표를 보면 오랜지색점 목표지점의 위치가 403, 686입니다. 내 캐릭터 위치인 파란색점은 626, 810입니다.

    S2yk8js.png

     

     

    내가 어디에 있고, 어디로 갈지를 알았으니 좌표계를 계산해서 상하좌우 이동하면 됩니다. 그전에 스크립트 내용이 햇갈리니 설명을 좀 달아주도록 하겠습니다.

    kcnTHaH.png

     

     

    좌표계를 계산하기 위해 각각의 위치 값을 [ 변수 ]에 저장해야 합니다. 아래 그림과 같이 [ 변수 ] 2개를 추가하고 아이디도 설정 해주세요. 아래 그림에선 제가 실수로 변수의 설명에다가 목표위치, 내위치를 입력했는데요. 설명이 아니라 아이디에 입력해야 해요. 여러분들은 아이디에 입력하세요. 변수만요^^

    gCxVp76.png

     

     

    픽셀 서치 : 목표지점 액션에서 변수 추가하기를 클릭하고, 아래 그림과 같이 마우스 좌표를 저장하세요. 픽셀 서치 : 내케릭터 액션도 동일하게 변수에 마우스 좌표 값을 저장 해줍니다. 픽셀 서치 : 내케릭터에서 변수에 넣을 때는 내위치 변수에 넣어야 합니다.

    U5NWw2P.png

     

     

    수식에서 [ 좌표 사칙연산 ] 액션으로 목표지점과 내케릭터의 거리를 알아냅니다. 아래 그림처럼 연산자는 마이너스로 설정하세요. 목표지점은 좌항이고 내케릭터가 우항입니다. 다시 말해서 목표지점에서 내케릭터 위치를 뺀다는 뜻입니다. 그러면 내 케릭터가 어느방향으로 이동해야 할지 알 수 있습니다.

    Nh1zNk3.png

     

     

    왼쪽 피연산자(좌항)와 오른쪽 피연산자(우항)에 변수로부터 값을 가져오세요.

    sQSGVMg.png

     

     

    여기까지 완성된 매크로를 실행 해볼까요? 아래와 같은 결과를 확인할 수 있습니다. X 좌표 값이 마이너스로 나옵니다. 그렇다는건 왼쪽으로 이동해야 한다는 의미이고, Y 좌표 값도 마이너스이기 때문에 위로 이동해야 합니다. 플러스 값이 나오면 반대쪽으로 이동하면 됩니다.

    OKinvr1.png

     

     

    1부에서는 어떻게하면 내 케릭터를 목표 지점으로 이동시킬지에 대해 계산하는 방법을 알아봤습니다. 글이 너무 길어지기도 하고, 내용이 복잡해서 2부작으로 나눠서 글을 작성하도록 할건데요. 2부에서는 거리 값을 나타내는 X, Y 좌표 값을 이용해서 상하좌우 방향키를 누르는 방법에 대해 알아보도록 하겠습니다. 최대한 빨리 작성할 수 있도록 할건데요. 여러분들도 첨부되어 있는 스크립트를 응용해서 한번 따라 해보세요^^

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.