여러분의 게임 프로젝트가 혹시 위와 같지는 않으신가요?
적 오브젝트는 추가해야 하고, 그에 따라 충돌 이벤트는 한없이 늘려야 합니다.
만일 적 오브젝트가 100개라면, 충돌 이벤트가 무려 100개! 상상만 해도 끔찍하지 않나요?
하지만 다행히도 게임메이커: 스튜디오(GameMaker: Studio)에서는 오브젝트를 하나로 묶을 수 있는 페런츠(Parents)라는 기능을 지원합니다.
부모(Parents)를 설정하는 방법은 간단합니다.
먼저 페런츠 오브젝트를 생성한 뒤에, 원하는 오브젝트들이 그 페런츠를 선택하면 됩니다.
TIP.
페런츠는 페런츠의 페런츠를 설정할 수도 있습니다. 한마디로 위처럼 오브젝트를 '계층화' 시켜서 편리하게 관리할 수가 있습니다. |
페런츠 기능을 사용하게 되면, 'with(페런츠){instance_destroy()}' 와 같은 코드를 작성했을 때에 현재 룸 상에 거주하는 자식 인스턴스를 전부 파괴할 수 있습니다.
즉, 게임메이커의 각종 기능에서 부모를 대상으로 지정하게 될 경우 자식들에게도 적용이 된다는 것입니다.
이와 같은 원리를 따져본다면, 충돌 이벤트를 부모로 지정하게 되면 자식들에게도 적용된다는 것을 알 수가 있습니다.
위 사진처럼 4개의 충돌 이벤트를 사용하던 것을 단 한 개의 충돌 이벤트로 압축할 수 있게 되는 것입니다.
페런츠의 또 다른 매력은 바로 부모로부터의 이벤트 상속입니다.
만약 부모에게 있는 이벤트(이벤트 속 액션 포함)가 자식에게는 존재하지 않는다면, 그 이벤트를 상속해줍니다.
자식에게 동일한 이벤트가 존재한다면 부모의 그 이벤트를 상속하지 않습니다만, event_inherited 함수를 사용하면 이벤트를 상속받을 수도 있습니다.