phy_sleeping 변수 설명

phy_sleeping은 인스턴스가 현재 "잠자고" 있는지 여부를 반환하는 읽기 전용 변수입니다. "잠자는" 인스턴스는 물리 시뮬레이션에 적극적으로 참여하지 않는 상태를 의미합니다. GameMaker는 인스턴스가 정지 상태에 있고 다른 인스턴스와 충돌하지 않을 때 시뮬레이션 사이클을 절약하기 위해 객체를 잠재웁니다.

문법

phy_sleeping;

반환값

  • true: 인스턴스가 잠자고 있는 경우
  • false: 인스턴스가 활성화된 경우
  • undefined: 인스턴스가 물리학이 활성화되지 않은 경우

활용 예제

예제 1: 인스턴스 파괴

if (phy_sleeping) {
    instance_destroy();
}

위 코드는 객체가 활성 시뮬레이션 중인지 확인하고, 그렇지 않으면 객체를 파괴합니다.

예제 2: 점수 증가

if (phy_sleeping) {
    score += 10;
}

이 코드는 인스턴스가 잠자고 있을 때 점수를 10점 증가시킵니다.

예제 3: 상태 변경

if (phy_sleeping) {
    state = "inactive";
} else {
    state = "active";
}

이 코드는 인스턴스의 상태를 "비활성" 또는 "활성"으로 변경합니다.

예제 4: 애니메이션 정지

if (phy_sleeping) {
    sprite_index = spr_idle;
}

이 코드는 인스턴스가 잠자고 있을 때 대기 애니메이션으로 변경합니다.

활용 예제 요약 표

예제 번호 설명 코드 스니펫
1 인스턴스 파괴 if (phy_sleeping) { instance_destroy(); }
2 점수 증가 if (phy_sleeping) { score += 10; }
3 상태 변경 if (phy_sleeping) { state = "inactive"; }
4 애니메이션 정지 if (phy_sleeping) { sprite_index = spr_idle; }