GAME MAKER 강좌
KAYAN
◈ 특정 오브젝트 찾기
이번 강좌에서는 동일한 오브젝트들 중, 변수 값이 다르다던가, 또는, 특정 변수 값일 때, 가장 근접해 있는
오브젝트를 찾는 방법에 대해 알아봅시다.
(▲ 오브젝트 찾기)
먼저 동일한 오브젝트들 중, 인스턴스를 개별적으로 찾는 것은,
instance_find(object,n) |
이와 같은 함수를 사용하여 찾을 수 있습니다.
이 함수는 지정한 오브젝트 중, 룸에 있는 n 번째 인스턴스를 찾는 함수이며, n은 0번(첫번째
인스턴스)부터 시작합니다.
이 함수는 보통 아래와 같은 형식으로 사용할 수 있습니다.
n=instance_number(object); //룸에 해당 오브젝트가 몇개 있는지 체크 |
룸에 오브젝트 수 만큼 반복문을 통해 인스턴스를 찾아 조건에 맞는 오브젝트를 추려내는 방식에
사용되지요.
예를 들어, 아래와 같이,
(▲ 특정 오브젝트 찾기)
변수 set 값이 5 보다 큰 여러 obj_ball 오브젝트들 중, 가장 근접해 있는 인스턴스를 찾는다면,
var n,dist,inst,it,i; |
위와 같이 할 수 있을 겁니다.
룸에 있는 오브젝트 수 만큼 인스턴스를 체크하여, 변수 set 값이 5보다 크고, 해당 인스턴스와의 거리가
최대 거리보다 작으면, 거리를 갱신하여, 가장 근접해 있는 오브젝트를 계속 추려내는 것이지요.
그리고 모두 체크한 후, 반복문(예문의 for 문)을 끝내면, 조건에 맞는 인스턴스(예문의 inst 변수)를
찾았을 때, 그 인스턴스를 제어하는 방식입니다.
물론 예문은 근접한 인스턴스를 찾는 방식이지만, 다양한 상황을 추가하여 다른 유형의 유닛을 선택하는
방법에 응용할 수도 있을 거에요.
'GameMaker강좌[GM8] > 기초강좌' 카테고리의 다른 글
[게임메이커강좌-기초] 충돌 체크 함수 1 (0) | 2016.12.15 |
---|---|
[게임메이커강좌-기초] 충돌 체크와 충돌 이벤트 (0) | 2016.12.13 |
[게임메이커강좌-기초] 가장 근접해 있는 오브젝트 찾기 (0) | 2016.12.08 |
[게임메이커강좌-기초] 이미지를 화면에 표시하기 (0) | 2016.12.06 |
[게임메이커강좌-기초] 텍스트를 화면에 표시하기 (0) | 2016.12.05 |
댓글