조회 수 2387 추천 수 4 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

 


※네이버 어느 카페에 누군가 범위 마법에 대해 질문하길래 제가 답변을 해줬는데


   답변으로만 남기에는 투자한 시간도 아깝고(...) 강좌로도 좋겠다 싶어서


   여기에 약간의 수정을 거쳐서 옮깁니다.


 


 


 


 


범위 좌표를 구하는 것은 여러 방면에 쓰입니다.


 


그중 가장 대표적인게 ARPG에서 범위 마법을 구현 할 때에 쓰이고,


 


몹이 주인공을 인식하는 시야를 정하는 데에도 쓰입니다.


 


방법은 여러가지가 있습니다.


 


그 중에서 보편적인 한가지만 알려드립니다.


 


 


 


 


먼저 이 방법을 하려면 총 6개의 변수가 필요합니다.


 


범위 마법 최소 범위 X


범위 마법 최대 범위 X


범위 마법 최소 범위 Y


범위 마법 최대 범위 Y


적 X


적 Y


 


이름은 굳이 이렇게 하지 않으시고 맘대로 지으셔도 됩니다.


 


만드는 사람만 알아 볼 수 있으면 그걸로 된 겁니다.


 


X란 가로, Y란 세로입니다. 그건 아시죠?


 


이 4개의 변수가 필요한 이유를 그림으로 설명 해드립니다.


 



 


 


 


우리가 범위 공격으로 적에게 타격을 줄 범위는 빨간색 빗금이 쳐진 네모 안 입니다.


 


X좌표는 왼쪽이 최소, 오른쪽이 최대 범위.


 


Y좌표는 윗쪽이 최소, 아랫쪽이 최대 범위입니다.


(착각 하실 수 있는데, Y 좌표는 분명히 아래로 갈 수록 좌표가 커지므로 아랫쪽이 최대 범위입니다.)


 


우리는 이 범위 안에 있는 적을 공격해야만 하고 이 범위를 좌표 조작으로 조작해야만 합니다.


 


이제 변수 준비를 마쳤으니 좌표를 이용해 범위를 지정해줍시다.


 


지금 설명 할 것은 주인공이 오른쪽을 바라보고 있을때를 기준으로 설명 합니다.


 


일단 범위 마법 최소 X, 범위 마법 최대 Y에 주인공의 X 좌표를,


 


범위 마법 최소 Y, 범위 마법 최대 Y 에 주인공의 Y 좌표를 대입해줍니다.


 


이걸로 주인공의 좌표가 기준점이 되었으며 범위 마법의 범위는 주인공의 좌표를 그대로 가져와 1x1의 범위를 가지게 되었습니다.


 


아래의 그림은 우리가 현재 지정한 범위에 빨간 테두리를 친 것입니다.


 



 


이제 우리는 좌표를 조작함으로써 이 범위를 마음대로 늘리고 줄일 수 있습니다.


 


다음의 방법대로 좌표의 범위를 조작해봅시다.


 


X의 최소 범위를 조절하게 되면 왼쪽 방향으로 사각형이 늘어납니다.


X의 최대 범위를 조절하게 되면 오른쪽 방향으로 사각형이 늘어납니다.


Y의 최소 범위를 조절하게 되면 윗쪽 방향으로 사각형이 늘어납니다.


Y의 최대 범위를 조절하게 되면 아랫쪽 방향으로 사각형이 늘어납니다.


 


위의 원칙에 따라 범위를 한번 늘려봅시다.


 


다만 주의 하실건 최소 범위를 조절할 때는 반드시 - 가산 또는 감산을 해주시고,


 


최대 범위를 조절 하실때는 그냥 가산을 해주시면 됩니다.


 


이 원칙에 따라서 양쪽으로 2칸, 위아래로 2칸씩 늘리려면


 


X의 최소 범위에 -2를 가산. (또는 2 감산)


X의 최대 범위에 2를 가산. (또는 -2 감산)


Y의 최소 범위에 -2를 가산. (또는 2 감산)


Y의 최대 범위에 2를 가산. (또는 -2 감산) 해주시면 됩니다.


 


이제 우리가 지정한 범위를 확인해봅시다.


 


 


 



 


 


이제 좌표로 범위를 정해주는 일은 끝났습니다.


 


다음은 이 범위 안에 있는 적에게 타격을 주는 커맨드를 주는 일만 남았습니다.


 


