]> git.lizzy.rs Git - minetest.git/blob - src/client/keys.h
Add keybind to swap items between hands
[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                 SWAP_OFFHAND,
46                 INVENTORY,
47                 CHAT,
48                 CMD,
49                 CMD_LOCAL,
50                 CONSOLE,
51                 MINIMAP,
52                 FREEMOVE,
53                 PITCHMOVE,
54                 FASTMOVE,
55                 NOCLIP,
56                 HOTBAR_PREV,
57                 HOTBAR_NEXT,
58                 MUTE,
59                 INC_VOLUME,
60                 DEC_VOLUME,
61                 CINEMATIC,
62                 SCREENSHOT,
63                 TOGGLE_BLOCK_BOUNDS,
64                 TOGGLE_HUD,
65                 TOGGLE_CHAT,
66                 TOGGLE_FOG,
67                 TOGGLE_UPDATE_CAMERA,
68                 TOGGLE_DEBUG,
69                 TOGGLE_PROFILER,
70                 CAMERA_MODE,
71                 INCREASE_VIEWING_RANGE,
72                 DECREASE_VIEWING_RANGE,
73                 RANGESELECT,
74                 ZOOM,
75
76                 QUICKTUNE_NEXT,
77                 QUICKTUNE_PREV,
78                 QUICKTUNE_INC,
79                 QUICKTUNE_DEC,
80
81                 // hotbar
82                 SLOT_1,
83                 SLOT_2,
84                 SLOT_3,
85                 SLOT_4,
86                 SLOT_5,
87                 SLOT_6,
88                 SLOT_7,
89                 SLOT_8,
90                 SLOT_9,
91                 SLOT_10,
92                 SLOT_11,
93                 SLOT_12,
94                 SLOT_13,
95                 SLOT_14,
96                 SLOT_15,
97                 SLOT_16,
98                 SLOT_17,
99                 SLOT_18,
100                 SLOT_19,
101                 SLOT_20,
102                 SLOT_21,
103                 SLOT_22,
104                 SLOT_23,
105                 SLOT_24,
106                 SLOT_25,
107                 SLOT_26,
108                 SLOT_27,
109                 SLOT_28,
110                 SLOT_29,
111                 SLOT_30,
112                 SLOT_31,
113                 SLOT_32,
114
115                 // Fake keycode for array size and internal checks
116                 INTERNAL_ENUM_COUNT
117
118         };
119 };
120
121 typedef KeyType::T GameKeyType;