시간 소스 상태 가져오기
time_source_get_state
함수는 주어진 시간 소스의 상태를 반환합니다.
문법
time_source_get_state(id);
인수
인수 | 유형 | 설명 |
---|---|---|
id | Time Source ID | 상태를 가져올 시간 소스 |
반환값
- 시간 소스 상태 상수
예제
다음 코드는 스페이스 키가 눌렸을 때 시간 소스의 상태를 가져옵니다. 상태가 활성화되어 있으면 시간 소스를 일시 정지하고, 일시 정지되어 있으면 다시 시작합니다.
if (keyboard_check_pressed(vk_space)) {
var _state = time_source_get_state(time_source);
if (_state == time_source_state_active) {
time_source_pause(time_source);
} else if (_state == time_source_state_paused) {
time_source_start(time_source);
}
}
활용 예제
- 게임에서 시간 조절
- 게임에서 특정 이벤트가 발생했을 때 시간의 흐름을 조절할 수 있습니다.
gml if (event_occurred) { var _state = time_source_get_state(game_time_source); if (_state == time_source_state_active) { time_source_pause(game_time_source); } }
- UI에서 시간 표시
- UI에서 시간 소스의 상태에 따라 다른 메시지를 표시할 수 있습니다.
gml var _state = time_source_get_state(ui_time_source); if (_state == time_source_state_paused) { show_message("시간이 일시 정지되었습니다."); }
- 타이머 기능
- 타이머 기능을 구현하여 특정 시간 후에 자동으로 이벤트를 발생시킬 수 있습니다.
gml if (time_source_get_state(timer_source) == time_source_state_active) { // 타이머가 활성화된 경우 // 특정 작업 수행 }
- 게임 종료 시 처리
- 게임이 종료될 때 시간 소스를 정리하는 코드입니다.
gml if (game_over) { var _state = time_source_get_state(game_time_source); if (_state == time_source_state_active) { time_source_pause(game_time_source); } }
- 일시 정지 메뉴
- 일시 정지 메뉴에서 시간 소스를 제어하는 방법입니다.
gml if (pause_menu_open) { var _state = time_source_get_state(game_time_source); if (_state == time_source_state_active) { time_source_pause(game_time_source); } }