NGMsoftware

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

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

    팁 앤 테크

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

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

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

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 오늘은 1부에 이이서 상하좌우 방향키를 어떻게 처리해야 하는지 알아보도록 하겠습니다. 아직 1부 내용을 안보신 분들은 아래 글을 먼저 읽어보시고, 첨부되어 있는 예제 스크립트를 다운로드 받아서 열어보세요.

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

     

    1부에 첨부되어 있는 스크립트를 열어보면 아래와 같이 만들어져 있습니다. 두 점의 거리를 계산하는데까지 만들었습니다.

    OKinvr1.png

     

     

    상하좌우 이동할 위치를 계산하기 위해 변수 2개를 추가하세요. 그리고, 각각 아이디를 설정해줍니다.

    vB59TYL.jpg

     

     

    [ 좌표 사칙연산 ] 액션에서 변수 추가하기를 누르고, 아래 그림과 같이 결과 값들을 변수에 추가하세요.

    13v9qTq.jpg

     

     

    X 축 값으로는 좌우를 알 수 있고, Y 축 값으로는 상하를 알 수 있습니다. 먼저 X 부터 계산 해보도록 하겠습니다. [ 숫자 체크 ] 액션을 추가하세요. 아래 그림과 같이 비교 조건은 GreaterThan으로 선택하세요. GreaterThan은 "보다 큰"이라는 뜻입니다. 비교할 숫자에는 0을 입력하세요.

    KjqrFF9.jpg

     

     

    X 축 변수 값을 비교 대상 숫자에 가져옵니다. 비교 대상 숫자가 0보다 큰지 비교할 수 있게 되었습니다.

    7nPsoQK.jpg

     

     

    실제로 X 축 값이 마이너스라서 0보다 크지 않습니다. 그렇기 때문에 조건은 False가 됩니다. 조건을 알았으니 False면 왼쪽, True면 오른쪽 방향키를 누르면 됩니다. 이 예제에서는 테스트라서 실제 케릭터가 이동하거나 하지 않습니다. 그래서, 시각적으로 확인할 수 있게 키보드 대신 메세지 창을 이용하도록 하겠습니다. [ 메세지 박스 ] 액션을 2개 추가하세요. 그리고, 아이디를 왼쪽오른쪽으로 설정 해줍니다.

    AmzC6Rk.jpg

     

     

    숫자 체크 액션의 조건에서 같음과 다름에 아래와 같이 메세지 박스 아이디를 설정하세요. 실제로 게임에 적용할 때는 메세지 박스가 아닌 키보드를 이용해야 합니다.

    3r4dLiP.jpg

     

     

    메세지 박스 액션의 내용에 각각 왼쪽, 오른쪽을 입력하세요.

    6P771CW.jpg

     

     

    여기서 한가지 중요한 부분이 있습니다. 엔지엠 매크로의 액션들은 무조건 위에서부터 아래로 하나씩 실행됩니다. 그렇기 때문에 조건이나 액션 이동과 같은 루틴을 이동할 수 있는 다양한 방법들이 존재하는데요. 여기서 True 결과일 때는 오른쪽 메세지 박스로 이동하기 때문에 왼쪽 메세지 박스는 건너뜁니다. 이렇게 동작하는건 문제가 없지만, False일 때는 왼쪽 메세지 박스가 실행되고 그 아래에 있는 오른쪽 메세지 박스도 실행되는 문제가 발생합니다. 따라서, 조건 루틴에서는 [ 액션 이동 ]을 사용해서 건너뛸 수 있게 구성해야 합니다. 마지막에 건너뛰기 위한 [ 그룹 ] 액션을 추가했습니다.

    Nmwzk5I.jpg

     

     

    완성된 매크로를 실행 해볼까요?

     

     

    그림판에서 파란색점(케릭터 위치)을 주황색 기준점 좌우로 이동하면서 테스트 해보세요. 방향키 좌우를 누를 수 있습니다. 이제 여러분들은 이 내용을 응용해서 상하도 처리할 수 있을겁니다. 그리고, 방향키를 한번 누른다고 해서 목표 지점까지 한번에 이동하지는 않을겁니다. 그래서, 반복하면서 처리할 수 있게 루틴을 개선해야 합니다. 이것도 이 글에서 학습한 액션 이동과 그룹으로 반복할 루틴을 묶어서 처리하면 됩니다. 마지막으로 목표 위치까지 이동했으면 중지해야 하는데요. 이건 [ 절대값 ] 액션으로 좌표 값을 양수로 변환하고, 이 값이 10픽셀 보다 큰지 비교해서 반복 루틴을 탈출하게 만들면 됩니다. 궁금한 사항은 [ 고객 서비스 ]방에 문의 해주세요^^

     

    개발자에게 후원하기

    MGtdv7r.png

     

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

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

    감사합니다~

     

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

    댓글목록

    등록된 댓글이 없습니다.