GAME MAKER 강좌
KAYAN
◈ 충돌 체크와 충돌 이벤트
이번 강좌에서는 충돌 이벤트에 대해 알아보도록 합시다.
(▲ 충돌 체크)
스프라이트는 게임에서 보여줄 수 있는 이미지이며, 이것은 애니메이션으로 구성할 수 있습니다.
또한, 이것은 게임메이커에서 충돌 체크에 관련된 마스크(mask)라는 중요한 역할을 합니다.
(▲ 마스크)
이 마스크의 범위를 어떻게 설정했는가에 따라, 오브젝트 간의 충돌시 피격범위가 달라 질 수
있습니다. 즉, 화면의 이미지상에 보이는 것과는 달리 전혀 다른 위치에서 충돌이 이루어 질 수도
있다는 것이지요.
따라서 그런 것들을 고려하여 마스크 범위를 설정하는 것이 중요합니다.
충돌 체크는 기본적으로 Collision 이벤트를 통해 체크할 수 있습니다.
(▲ 충돌 이벤트)
이 Collision 이벤트는 충돌을 체크할 오브젝트를 지정해주고, 충돌시 해당 오브젝트 간의 이벤트를
구성할 수 있습니다.
이 이벤트에서 충돌 대상을 제어할 수 있는데, 그 때 other 라는 기능 사용할 수 있습니다.
other 는 충돌 대상을 지칭하는 기능입니다.
예를 들어, 충돌 대상의 HP라는 변수를 -5 만큼 감소시킨다면,
other.HP-=5; |
Collision 이벤트에서 이와 같이 할 수 있어요.
참고로 other 는 충돌 상대를 지칭하는 것일 뿐, 충돌 상대의 id 를 반환하는 것이 아니기 때문에,
충돌 상대 인스턴스의 id가 필요할 경우, other.id 로 해야 id 값을 얻을 수 있습니다.
이 기능은 with 문 안에서도 사용할 수 있는데, with 문 안에서는 with 문을 실행하는 오브젝트를
지칭합니다.
예를 들어, 아래와 같이
// A 오브젝트에서 실행 |
A 오브젝트에서 with 문을 실행했을 때, other 는 with 문을 실행하는 A 오브젝트의 set 변수를
제어하게 됩니다.
// A 오브젝트에서 실행 |
이와 같은 경우, other 가 있는 with문을 B 오브젝트에서 실행하기 때문에, other는 A가 아닌,
B의 set 변수를 제어하게 됩니다.
'GameMaker강좌[GM8] > 기초강좌' 카테고리의 다른 글
[게임메이커강좌-기초] 충돌 체크 함수 2 (1) | 2016.12.15 |
---|---|
[게임메이커강좌-기초] 충돌 체크 함수 1 (0) | 2016.12.15 |
[게임메이커강좌-기초] 특정 오브젝트 찾기 (3) | 2016.12.08 |
[게임메이커강좌-기초] 가장 근접해 있는 오브젝트 찾기 (0) | 2016.12.08 |
[게임메이커강좌-기초] 이미지를 화면에 표시하기 (0) | 2016.12.06 |
댓글