key_shifts - Bitmask containing the current state of modifier keys. Allegro game
programming library.
#include <allegro.h>
extern volatile int key_shifts;
Bitmask containing the current state of shift/ctrl/alt, the special Windows
keys, and the accent escape characters. Wherever possible this value will be
updated asynchronously, but if keyboard_needs_poll() returns TRUE, you must
manually call poll_keyboard() to update it with the current input state. This
can contain any of the flags:
KB_SHIFT_FLAG
KB_CTRL_FLAG
KB_ALT_FLAG
KB_LWIN_FLAG
KB_RWIN_FLAG
KB_MENU_FLAG
KB_COMMAND_FLAG
KB_SCROLOCK_FLAG
KB_NUMLOCK_FLAG
KB_CAPSLOCK_FLAG
KB_INALTSEQ_FLAG
KB_ACCENT1_FLAG
KB_ACCENT2_FLAG
KB_ACCENT3_FLAG
KB_ACCENT4_FLAG
Example:
if (key[KEY_W]) {
if (key_shifts & KB_SHIFT_FLAG) {
/* User is pressing shift + W. */
} else {
/* Hmmm... lower case W then. */
}
}
install_keyboard(3), poll_keyboard(3), key(3),
excamera(3), exkeys(3)