Botcraft 1.21.4
Loading...
Searching...
No Matches
Enums.hpp
Go to the documentation of this file.
1#pragma once
2
3// To make gcc happy about std::ostream
4#include <iosfwd>
5
6namespace Botcraft
7{
8 enum class ChatMode
9 {
10 Enabled,
12 Hidden
13 };
14
15#if PROTOCOL_VERSION < 719 /* < 1.16 */
16 enum class Dimension
17 {
18 None = -2,
19 Nether,
20 Overworld,
21 End
22 };
23#endif
24
25 enum class Difficulty
26 {
27 None = -1,
29 Easy,
30 Normal,
31 Hard
32 };
33
34 enum class SoundSource
35 {
36 Null = -1,
37 Master = 0,
38 Music,
39 Records,
40 Weather,
41 Blocks,
42 Hostile,
43 Neutral,
44 Players,
45 Ambient,
46 Voice
47 };
48
49 enum class GameType
50 {
51 None = -1,
56 };
57
58#if PROTOCOL_VERSION < 393 /* < 1.13 */
59 enum class Enchantment
60 {
61 Protection = 0,
66 Respiration = 5,
67 AquaAffinity = 6,
68 Thorns = 7,
69 DepthStrider = 8,
70 FrostWalker = 9,
71 BindingCurse = 10,
72 Sharpness = 16,
73 Smite = 17,
75 Knockback = 19,
76 FireAspect = 20,
77 Looting = 21,
78 SweepingEdge = 22,
79 Efficiency = 32,
80 SilkTouch = 33,
81 Unbreaking = 34,
82 Fortune = 35,
83 Power = 48,
84 Punch = 49,
85 Flame = 50,
86 Infinity = 51,
87 LuckOfTheSea = 61,
88 Lure = 62,
89 Mending = 70,
90 VanishingCurse = 71,
91 };
92#else
93 enum class Enchantment
94 {
95 None = -1,
103 Thorns,
107#if PROTOCOL_VERSION > 578 /* > 1.15.2 */
108 SoulSpeed,
109#endif
110#if PROTOCOL_VERSION > 758 /* > 1.18.2 */
112#endif
113 Sharpness,
114 Smite,
116 Knockback,
118 Looting,
121 SilkTouch,
123 Fortune,
124 Power,
125 Punch,
126 Flame,
127 Infinity,
129 Lure,
130 Loyalty,
131 Impaling,
132 Riptide,
134#if PROTOCOL_VERSION > 404 /* > 1.13.2 */
135 Multishot,
137 Piercing,
138#endif
139#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
140 Density,
141 Breach,
142 WindBurst,
143#endif
144 Mending,
146 };
147#endif
148
149 enum class Hand
150 {
151 Right = 0,
152 Main = 0,
153 Left = 1,
154 Off = 1
155 };
156 std::ostream& operator<<(std::ostream& os, const Hand v);
157
158 enum class TintType: char
159 {
160 None,
161 Water,
162 Redstone,
163 Grass,
164 Leaves
165 };
166
167 enum class Orientation
168 {
169 None = -1,
170 /// @brief y = -1
171 Bottom = 0,
172 /// @brief z = -1
173 North,
174 /// @brief x = -1
175 West,
176 /// @brief x = 1
177 East,
178 /// @brief z = 1
179 South,
180 /// @brief y = 1
181 Top
182 };
183
195
196 enum class Direction
197 {
198 /// @brief -Y
199 Down = 0,
200 /// @brief +Y
201 Up,
202 /// @brief -Z
203 North,
204 /// @brief +Z
205 South,
206 /// @brief -X
207 West,
208 /// @brief +X
209 East
210 };
212 std::ostream& operator<<(std::ostream& os, const Direction v);
213
214 // Types are detailed in registries, see https://wiki.vg/Inventory
215
216 enum class InventoryType
217 {
218 PlayerInventory = -2,
219 Default = -1,
220 Generic9x1 = 0,
227#if PROTOCOL_VERSION > 764 /* > 1.20.2 */
229#endif
230 Anvil,
231 Beacon,
234 Crafting,
236 Furnace,
238 Hopper,
239 Lectern,
240 Loom,
241 Merchant,
243 Smithing,
244 Smoker,
247 };
248
249 enum class Pose
250 {
251 Standing,
253 Sleeping,
254 Swimming,
256 Crouching,
258 Dying,
259#if PROTOCOL_VERSION > 758 /* > 1.18.2 */
260 Croaking,
262 Sitting,
263 Roaring,
264 Sniffing,
265 Emerging,
266 Digging,
267#endif
268#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
269 Sliding,
270 Shooting,
271 Inhaling,
272#endif
273 };
274
275 enum class EquipmentSlot
276 {
277 MainHand = 0,
278 OffHand,
279 Boots,
280 Leggings,
282 Helmet,
283#if PROTOCOL_VERSION > 766 /* > 1.20.6 */
285#endif
286 };
287
288 enum class ToolMaterial: char
289 {
290 None = 0,
291 Wood,
292 Gold,
293 Stone,
294 Iron,
295 Diamond,
296#if PROTOCOL_VERSION > 578 /* > 1.15.2 */
297 Netherite,
298#endif
300 };
301
302 enum class ToolType: char
303 {
304 None = 0,
305 Axe,
306 Hoe,
307 Pickaxe,
308 Shears,
309 Shovel,
310 Sword,
312 };
313
315 {
316#if PROTOCOL_VERSION < 764 /* < 1.20.2 */
317 None = 0,
318#else
319 None = -1,
320#endif
321 Speed,
322 Slowness,
323 Haste,
325 Strength,
328 JumpBoost,
329 Nausea,
335 Blindness,
337 Hunger,
338 Weakness,
339 Poison,
340 Wither,
344 Glowing,
346 Luck,
347 Unluck,
348#if PROTOCOL_VERSION > 340 /* > 1.12.2 */
352#endif
353#if PROTOCOL_VERSION > 404 /* > 1.13.2 */
354 BadOmen,
356#endif
357#if PROTOCOL_VERSION > 758 /* > 1.18.2 */
358 Darkness,
359#endif
360#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
361 TrialOmen,
362 RaidOmen,
364 Weaving,
365 Oozing,
366 Infested,
367#endif
368 };
369
382} // Botcraft
InventoryType
Definition Enums.hpp:217
PlayerCommandAction
Definition Enums.hpp:371
PlayerDiggingStatus
Definition Enums.hpp:185
SoundSource
Definition Enums.hpp:35
Enchantment
Definition Enums.hpp:94
Direction PlayerDiggingFace
Definition Enums.hpp:211
EquipmentSlot
Definition Enums.hpp:276
EntityEffectType
Definition Enums.hpp:315
std::ostream & operator<<(std::ostream &os, const EntityAttribute::Type v)