1
0
mirror of https://github.com/alliedmodders/hl2sdk.git synced 2024-12-23 01:59:43 +08:00
hl2sdk/public/keydefs.h

173 lines
4.1 KiB
C

//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
// keydefs.h
#ifndef KEYDEFS_H
#define KEYDEFS_H
#ifdef _WIN32
#pragma once
#endif
//
// these are the key numbers that should be passed to Key_Event
//
#define K_TAB 9
#define K_ENTER 13
#define K_ESCAPE 27
#define K_SPACE 32
// normal keys should be passed as lowercased ascii
#define K_BACKSPACE 127
#define K_UPARROW 128
#define K_DOWNARROW 129
#define K_LEFTARROW 130
#define K_RIGHTARROW 131
#define K_ALT 132
#define K_CTRL 133
#define K_SHIFT 134
#define K_F1 135
#define K_F2 136
#define K_F3 137
#define K_F4 138
#define K_F5 139
#define K_F6 140
#define K_F7 141
#define K_F8 142
#define K_F9 143
#define K_F10 144
#define K_F11 145
#define K_F12 146
#define K_INS 147
#define K_DEL 148
#define K_PGDN 149
#define K_PGUP 150
#define K_HOME 151
#define K_END 152
#define K_KP_HOME 160
#define K_KP_UPARROW 161
#define K_KP_PGUP 162
#define K_KP_LEFTARROW 163
#define K_KP_5 164
#define K_KP_RIGHTARROW 165
#define K_KP_END 166
#define K_KP_DOWNARROW 167
#define K_KP_PGDN 168
#define K_KP_ENTER 169
#define K_KP_INS 170
#define K_KP_DEL 171
#define K_KP_SLASH 172
#define K_KP_MINUS 173
#define K_KP_PLUS 174
#define K_CAPSLOCK 175
//
// joystick axis "buttons". Allows each direction on an analog axis
// to be treated by the engine as a button press. (ie, L/R Triggers on Xbox controller)
//
#define K_AXISX_POS 191
#define K_AXISX_NEG 192
#define K_AXISY_POS 193
#define K_AXISY_NEG 194
#define K_AXISZ_POS 195
#define K_AXISZ_NEG 196
#define K_AXISR_POS 197
#define K_AXISR_NEG 198
#define K_AXISU_POS 199
#define K_AXISU_NEG 200
#define K_AXISV_POS 201
#define K_AXISV_NEG 202
//
// joystick buttons
//
#define K_JOY1 203
#define K_JOY2 204
#define K_JOY3 205
#define K_JOY4 206
//
// aux keys are for multi-buttoned joysticks to generate so they can use
// the normal binding process
//
#define K_AUX1 207
#define K_AUX2 208
#define K_AUX3 209
#define K_AUX4 210
#define K_AUX5 211
#define K_AUX6 212
#define K_AUX7 213
#define K_AUX8 214
#define K_AUX9 215
#define K_AUX10 216
#define K_AUX11 217
#define K_AUX12 218
#define K_AUX13 219
#define K_AUX14 220
#define K_AUX15 221
#define K_AUX16 222
#define K_AUX17 223
#define K_AUX18 224
#define K_AUX19 225
#define K_AUX20 226
#define K_AUX21 227
#define K_AUX22 228
#define K_AUX23 229
#define K_AUX24 230
#define K_AUX25 231
#define K_AUX26 232
#define K_AUX27 233
#define K_AUX28 234
#define K_AUX29 235
#define K_AUX30 236
#define K_AUX31 237
#define K_AUX32 238
#define K_MWHEELDOWN 239
#define K_MWHEELUP 240
//
// mouse buttons generate virtual keys
//
#define K_MOUSE1 241
#define K_MOUSE2 242
#define K_MOUSE3 243
#define K_MOUSE4 244
#define K_MOUSE5 245
#define K_PAUSE 255
// Xbox engine keys - use the same values defined for similar device on the PC
#define K_XBUTTON_A K_JOY1
#define K_XBUTTON_B K_JOY2
#define K_XBUTTON_X K_JOY3
#define K_XBUTTON_Y K_JOY4
#define K_XBUTTON_BLACK K_AUX5 // Xbox
#define K_XBUTTON_WHITE K_AUX6 // Xbox
#define K_XBUTTON_LBUTTON K_AUX5 // Xbox 360
#define K_XBUTTON_RBUTTON K_AUX6 // Xbox 360
#define K_XBUTTON_START K_AUX7
#define K_XBUTTON_BACK K_AUX8
#define K_XBUTTON_STICK1 K_AUX9
#define K_XBUTTON_STICK2 K_AUX10
#define K_XBUTTON_UP K_AUX29
#define K_XBUTTON_RIGHT K_AUX30
#define K_XBUTTON_DOWN K_AUX31
#define K_XBUTTON_LEFT K_AUX32
#define K_XSTICK1_RIGHT K_AXISX_POS
#define K_XSTICK1_LEFT K_AXISX_NEG
#define K_XSTICK1_UP K_AXISY_POS
#define K_XSTICK1_DOWN K_AXISY_NEG
#define K_XBUTTON_LTRIGGER K_AXISZ_POS
#define K_XBUTTON_RTRIGGER K_AXISZ_NEG
#define K_XSTICK2_RIGHT K_AXISR_POS
#define K_XSTICK2_LEFT K_AXISR_NEG
#define K_XSTICK2_UP K_AXISU_POS
#define K_XSTICK2_DOWN K_AXISU_NEG
#endif // KEYDEFS_H