Botcraft 1.21.11
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,
133#if PROTOCOL_VERSION > 773 /* > 1.21.10 */
134 Lunge,
135#endif
137#if PROTOCOL_VERSION > 404 /* > 1.13.2 */
138 Multishot,
140 Piercing,
141#endif
142#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
143 Density,
144 Breach,
145 WindBurst,
146#endif
147 Mending,
149 };
150#endif
151
152 enum class Hand
153 {
154 Right = 0,
155 Main = 0,
156 Left = 1,
157 Off = 1
158 };
159 std::ostream& operator<<(std::ostream& os, const Hand v);
160
161 enum class TintType: char
162 {
163 None,
164 Water,
165 Redstone,
166 Grass,
167 Leaves
168 };
169
170 enum class Orientation
171 {
172 None = -1,
173 /// @brief y = -1
174 Bottom = 0,
175 /// @brief z = -1
176 North,
177 /// @brief x = -1
178 West,
179 /// @brief x = 1
180 East,
181 /// @brief z = 1
182 South,
183 /// @brief y = 1
184 Top
185 };
186
188 {
189 StartDigging = 0,
193 DropItem,
197#if PROTOCOL_VERSION > 773 /* > 1.21.10 */
198 Stab,
199#endif
200 };
201
202 enum class Direction
203 {
204 /// @brief -Y
205 Down = 0,
206 /// @brief +Y
207 Up,
208 /// @brief -Z
209 North,
210 /// @brief +Z
211 South,
212 /// @brief -X
213 West,
214 /// @brief +X
215 East
216 };
218 std::ostream& operator<<(std::ostream& os, const Direction v);
219
220 // Types are detailed in registries, see https://wiki.vg/Inventory
221
222 enum class InventoryType
223 {
224 PlayerInventory = -2,
225 Default = -1,
226 Generic9x1 = 0,
233#if PROTOCOL_VERSION > 764 /* > 1.20.2 */
235#endif
236 Anvil,
237 Beacon,
240 Crafting,
242 Furnace,
244 Hopper,
245 Lectern,
246 Loom,
247 Merchant,
249 Smithing,
250 Smoker,
253 };
254
255 enum class Pose
256 {
257 Standing,
259 Sleeping,
260 Swimming,
262 Crouching,
264 Dying,
265#if PROTOCOL_VERSION > 758 /* > 1.18.2 */
266 Croaking,
268 Sitting,
269 Roaring,
270 Sniffing,
271 Emerging,
272 Digging,
273#endif
274#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
275 Sliding,
276 Shooting,
277 Inhaling,
278#endif
279 };
280
281 enum class EquipmentSlot
282 {
283 MainHand = 0,
284 OffHand,
285 Boots,
286 Leggings,
288 Helmet,
289#if PROTOCOL_VERSION > 766 /* > 1.20.6 */
291#endif
292#if PROTOCOL_VERSION > 769 /* > 1.21.4 */
293 Saddle,
294#endif
295 };
296
297 enum class ToolMaterial : char
298 {
299 None = 0,
300 Wood,
301 Gold,
302 Stone,
303#if PROTOCOL_VERSION > 772 /* > 1.21.8 */
304 Copper,
305#endif
306 Iron,
307 Diamond,
308#if PROTOCOL_VERSION > 578 /* > 1.15.2 */
309 Netherite,
310#endif
312 };
313
314 enum class ToolType: char
315 {
316 None = 0,
317 Axe,
318 Hoe,
319 Pickaxe,
320 Shears,
321 Shovel,
322 Sword,
324 };
325
327 {
328#if PROTOCOL_VERSION < 764 /* < 1.20.2 */
329 None = 0,
330#else
331 None = -1,
332#endif
333 Speed,
334 Slowness,
335 Haste,
337 Strength,
340 JumpBoost,
341 Nausea,
347 Blindness,
349 Hunger,
350 Weakness,
351 Poison,
352 Wither,
356 Glowing,
358 Luck,
359 Unluck,
360#if PROTOCOL_VERSION > 340 /* > 1.12.2 */
364#endif
365#if PROTOCOL_VERSION > 404 /* > 1.13.2 */
366 BadOmen,
368#endif
369#if PROTOCOL_VERSION > 758 /* > 1.18.2 */
370 Darkness,
371#endif
372#if PROTOCOL_VERSION > 765 /* > 1.20.4 */
373 TrialOmen,
374 RaidOmen,
376 Weaving,
377 Oozing,
378 Infested,
379#endif
380#if PROTOCOL_VERSION > 773 /* > 1.21.10 */
382#endif
383 };
384
386 {
387#if PROTOCOL_VERSION < 771 /* < 1.21.6 */
388 PressShiftKey,
389 ReleaseShiftKey,
390#endif
398 };
399} // Botcraft
InventoryType
Definition Enums.hpp:223
PlayerCommandAction
Definition Enums.hpp:386
PlayerDiggingStatus
Definition Enums.hpp:188
SoundSource
Definition Enums.hpp:35
Enchantment
Definition Enums.hpp:94
Direction PlayerDiggingFace
Definition Enums.hpp:217
EquipmentSlot
Definition Enums.hpp:282
EntityEffectType
Definition Enums.hpp:327
std::ostream & operator<<(std::ostream &os, const EntityAttribute::Type v)