engine: take keydefs header from Quake-2 source code (client/keys.h)

This commit is contained in:
Alibek Omarov 2025-01-15 23:37:20 +03:00
parent a75666a3cd
commit a5619e9960

View file

@ -1,38 +1,39 @@
/***
*
* Copyright (c) 1996-2002, Valve LLC. All rights reserved.
*
* This product contains software technology licensed from Id
* Software, Inc. ("Id Technology"). Id Technology (c) 1996 Id Software, Inc.
* All Rights Reserved.
*
* Use, distribution, and modification of this source code and/or resulting
* object code is restricted to non-commercial enhancements to products from
* Valve LLC. All other use, distribution, or modification is prohibited
* without written permission from Valve LLC.
*
****/
/*
Copyright (C) 1997-2001 Id Software, Inc.
#ifndef KEYDEFS_H
#define KEYDEFS_H
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
// taken from Quake-2 source code and modified for GoldSrc compatibility
//
// these are the key numbers that should be passed to Key_Event
// normal keys should be passed as lowercased ascii
//
#define K_TAB 9
#define K_ENTER 13
#define K_ESCAPE 27
#define K_SPACE 32
#define K_SCROLLOCK 70
// normal keys should be passed as lowercased ascii
#define K_SCROLLLOCK 70
#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
@ -78,8 +79,8 @@
//
// joystick buttons
//
#define K_JOY1 203 // LTRIGGER (L2)
#define K_JOY2 204 // RTRIGGER (R2)
#define K_JOY1 203
#define K_JOY2 204
#define K_JOY3 205
#define K_JOY4 206
@ -88,80 +89,30 @@
// the normal binding process
//
#define K_AUX1 207
#define K_A_BUTTON K_AUX1
#define K_AUX2 208
#define K_B_BUTTON K_AUX2
#define K_AUX3 209
#define K_X_BUTTON K_AUX3
#define K_AUX4 210
#define K_Y_BUTTON K_AUX4
#define K_AUX5 211
#define K_L1_BUTTON K_AUX5
#define K_AUX6 212
#define K_R1_BUTTON K_AUX6
#define K_AUX7 213
#define K_BACK_BUTTON K_AUX7
#define K_AUX8 214
#define K_MODE_BUTTON K_AUX8
#define K_AUX9 215
#define K_START_BUTTON K_AUX9
#define K_AUX10 216
#define K_LSTICK K_AUX10
#define K_AUX11 217
#define K_RSTICK K_AUX11
#define K_AUX12 218
#define K_L2_BUTTON K_AUX12
#define K_AUX13 219
#define K_R2_BUTTON K_AUX13
#define K_AUX14 220
#define K_C_BUTTON K_AUX14
#define K_AUX15 221
#define K_Z_BUTTON K_AUX15
#define K_AUX16 222
#define K_DPAD_UP K_AUX16
#define K_AUX17 223
#define K_DPAD_DOWN K_AUX17
#define K_AUX18 224
#define K_DPAD_LEFT K_AUX18
#define K_AUX19 225
#define K_DPAD_RIGHT K_AUX19
#define K_AUX20 226
#define K_MISC_BUTTON K_AUX20 // Xbox Series X share button, PS5 microphone button, Nintendo Switch Pro capture button
#define K_AUX21 227
#define K_PADDLE1_BUTTON K_AUX21 // Xbox Elite paddle P1-P4
#define K_AUX22 228
#define K_PADDLE2_BUTTON K_AUX22
#define K_AUX23 229
#define K_PADDLE3_BUTTON K_AUX23
#define K_AUX24 230
#define K_PADDLE4_BUTTON K_AUX24
#define K_AUX25 231
#define K_TOUCHPAD K_AUX25 // PS4/PS5 touchpad button
#define K_AUX26 232
#define K_AUX27 233
#define K_AUX28 234
@ -169,18 +120,45 @@
#define K_AUX30 236
#define K_AUX31 237
#define K_AUX32 238
#define K_MWHEELDOWN 239
#define K_MWHEELUP 240
#define K_PAUSE 255
//
// button names for game pads
//
#define K_A_BUTTON K_AUX1
#define K_B_BUTTON K_AUX2
#define K_X_BUTTON K_AUX3
#define K_Y_BUTTON K_AUX4
#define K_L1_BUTTON K_AUX5
#define K_R1_BUTTON K_AUX6
#define K_BACK_BUTTON K_AUX7
#define K_MODE_BUTTON K_AUX8
#define K_START_BUTTON K_AUX9
#define K_LSTICK K_AUX10
#define K_RSTICK K_AUX11
#define K_L2_BUTTON K_AUX12
#define K_R2_BUTTON K_AUX13
#define K_C_BUTTON K_AUX14
#define K_Z_BUTTON K_AUX15
#define K_DPAD_UP K_AUX16
#define K_DPAD_DOWN K_AUX17
#define K_DPAD_LEFT K_AUX18
#define K_DPAD_RIGHT K_AUX19
#define K_MISC_BUTTON K_AUX20
#define K_PADDLE1_BUTTON K_AUX21
#define K_PADDLE2_BUTTON K_AUX22
#define K_PADDLE3_BUTTON K_AUX23
#define K_PADDLE4_BUTTON K_AUX24
#define K_TOUCHPAD K_AUX25
//
// mouse buttons generate virtual keys
//
#define K_MWHEELDOWN 239
#define K_MWHEELUP 240
#define K_MOUSE1 241
#define K_MOUSE2 242
#define K_MOUSE3 243
#define K_MOUSE4 244
#define K_MOUSE5 245
#endif//KEYDEFS_H
#define K_PAUSE 255