]> git.lizzy.rs Git - dragonfireclient.git/blob - src/client/keys.h
Joystick: Remap joystick-specific KeyTypes to generic ones
[dragonfireclient.git] / src / client / keys.h
1 /*
2 Minetest
3 Copyright (C) 2016 est31, <MTest31@outlook.com>
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU Lesser General Public License as published by
7 the Free Software Foundation; either version 2.1 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 GNU Lesser General Public License for more details.
14
15 You should have received a copy of the GNU Lesser General Public License along
16 with this program; if not, write to the Free Software Foundation, Inc.,
17 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19
20 #pragma once
21
22 #include <list>
23
24 class KeyType
25 {
26 public:
27         enum T
28         {
29                 // Player movement
30                 FORWARD,
31                 BACKWARD,
32                 LEFT,
33                 RIGHT,
34                 JUMP,
35                 SPECIAL1,
36                 SNEAK,
37                 AUTOFORWARD,
38                 DIG,
39                 PLACE,
40
41                 ESC,
42
43                 // Other
44                 DROP,
45                 INVENTORY,
46                 CHAT,
47                 CMD,
48                 CMD_LOCAL,
49                 CONSOLE,
50                 MINIMAP,
51                 FREEMOVE,
52                 PITCHMOVE,
53                 FASTMOVE,
54                 NOCLIP,
55                 HOTBAR_PREV,
56                 HOTBAR_NEXT,
57                 MUTE,
58                 INC_VOLUME,
59                 DEC_VOLUME,
60                 CINEMATIC,
61                 SCREENSHOT,
62                 TOGGLE_HUD,
63                 TOGGLE_CHAT,
64                 TOGGLE_FOG,
65                 TOGGLE_UPDATE_CAMERA,
66                 TOGGLE_DEBUG,
67                 TOGGLE_PROFILER,
68                 CAMERA_MODE,
69                 INCREASE_VIEWING_RANGE,
70                 DECREASE_VIEWING_RANGE,
71                 RANGESELECT,
72                 ZOOM,
73
74                 QUICKTUNE_NEXT,
75                 QUICKTUNE_PREV,
76                 QUICKTUNE_INC,
77                 QUICKTUNE_DEC,
78
79                 // hotbar
80                 SLOT_1,
81                 SLOT_2,
82                 SLOT_3,
83                 SLOT_4,
84                 SLOT_5,
85                 SLOT_6,
86                 SLOT_7,
87                 SLOT_8,
88                 SLOT_9,
89                 SLOT_10,
90                 SLOT_11,
91                 SLOT_12,
92                 SLOT_13,
93                 SLOT_14,
94                 SLOT_15,
95                 SLOT_16,
96                 SLOT_17,
97                 SLOT_18,
98                 SLOT_19,
99                 SLOT_20,
100                 SLOT_21,
101                 SLOT_22,
102                 SLOT_23,
103                 SLOT_24,
104                 SLOT_25,
105                 SLOT_26,
106                 SLOT_27,
107                 SLOT_28,
108                 SLOT_29,
109                 SLOT_30,
110                 SLOT_31,
111                 SLOT_32,
112
113                 // Fake keycode for array size and internal checks
114                 INTERNAL_ENUM_COUNT
115
116         };
117 };
118
119 typedef KeyType::T GameKeyType;