키보드 체크 함수 설명 및 활용 예제
함수 설명
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 키가 눌렸는지를 확인하고, 눌렸다면 변수 crouch
를 true
로 설정합니다.
활용 예제
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()
함수를 호출하여 캐릭터가 점프하도록 합니다.