is_mouse_over_debug_overlay 함수 설명
is_mouse_over_debug_overlay
함수는 마우스가 디버그 오버레이 창이나 가젯 위에 있을 때, 또는 디버그 오버레이에서 다른 방식으로 사용되고 있을 때(true)를 반환합니다. 예를 들어, 창을 드래그할 때도 해당됩니다.
문법
is_mouse_over_debug_overlay();
반환 값
- Boolean: 마우스가 디버그 오버레이 위에 있으면
true
, 그렇지 않으면false
를 반환합니다.
예제
Step Event 예제
if (!is_mouse_over_debug_overlay()) {
if (keyboard_check_pressed(vk_control)) {
instance_create_layer(mouse_x, mouse_y, layer, obj_enemy);
}
}
위의 코드 예제는 먼저 is_mouse_over_debug_overlay
를 사용하여 마우스가 디버그 오버레이의 메뉴나 창 위에 있는지 확인합니다. 만약 그렇지 않다면, keyboard_check_pressed
를 사용하여 Ctrl 키가 눌렸는지 확인합니다. 만약 눌렸다면, 마우스 위치에 obj_enemy
객체의 인스턴스가 생성됩니다.
활용 예제
예제 번호 | 설명 |
---|---|
1 | 마우스가 디버그 오버레이 위에 없을 때만 특정 키 입력을 처리하여 게임 오브젝트를 생성하는 기능 |
2 | 디버그 오버레이에서 마우스가 특정 버튼 위에 있을 때만 추가 정보를 표시하는 기능 |
3 | 마우스가 디버그 오버레이에 있을 때는 게임의 특정 기능을 비활성화하는 기능 |
추가 코드 스니펫
// 예제 1: 마우스가 디버그 오버레이 위에 없을 때만 오브젝트 생성
if (!is_mouse_over_debug_overlay()) {
if (keyboard_check_pressed(vk_space)) {
instance_create_layer(mouse_x, mouse_y, layer, obj_item);
}
}
// 예제 2: 디버그 오버레이에서 마우스가 버튼 위에 있을 때 정보 표시
if (is_mouse_over_debug_overlay()) {
show_debug_info();
}
// 예제 3: 디버그 오버레이에 있을 때 게임 기능 비활성화
if (is_mouse_over_debug_overlay()) {
game_function_active = false;
} else {
game_function_active = true;
}