Botcraft 1.21.4
Loading...
Searching...
No Matches
ClientboundLoginPacket.hpp
Go to the documentation of this file.
1#pragma once
2
5#if PROTOCOL_VERSION > 758 /* > 1.18.2 */ && PROTOCOL_VERSION < 764 /* < 1.20.2 */
7#endif
9#if PROTOCOL_VERSION > 763 /* > 1.20.1 */
11#endif
12
13namespace ProtocolCraft
14{
15 class ClientboundLoginPacket : public BaseMessage<ClientboundLoginPacket>
16 {
17 public:
18 static constexpr std::string_view packet_name = "Login";
19
20#if PROTOCOL_VERSION < 477 /* < 1.14 */
21 SERIALIZED_FIELD(PlayerId, int);
22 SERIALIZED_FIELD(GameType, unsigned char);
24 SERIALIZED_FIELD(Difficulty, unsigned char);
25 SERIALIZED_FIELD(MaxPlayers, unsigned char);
26 SERIALIZED_FIELD(LevelType, std::string);
27 SERIALIZED_FIELD(ReducedDebugInfo, bool);
28#elif PROTOCOL_VERSION < 573 /* < 1.15 */
29 SERIALIZED_FIELD(PlayerId, int);
30 SERIALIZED_FIELD(GameType, unsigned char);
32 SERIALIZED_FIELD(MaxPlayers, unsigned char);
33 SERIALIZED_FIELD(LevelType, std::string);
34 SERIALIZED_FIELD(ChunkRadius, VarInt);
35 SERIALIZED_FIELD(ReducedDebugInfo, bool);
36#elif PROTOCOL_VERSION < 735 /* < 1.16 */
37 SERIALIZED_FIELD(PlayerId, int);
38 SERIALIZED_FIELD(GameType, unsigned char);
40 SERIALIZED_FIELD(Seed, long long int);
41 SERIALIZED_FIELD(MaxPlayers, unsigned char);
42 SERIALIZED_FIELD(LevelType, std::string);
43 SERIALIZED_FIELD(ChunkRadius, VarInt);
44 SERIALIZED_FIELD(ReducedDebugInfo, bool);
45 SERIALIZED_FIELD(ShowDeathScreen, bool);
46#elif PROTOCOL_VERSION < 751 /* < 1.16.2 */
47 SERIALIZED_FIELD(PlayerId, int);
48 SERIALIZED_FIELD(GameType, unsigned char);
49 SERIALIZED_FIELD(PreviousGameType, unsigned char);
50 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
51 SERIALIZED_FIELD(RegistryHolder, NBT::UnnamedValue);
53 SERIALIZED_FIELD(Seed, long long int);
54 SERIALIZED_FIELD(MaxPlayers, unsigned char);
55 SERIALIZED_FIELD(ChunkRadius, VarInt);
56 SERIALIZED_FIELD(ReducedDebugInfo, bool);
57 SERIALIZED_FIELD(ShowDeathScreen, bool);
58 SERIALIZED_FIELD(IsDebug, bool);
59 SERIALIZED_FIELD(IsFlat, bool);
60#elif PROTOCOL_VERSION < 757 /* < 1.18 */
61 SERIALIZED_FIELD(PlayerId, int);
62 SERIALIZED_FIELD(Hardcore, bool);
63 SERIALIZED_FIELD(GameType, unsigned char);
64 SERIALIZED_FIELD(PreviousGameType, unsigned char);
65 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
66 SERIALIZED_FIELD(RegistryHolder, NBT::UnnamedValue);
67 SERIALIZED_FIELD(DimensionType, NBT::UnnamedValue);
69 SERIALIZED_FIELD(Seed, long long int);
70 SERIALIZED_FIELD(MaxPlayers, VarInt);
71 SERIALIZED_FIELD(ChunkRadius, VarInt);
72 SERIALIZED_FIELD(ReducedDebugInfo, bool);
73 SERIALIZED_FIELD(ShowDeathScreen, bool);
74 SERIALIZED_FIELD(IsDebug, bool);
75 SERIALIZED_FIELD(IsFlat, bool);
76#elif PROTOCOL_VERSION < 759 /* < 1.19 */
77 SERIALIZED_FIELD(PlayerId, int);
78 SERIALIZED_FIELD(Hardcore, bool);
79 SERIALIZED_FIELD(GameType, unsigned char);
80 SERIALIZED_FIELD(PreviousGameType, unsigned char);
81 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
82 SERIALIZED_FIELD(RegistryHolder, NBT::UnnamedValue);
83 SERIALIZED_FIELD(DimensionType, NBT::UnnamedValue);
85 SERIALIZED_FIELD(Seed, long long int);
86 SERIALIZED_FIELD(MaxPlayers, VarInt);
87 SERIALIZED_FIELD(ChunkRadius, VarInt);
88 SERIALIZED_FIELD(SimulationDistance, VarInt);
89 SERIALIZED_FIELD(ReducedDebugInfo, bool);
90 SERIALIZED_FIELD(ShowDeathScreen, bool);
91 SERIALIZED_FIELD(IsDebug, bool);
92 SERIALIZED_FIELD(IsFlat, bool);
93#elif PROTOCOL_VERSION < 763 /* < 1.20 */
94 SERIALIZED_FIELD(PlayerId, int);
95 SERIALIZED_FIELD(Hardcore, bool);
96 SERIALIZED_FIELD(GameType, unsigned char);
97 SERIALIZED_FIELD(PreviousGameType, unsigned char);
98 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
99 SERIALIZED_FIELD(RegistryHolder, NBT::UnnamedValue);
100 SERIALIZED_FIELD(DimensionType, Identifier);
102 SERIALIZED_FIELD(Seed, long long int);
103 SERIALIZED_FIELD(MaxPlayers, VarInt);
104 SERIALIZED_FIELD(ChunkRadius, VarInt);
105 SERIALIZED_FIELD(SimulationDistance, VarInt);
106 SERIALIZED_FIELD(ReducedDebugInfo, bool);
107 SERIALIZED_FIELD(ShowDeathScreen, bool);
108 SERIALIZED_FIELD(IsDebug, bool);
109 SERIALIZED_FIELD(IsFlat, bool);
110 SERIALIZED_FIELD(LastDeathLocation, std::optional<GlobalPos>);
111#elif PROTOCOL_VERSION < 764 /* < 1.20.2 */
112 SERIALIZED_FIELD(PlayerId, int);
113 SERIALIZED_FIELD(Hardcore, bool);
114 SERIALIZED_FIELD(GameType, unsigned char);
115 SERIALIZED_FIELD(PreviousGameType, unsigned char);
116 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
117 SERIALIZED_FIELD(RegistryHolder, NBT::UnnamedValue);
118 SERIALIZED_FIELD(DimensionType, Identifier);
120 SERIALIZED_FIELD(Seed, long long int);
121 SERIALIZED_FIELD(MaxPlayers, VarInt);
122 SERIALIZED_FIELD(ChunkRadius, VarInt);
123 SERIALIZED_FIELD(SimulationDistance, VarInt);
124 SERIALIZED_FIELD(ReducedDebugInfo, bool);
125 SERIALIZED_FIELD(ShowDeathScreen, bool);
126 SERIALIZED_FIELD(IsDebug, bool);
127 SERIALIZED_FIELD(IsFlat, bool);
128 SERIALIZED_FIELD(LastDeathLocation, std::optional<GlobalPos>);
129 SERIALIZED_FIELD(PortalCooldown, VarInt);
130#elif PROTOCOL_VERSION < 766 /* < 1.20.5 */
131 SERIALIZED_FIELD(PlayerId, int);
132 SERIALIZED_FIELD(Hardcore, bool);
133 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
134 SERIALIZED_FIELD(MaxPlayers, VarInt);
135 SERIALIZED_FIELD(ChunkRadius, VarInt);
136 SERIALIZED_FIELD(SimulationDistance, VarInt);
137 SERIALIZED_FIELD(ReducedDebugInfo, bool);
138 SERIALIZED_FIELD(ShowDeathScreen, bool);
139 SERIALIZED_FIELD(DoLimitedCrafting, bool);
141#else
142 SERIALIZED_FIELD(PlayerId, int);
143 SERIALIZED_FIELD(Hardcore, bool);
144 SERIALIZED_FIELD(Levels, std::vector<Identifier>);
147 SERIALIZED_FIELD(SimulationDistance, VarInt);
148 SERIALIZED_FIELD(ReducedDebugInfo, bool);
149 SERIALIZED_FIELD(ShowDeathScreen, bool);
150 SERIALIZED_FIELD(DoLimitedCrafting, bool);
152 SERIALIZED_FIELD(EnforceSecureChat, bool);
153#endif
154
156 };
157} //ProtocolCraft
#define SERIALIZED_FIELD(Name,...)
SERIALIZED_FIELD(EnforceSecureChat, bool)
SERIALIZED_FIELD(SimulationDistance, VarInt)
SERIALIZED_FIELD(ShowDeathScreen, bool)
static constexpr std::string_view packet_name
SERIALIZED_FIELD(Levels, std::vector< Identifier >)
SERIALIZED_FIELD(ReducedDebugInfo, bool)
SERIALIZED_FIELD(CommonPlayerSpawnInfo, ProtocolCraft::CommonPlayerSpawnInfo)
SERIALIZED_FIELD(DoLimitedCrafting, bool)
SERIALIZED_FIELD(ChunkRadius, VarInt)