]> git.lizzy.rs Git - minetest.git/blob - src/client/keys.h
e120a2d927c49ba6d35849d305590aa70edfb288
[minetest.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                 AUX1,
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_BLOCK_BOUNDS,
63                 TOGGLE_HUD,
64                 TOGGLE_CHAT,
65                 TOGGLE_FOG,
66                 TOGGLE_UPDATE_CAMERA,
67                 TOGGLE_DEBUG,
68                 TOGGLE_PROFILER,
69                 CAMERA_MODE,
70                 INCREASE_VIEWING_RANGE,
71                 DECREASE_VIEWING_RANGE,
72                 RANGESELECT,
73                 ZOOM,
74
75                 QUICKTUNE_NEXT,
76                 QUICKTUNE_PREV,
77                 QUICKTUNE_INC,
78                 QUICKTUNE_DEC,
79
80                 // hotbar
81                 SLOT_1,
82                 SLOT_2,
83                 SLOT_3,
84                 SLOT_4,
85                 SLOT_5,
86                 SLOT_6,
87                 SLOT_7,
88                 SLOT_8,
89                 SLOT_9,
90                 SLOT_10,
91                 SLOT_11,
92                 SLOT_12,
93                 SLOT_13,
94                 SLOT_14,
95                 SLOT_15,
96                 SLOT_16,
97                 SLOT_17,
98                 SLOT_18,
99                 SLOT_19,
100                 SLOT_20,
101                 SLOT_21,
102                 SLOT_22,
103                 SLOT_23,
104                 SLOT_24,
105                 SLOT_25,
106                 SLOT_26,
107                 SLOT_27,
108                 SLOT_28,
109                 SLOT_29,
110                 SLOT_30,
111                 SLOT_31,
112                 SLOT_32,
113
114                 // Fake keycode for array size and internal checks
115                 INTERNAL_ENUM_COUNT
116
117         };
118 };
119
120 typedef KeyType::T GameKeyType;