pyasge.KEYS

pyasge.KEYS = <module 'pyasge.KEYS'>

The keys submodule is a collection of easy to use constants that describe the various codes for keys and the types of actions supported. These can be used to create key handlers that are easier to read and maintain. Key modifiers are stored in a bitfield and require bitmask operations to check if a flag is set. The examples below show how these constants can be used.

Example

>>> import pyasge
>>> def key_handler(event: pyasge.KeyEvent) -> None:
>>>   if event.key is pyasge.KEYS.KEY_ENTER:
>>>     if event.action is pyasge.KEYS.KEY_PRESSED:
>>>       print("enter key press received.")
>>>   if event.mods & pyasge.KEYS.MOD_SHIFT:
>>>     print("shift key held")

Example

>>> import pyasge
>>> def key_handler(event: pyasge.KeyEvent) -> None:
>>>   if event.key is pyasge.KEYS.KEY_W:
>>>     if event.action is pyasge.KEYS.KEY_PRESSED:
>>>       self.player.velocity.y = -1
>>>     elif event.action is pyasge.KEYS.KEY_RELEASED:
>>>       self.player.velocity.y = 0

Actions

KEYS.KEY_PRESSED = 1
KEYS.KEY_RELEASED = 0
KEYS.KEY_REPEATED = 2

Modifiers

KEYS.MOD_SHIFT = 1
KEYS.MOD_CONTROL = 2
KEYS.MOD_ALT = 4
KEYS.MOD_SUPER = 8
KEYS.MOD_CAPS_LOCK = 16
KEYS.MOD_NUM_LOCK = 32

Key Constants

KEYS.KEY_SPACE = 32
KEYS.KEY_APOSTROPHE = 39
KEYS.KEY_COMMA = 44
KEYS.KEY_MINUS = 45
KEYS.KEY_PERIOD = 46
KEYS.KEY_SLASH = 47
KEYS.KEY_SEMICOLON = 59
KEYS.KEY_EQUAL = 61
KEYS.KEY_A = 65
KEYS.KEY_B = 66
KEYS.KEY_C = 67
KEYS.KEY_D = 68
KEYS.KEY_E = 69
KEYS.KEY_F = 70
KEYS.KEY_G = 71
KEYS.KEY_H = 72
KEYS.KEY_I = 73
KEYS.KEY_J = 74
KEYS.KEY_K = 75
KEYS.KEY_L = 76
KEYS.KEY_M = 77
KEYS.KEY_N = 78
KEYS.KEY_O = 79
KEYS.KEY_P = 80
KEYS.KEY_Q = 81
KEYS.KEY_R = 82
KEYS.KEY_S = 83
KEYS.KEY_T = 84
KEYS.KEY_U = 85
KEYS.KEY_V = 86
KEYS.KEY_W = 87
KEYS.KEY_X = 88
KEYS.KEY_Y = 89
KEYS.KEY_Z = 90
KEYS.KEY_LEFT_BRACKET = 91
KEYS.KEY_BACKSLASH = 92
KEYS.KEY_RIGHT_BRACKET = 93
KEYS.KEY_GRAVE_ACCENT = 96
KEYS.KEY_WORLD_1 = 161
KEYS.KEY_WORLD_2 = 162
KEYS.KEY_ESCAPE = 256
KEYS.KEY_ENTER = 257
KEYS.KEY_TAB = 258
KEYS.KEY_BACKSPACE = 259
KEYS.KEY_DELETE = 261
KEYS.KEY_RIGHT = 262
KEYS.KEY_LEFT = 263
KEYS.KEY_DOWN = 264
KEYS.KEY_UP = 265