적이 데미지를 입으려면 이 빨간색 범위 안에 있어야 하겠지요?


 


이 조건을 그대로 커맨드로 옮겨줍니다.


 


조건 분기로..


 


적 X가 범위 마법 최소 X 이상.


적 X가 범위 마법 최대 X 이하.


적 Y가 범위 마법 최소 Y 이상.


적 Y가 범위 마법 최대 Y 이하.


 


즉, 적의 X 좌표가 범위 마법 X 좌표의 최소 범위와 최대 범위 안에 있어야 한다는 것이고,


 


적의 Y 좌표가 범위 마법 Y 좌표의 최소 범위와 최대 범위 안에 있어야 한다는 조건을 만들어주시면 됩니다.


 


이제 그 4줄의 조건 분기 안에다 적의 체력을 깎아버리는 변수 조작과


 


애니메이션 표시 등의 효과를 넣어주시면 끝납니다.


 


 


 


 


 


 


 


 


 


 


 


 


이제 지금 까지 배운걸로 범위를 마음대로 늘리고 줄여봅시다.


 


제가 그림을 제시 할테니 이 그림대로 좌표를 가산(또는 감산) 해보십시오.


 


정답은 맨 아래에 있습니다.


 


 


 


1) 오른쪽 방향으로 6 x 1 의 범위.


 



 


 


2) 주인공을 중심으로 3 x 3 의 범위.


 



 


 


3) 오른쪽 상단으로 약간 쏠린 5 x 5 의 범위.


 



 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


 


1 정답


 


X 최소 범위는 그대로 두기. (아무런 가산이나 감산을 하지 않는다.)


X 최대 범위에 6을 가산. (또는 -6 감산)


Y 최소 범위는 그대로 두기. (아무런 가산이나 감산을 하지 않는다.)


Y 최대 범위는 그대로 두기. (아무런 가산이나 감산을 하지 않는다.)


 


※아무런 가산이나 감산을 하지 않을때는


   변수 커맨드를 굳이 지우지 마시고 가·감산의 숫자만 0 으로 바꿔주셔도 됩니다.


 


 


 


2 정답


 


X 최소 범위에 -1을 가산. (또는 1 감산)


X 최대 범위에 1을 가산. (또는 -1 감산)


Y 최소 범위에 -1을 가산. (또는 1 감산)


Y 최대 범위에 1을 가산. (또는 -1 감산)


 


 


 


3 정답.


 


X 최소 범위에 -1을 가산. (또는 1 감산)


X 최대 범위에 3을 가산. (또는 -3을 감산)


Y 최소 범위에 -3을 가산. (또는 3을 감산)


Y 최대 범위에 1을 가산. (또는 -1을 감산)

?

  1. 물체 밀어서 움직이는 이벤트 조금 더 쉽게 하는 법

  2. [마지막 3명 모집] [취업연계무료교육] VR/AR 게임 콘텐츠 전문가 양성 과정 교육생 모집

  3. rpg vxa 로 겜만들때 데미지 설정 공식[링크]

  4. [꿀팁] 간단하게 만들 수 있는 실시간 전투 시스템

  5. JSON parser 변환데이터 저장시 생기는 Object Too Deep 해결하기

  6. 앙뜨프리너십에서 해커톤 부트캠프 모집중이네요

  7. RPG MV에서 플러그인 오류의 원인에 대하여

  8. RPG MV 게임 도중에 윈도우 스킨 파일 자체를 통째로 바꿔버리는 방법 (출처: HIME)

  9. 게임의 버전을 짜 보자! - 유의적 버전 2.0.0

  10. 텍스트 대화 도중 메뉴 여는 방법을 알아냈습니다!

  11. rpgmv 마우스 지원과 터치 지원이 되니.

  12. RPG Maker MV 와 AJAX를 이용한 웹통신 관련 영상.

  13. RPG게임 뻔한요소들.

  14. 자바스크립트와 관련해서 참고할 만한 사이트들

  15. 꿀잼이군요!

  16. [RPG2000/3 팁] 간편한 이벤트 단축키

  17. [RPG2000/3 팁] 간편한 이벤트 단축키

  18. [강의링크] 대비법칙-색상대비-밀당의 재미 약한 반대색 설계

  19. 오다 주웠습니다.

  20. 무료 이미지 사이트 Pixabay!

Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 51 Next
/ 51


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)