키보드 체크 함수 설명 및 활용 예제

함수 설명

keyboard_check_direct 함수는 특정 키코드에 해당하는 키가 눌렸는지를 하드웨어를 직접 확인하여 true 또는 false를 반환합니다. 이 함수는 ord 함수에서 반환된 키코드 값(대문자 A-Z 또는 숫자 0-9)이나 메인 키보드 입력 페이지에 나열된 vk_* 상수 중 하나를 인자로 받습니다.

이 함수는 표준 Windows 타겟에서만 사용할 수 있으며, 결과는 어떤 애플리케이션이 포커스를 받고 있는지와는 무관합니다. 다른 플랫폼에서는 keyboard_check와 동일하게 동작합니다.

문법

keyboard_check_direct(key);

인자 설명

인자 타입 설명
key Virtual Key Constant (vk_*) 눌림 상태를 확인할 키

반환값

  • Boolean: 키가 눌렸으면 true, 그렇지 않으면 false.

예제

||
|---|
    crouch = true;
}

위 코드는 왼쪽 또는 오른쪽 Alt 키가 눌렸는지를 확인하고, 눌렸다면 변수 crouchtrue로 설정합니다.

활용 예제

1. 여러 키 체크하기

if keyboard_check_direct(vk_up) {
    move_up();
}
if keyboard_check_direct(vk_down) {
    move_down();
}

위 코드는 위쪽 화살표 키가 눌리면 move_up() 함수를 호출하고, 아래쪽 화살표 키가 눌리면 move_down() 함수를 호출합니다.

2. 특정 키 조합 체크하기

if keyboard_check_direct(vk_shift) && keyboard_check_direct(vk_a) {
    perform_special_action();
}

위 코드는 Shift 키와 A 키가 동시에 눌렸을 때 perform_special_action() 함수를 호출합니다.

3. 키 상태에 따라 게임 상태 변경하기

if keyboard_check_direct(vk_space) {
    game_paused = !game_paused;
}

위 코드는 스페이스바가 눌리면 게임의 일시 정지를 토글합니다.

4. 키 입력에 따른 캐릭터 행동

if keyboard_check_direct(vk_left) {
    character_move_left();
}
if keyboard_check_direct(vk_right) {
    character_move_right();
}

위 코드는 왼쪽 화살표 키가 눌리면 캐릭터를 왼쪽으로 이동시키고, 오른쪽 화살표 키가 눌리면 오른쪽으로 이동시킵니다.

5. 키 입력으로 점프하기

if keyboard_check_direct(vk_space) && !is_jumping {
    jump();
}

위 코드는 스페이스바가 눌리고 현재 점프 중이 아닐 때 jump() 함수를 호출하여 캐릭터가 점프하도록 합니다.