RPGXP/VX 원형 거리 측정(세 줄 스크립트)
2007.01.30 20:08
def range(target_x, target_y, selecter_x, selecter_y)
@range = ((target_x - selecter_x) ** 2 + (target_y - selecter_y) ** 2) ** 0.5
end
역시 밑의 '원형 거리 측정' 이나 '마름모 거리 측정' 처럼 game_map 스크립트 함수 사이에 넣어 주시면 됩니다.
game_map.range(1, 2, 3, 4) 방식으로 사용할 수 있지요.
단, 제곱으로 거리를 측정할 필요가 없습니다.
만약 좌표가 (1, 5, 1, 10) 이라면
위의 계산 결과 5.0이 나옵니다.
만약 (1, 2, 2, 6) 이라면
위의 계산 결과 4.12310... 따위가 나옵니다.
xp 의 강점은 역시 소수점 이하의 계산이 가능하다는 거니까요.
우선 계산식을 설명해 보겠습니다.
** 2.0
이건 제곱하란 뜻입니다. ** 14 라면 14제곱이 되겠지요. (앞의 수를 열 네 번 곱하라는 뜻입니다)
** 0.5 ( -----> 1/2)
이건 제곱근 계산입니다. x ** 2 = y 라면 거꾸로 y ** 0.5 (<------ 1/2) = x 가 되는 셈입니다.
그렇다면 x ** 4 = y 일 때 x 값은 어떻게 알 수 있을까요?
정답 : x = y ** 0.25 (<------------1/4)
--------------------
제곱근을 구하는 또 다른 방법이 있습니다.
Math.sqrt(x)
Math 는 수학 계산을 위한 내부 모듈로, 사인, 탄젠트 따위의 삼각함수도 계산할 수 있습니다.
자세한 사항은 패스.
--------------------
계산 순서는 괄호 계산이 1번, 그 다음 곱셈이나 나눗셈 계산으로 좌측에서부터 먼저 계산합니다.
정리하면 다음과 같습니다.
1번 : (traget_x - selecter_x)
2번 : (target_y - selecter_y)
3번 : 1번 ** 2
4번 : 2번 ** 2
5번 : 3번 + 4번
6번 : 5번 ** 0.5
이상입니다.
댓글 2
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
369 | 귀국 예고입니다. ^^; [3] | Zeprod | 2007.02.11 | 307 |
368 | 작은 팁하나..전투애니메이션의 픽쳐화! [10] | 윈드 | 2007.01.31 | 796 |
367 | 액알, 한번의 노가다로 끝까지 사용하자! [5] | RPG_매냐 | 2007.01.31 | 1001 |
» | 원형 거리 측정(세 줄 스크립트) [2] | 타이머 | 2007.01.30 | 688 |
365 | [C] C는 어떤 언어이고 뭘 할 수 있는 언어일까? [3] | SeHwa | 2007.01.25 | 462 |
364 | 분수의 사용 [7] | Yggdrasil | 2007.01.24 | 460 |
363 | R2k로 퍼즐 만들기 [4] | 새벽도둑 | 2007.01.23 | 626 |
362 | 오직 RPGXP만 재생하지 못하는 MIDI파일 [5] | Les Paul | 2007.01.22 | 888 |
361 | 에에... 할일 없어서 해봤습니다... 카노 방식 이벤트 액알예제.... [2] | かの☆あおき | 2007.01.18 | 837 |
360 | [C++] template의 활용법 [1] | Zeprod | 2007.01.16 | 296 |
359 | BGM과 ME가 재생이 안될때 | View2er | 2007.01.16 | 393 |
358 | -Jindow_v0.1-체험판 [4] | -제이- | 2007.01.15 | 649 |
357 | 아이디어 하나.... [4] | 역습의 귀공자 | 2007.01.13 | 402 |
356 | 소개글 [봄이 남아있던 자리] [5] | Vermond | 2007.01.12 | 653 |
355 | 소개글 [산타클로스~수해와 수영] [5] | Vermond | 2007.01.10 | 616 |
354 | 범위 공격 : [y >= x^2] 을 이용 [7] | Spegel | 2007.01.09 | 778 |
353 | 대기 [6] | 가다없는 | 2007.01.07 | 293 |
352 | [C++] WinAPI를 이용한 GUI 프로그래밍 [2] | Zeprod | 2007.01.07 | 645 |
351 | 잠입 게임 아이디어 [5] | 아르킨 | 2007.01.07 | 557 |
350 | 데미지의 최소값, 최대값을 설정해보자! ver 1.0 [6] | 『연금술사』 | 2007.01.04 | 898 |