move_bounce_all 함수 설명
move_bounce_all
함수는 인스턴스가 방 안의 모든 인스턴스와 튕기도록 명령할 수 있는 기능을 제공합니다. 단, 스프라이트나 마스크 인덱스가 할당되지 않은 인스턴스는 제외됩니다. 이 함수는 정밀 충돌 검사를 사용할 수 있도록 설정할 수 있지만, 모든 인스턴스에 정밀 마스크가 활성화되어 있어야 하며, 많은 인스턴스가 포함될 경우 게임 속도가 크게 느려질 수 있습니다. 일반적으로 이 함수는 인스턴스의 스텝 이벤트에 사용되지만, 아래의 코드 예제처럼 충돌 이벤트에서도 선택적으로 사용할 수 있습니다.
문법
move_bounce_all( adv );
인수 설명
인수 | 타입 | 설명 |
---|---|---|
adv | Boolean | 고급 튕김을 활성화할지 여부 (true) 또는 비활성화할지 여부 (false) |
반환값
- 없음
예제
if (other.visible) {
move_bounce_all(false);
}
위 코드는 다른 객체와의 충돌 이벤트에 배치됩니다. 먼저 객체가 보이는지 확인한 후, 보인다면 move_bounce_all()
동작을 수행합니다. 이 경우 튕김은 선택적이며, 모든 인스턴스가 아닌 이 충돌에 대해서만 계산됩니다.
활용 예제
예제 1: 기본 튕김
// 스텝 이벤트에서 모든 인스턴스와 튕기기
move_bounce_all(false);
예제 2: 정밀 충돌 검사 사용
// 정밀 충돌 검사를 활성화하여 튕기기
move_bounce_all(true);
예제 3: 특정 객체와의 충돌 시 튕기기
// 특정 객체와의 충돌 시에만 튕기기
if (instance_exists(other)) {
move_bounce_all(false);
}
예제 4: 여러 인스턴스와의 충돌 처리
// 여러 인스턴스와의 충돌을 처리하기 위한 예제
if (other.visible && other.type == "bouncy") {
move_bounce_all(true);
}
이와 같은 방식으로 move_bounce_all
함수를 활용하여 다양한 충돌 처리 및 움직임을 구현할 수 있습니다.