LeviLamina
Loading...
Searching...
No Matches
LegacyClientNetworkHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/certificates/identity/PlayerAuthenticationType.h"
7#include "mc/client/network/ClientNetworkHandler.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/network/connection/DisconnectFailReason.h"
10#include "mc/world/level/LevelListener.h"
11
12// auto generated forward declare list
13// clang-format off
14class Actor;
15class AddActorPacket;
16class AddItemActorPacket;
17class AddPaintingPacket;
18class AddPlayerPacket;
19class AnimatePacket;
20class AppPlatform;
21class Block;
22class BlockActorDataPacket;
23class BlockEventPacket;
24class BlockPos;
25class ChangeDimensionPacket;
26class ClientCacheMissResponsePacket;
27class ClientNetworkSystem;
28class ContainerClosePacket;
29class ContainerOpenPacket;
30class ContainerRegistryCleanupPacket;
31class ContainerSetDataPacket;
32class CreativeContentPacket;
33class DimensionDataPacket;
34class DisconnectPacket;
35class GameRulesChangedPacket;
36class HurtArmorPacket;
37class IBlockSource;
38class IClientInstance;
40class IGameEventNotifier;
41class IGameServerStartup;
42class IMinecraftEventing;
43class IPackSourceFactory;
44class InventoryContentPacket;
45class InventorySlotPacket;
46class InventoryTransactionPacket;
47class ItemRegistryPacket;
48class LegacyMultiplayerToken;
49class LevelChunkPacket;
50class MinecraftCommands;
51class MobArmorEquipmentPacket;
52class MobEffectPacket;
53class MobEquipmentPacket;
54class MotionPredictionHintsPacket;
55class MoveActorAbsolutePacket;
56class MoveActorDeltaPacket;
57class MovePlayerPacket;
58class MovementEffectPacket;
59class NetworkIdentifier;
60class NetworkSettingsPacket;
61class NetworkStackLatencyPacket;
62class PacketSender;
63class Player;
64class PlayerHotbarPacket;
65class PlayerListPacket;
66class PlayerSkinPacket;
67class PlayerUpdateEntityOverridesPacket;
68class PrivateKeyManager;
69class RemoveActorPacket;
70class ServerStatsPacket;
71class SetActorDataPacket;
72class SetActorLinkPacket;
73class SetActorMotionPacket;
74class SetCommandsEnabledPacket;
75class SetDefaultGameTypePacket;
76class SetDifficultyPacket;
77class SetHealthPacket;
78class SetHudPacket;
79class SetSpawnPositionPacket;
80class SetTimePacket;
81class SoundPlayerInterface;
82class SpawnParticleEffectPacket;
83class StartGamePacket;
84class UpdateAbilitiesPacket;
85class UpdateAdventureSettingsPacket;
86class UpdateBlockPacket;
87class UpdateBlockSyncedPacket;
88struct ActorBlockSyncMessage;
89struct IContentManager;
91struct PersonaService;
92struct RawGameServerToken;
94namespace ClientBlobCache { struct Cache; }
95namespace cereal { struct ReflectionCtx; }
96namespace mce { class UUID; }
97// clang-format on
98
99class LegacyClientNetworkHandler : public ::ClientNetworkHandler, public ::LevelListener {
100public:
101 // member variables
102 // NOLINTBEGIN
122 // NOLINTEND
123
124public:
125 // prevent constructor by default
129
130public:
131 // virtual functions
132 // NOLINTBEGIN
133 virtual ~LegacyClientNetworkHandler() /*override*/;
134
135 virtual void onPlayerReady(::Player& player) /*override*/;
136
137 virtual void onConnect(::NetworkIdentifier const& hostId) /*override*/;
138
139 virtual void onUnableToConnect(::Connection::DisconnectFailReason, ::std::string const&) /*override*/;
140
141 virtual bool getIsConnectedToApplicationLayer() const /*override*/;
142
143 virtual void handle(::NetworkIdentifier const& source, ::AddActorPacket const& packet) /*override*/;
144
145 virtual void handle(::NetworkIdentifier const& source, ::AddItemActorPacket const& packet) /*override*/;
146
147 virtual void handle(::NetworkIdentifier const& source, ::AddPaintingPacket const& packet) /*override*/;
148
149 virtual void handle(::NetworkIdentifier const& source, ::AddPlayerPacket const& packet) /*override*/;
150
151 virtual void handle(::NetworkIdentifier const&, ::AnimatePacket const& packet) /*override*/;
152
153 virtual void
154 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet) /*override*/;
155
156 virtual void handle(::NetworkIdentifier const& source, ::BlockEventPacket const& packet) /*override*/;
157
158 virtual void handle(::NetworkIdentifier const& source, ::ChangeDimensionPacket const& packet) /*override*/;
159
160 virtual void handle(::NetworkIdentifier const& source, ::ContainerClosePacket const& packet) /*override*/;
161
162 virtual void handle(::NetworkIdentifier const& source, ::ContainerOpenPacket const& packet) /*override*/;
163
164 virtual void handle(::NetworkIdentifier const& source, ::ContainerRegistryCleanupPacket const& packet) /*override*/;
165
166 virtual void handle(::NetworkIdentifier const& source, ::ContainerSetDataPacket const& packet) /*override*/;
167
168 virtual void handle(::NetworkIdentifier const& source, ::DisconnectPacket const& packet) /*override*/;
169
170 virtual void handle(::NetworkIdentifier const& source, ::std::shared_ptr<::LevelChunkPacket> packet) /*override*/;
171
172 virtual void
173 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::ClientCacheMissResponsePacket> packet) /*override*/;
174
175 virtual void handle(::NetworkIdentifier const& source, ::GameRulesChangedPacket const& packet) /*override*/;
176
177 virtual void handle(::NetworkIdentifier const& source, ::HurtArmorPacket const& packet) /*override*/;
178
179 virtual void handle(::NetworkIdentifier const& source, ::InventoryContentPacket const& packet) /*override*/;
180
181 virtual void handle(::NetworkIdentifier const& source, ::InventorySlotPacket const& packet) /*override*/;
182
183 virtual void
184 handle(::NetworkIdentifier const&, ::std::shared_ptr<::InventoryTransactionPacket> packet) /*override*/;
185
186 virtual void handle(::NetworkIdentifier const& source, ::MobArmorEquipmentPacket const& packet) /*override*/;
187
188 virtual void handle(::NetworkIdentifier const&, ::MobEffectPacket const& packet) /*override*/;
189
190 virtual void
191 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packetPtr) /*override*/;
192
193 virtual void handle(::NetworkIdentifier const& source, ::MoveActorAbsolutePacket const& packet) /*override*/;
194
195 virtual void handle(::NetworkIdentifier const& source, ::MoveActorDeltaPacket const& packet) /*override*/;
196
197 virtual void handle(::NetworkIdentifier const&, ::MovementEffectPacket const& packet) /*override*/;
198
199 virtual void handle(::NetworkIdentifier const& source, ::MovePlayerPacket const& packet) /*override*/;
200
201 virtual void handle(::NetworkIdentifier const& source, ::NetworkSettingsPacket const& packet) /*override*/;
202
203 virtual void handle(::NetworkIdentifier const& source, ::NetworkStackLatencyPacket const& packet) /*override*/;
204
205 virtual void handle(::NetworkIdentifier const& source, ::PlayerHotbarPacket const& packet) /*override*/;
206
207 virtual void handle(::NetworkIdentifier const& source, ::PlayerListPacket const& packet) /*override*/;
208
209 virtual void handle(::NetworkIdentifier const& source, ::PlayerSkinPacket const& packet) /*override*/;
210
211 virtual void handle(::NetworkIdentifier const&, ::PlayerUpdateEntityOverridesPacket const& packet) /*override*/;
212
213 virtual void handle(::NetworkIdentifier const& source, ::RemoveActorPacket const& packet) /*override*/;
214
215 virtual void handle(::NetworkIdentifier const& source, ::SetActorDataPacket const& packet) /*override*/;
216
217 virtual void handle(::NetworkIdentifier const& source, ::SetActorLinkPacket const& packet) /*override*/;
218
219 virtual void handle(::NetworkIdentifier const&, ::SetActorMotionPacket const& packet) /*override*/;
220
221 virtual void handle(::NetworkIdentifier const& source, ::MotionPredictionHintsPacket const& packet) /*override*/;
222
223 virtual void handle(::NetworkIdentifier const& source, ::SetCommandsEnabledPacket const& packet) /*override*/;
224
225 virtual void handle(::NetworkIdentifier const& source, ::SetDefaultGameTypePacket const& packet) /*override*/;
226
227 virtual void handle(::NetworkIdentifier const& source, ::SetDifficultyPacket const& packet) /*override*/;
228
229 virtual void handle(::NetworkIdentifier const& source, ::SetHealthPacket const& packet) /*override*/;
230
231 virtual void handle(::NetworkIdentifier const& source, ::SetSpawnPositionPacket const& packet) /*override*/;
232
233 virtual void handle(::NetworkIdentifier const& source, ::SetTimePacket const& packet) /*override*/;
234
235 virtual void handle(::NetworkIdentifier const& source, ::SetHudPacket const& packet) /*override*/;
236
237 virtual void handle(::NetworkIdentifier const& source, ::SpawnParticleEffectPacket const& packet) /*override*/;
238
239 virtual void handle(::NetworkIdentifier const& source, ::StartGamePacket const& packet) /*override*/;
240
241 virtual void handle(::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockPacket> packet) /*override*/;
242
243 virtual void
244 handle(::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockSyncedPacket> packet) /*override*/;
245
246 virtual void handle(::NetworkIdentifier const& source, ::CreativeContentPacket const& packet) /*override*/;
247
248 virtual void handle(::NetworkIdentifier const&, ::ItemRegistryPacket const& packet) /*override*/;
249
250 virtual void handle(::NetworkIdentifier const& source, ::DimensionDataPacket const& packet) /*override*/;
251
252 virtual void handle(::NetworkIdentifier const& source, ::UpdateAbilitiesPacket const& packet) /*override*/;
253
254 virtual void handle(::NetworkIdentifier const& source, ::UpdateAdventureSettingsPacket const& packet) /*override*/;
255
256 virtual void handle(::NetworkIdentifier const& source, ::ServerStatsPacket const& packet) /*override*/;
257
258 virtual void onTick() /*override*/;
259
260 virtual void onEntityRemoved(::Actor& entity) /*override*/;
261
262 virtual void onLevelDestruction(::std::string const&) /*override*/;
263 // NOLINTEND
264
265public:
266 // member functions
267 // NOLINTBEGIN
269 ::std::weak_ptr<::IGameConnectionListener> gameConnectionListener,
270 ::IGameServerStartup& gameServerStartup,
271 ::IClientInstance& client,
272 ::ClientNetworkSystem& network,
273 ::PacketSender& packetSender,
274 ::PrivateKeyManager& clientKeys,
275 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
276 ::PlayerAuthenticationType authType,
277 ::LegacyMultiplayerToken&& userToken,
278 ::RawGameServerToken&& newToken,
279 ::MinecraftCommands& commands,
280 ::std::shared_ptr<::ClientBlobCache::Cache> blobCache,
281 ::cereal::ReflectionCtx& ctx,
282 ::Bedrock::NonOwnerPointer<::VideoCaptureSessionManager> videoCaptureSessionManager,
283 ::Bedrock::NotNullNonOwnerPtr<::PersonaService> const& personaService,
284 ::Bedrock::NotNullNonOwnerPtr<::AppPlatform> const& appPlatform,
285 ::Bedrock::NotNullNonOwnerPtr<::IMinecraftEventing> const& minecraftEventing,
286 int personaMemoryThreshold,
287 ::PackDownloadManager& packDownloadManager,
288 ::IPackSourceFactory& packSourceFactory,
289 ::IContentManager& contentManager,
290 ::IGameEventNotifier& gameEventNotifier
291 );
292
293 MCAPI void _drainCacheMissesQueueAndSendPacket();
294
295 MCAPI ::std::string _getServerIdentifier() const;
296
297 MCAPI void _removePlayer(::mce::UUID const& playerEntryId);
298
299 MCAPI void onSubClientConnect();
300 // NOLINTEND
301
302public:
303 // static functions
304 // NOLINTBEGIN
305 MCAPI static void handleUpdateBlock(
306 ::IBlockSource& region,
307 ::BlockPos const& pos,
308 ::Block const& block,
309 int layer,
310 int updateFlags,
311 ::ActorBlockSyncMessage const* syncMsg
312 );
313 // NOLINTEND
314
315public:
316 // constructor thunks
317 // NOLINTBEGIN
318 MCAPI void* $ctor(
319 ::std::weak_ptr<::IGameConnectionListener> gameConnectionListener,
320 ::IGameServerStartup& gameServerStartup,
321 ::IClientInstance& client,
322 ::ClientNetworkSystem& network,
323 ::PacketSender& packetSender,
324 ::PrivateKeyManager& clientKeys,
325 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> const& soundPlayer,
326 ::PlayerAuthenticationType authType,
327 ::LegacyMultiplayerToken&& userToken,
328 ::RawGameServerToken&& newToken,
329 ::MinecraftCommands& commands,
330 ::std::shared_ptr<::ClientBlobCache::Cache> blobCache,
331 ::cereal::ReflectionCtx& ctx,
332 ::Bedrock::NonOwnerPointer<::VideoCaptureSessionManager> videoCaptureSessionManager,
333 ::Bedrock::NotNullNonOwnerPtr<::PersonaService> const& personaService,
334 ::Bedrock::NotNullNonOwnerPtr<::AppPlatform> const& appPlatform,
335 ::Bedrock::NotNullNonOwnerPtr<::IMinecraftEventing> const& minecraftEventing,
336 int personaMemoryThreshold,
337 ::PackDownloadManager& packDownloadManager,
338 ::IPackSourceFactory& packSourceFactory,
339 ::IContentManager& contentManager,
340 ::IGameEventNotifier& gameEventNotifier
341 );
342 // NOLINTEND
343
344public:
345 // destructor thunk
346 // NOLINTBEGIN
347 MCAPI void $dtor();
348 // NOLINTEND
349
350public:
351 // virtual function thunks
352 // NOLINTBEGIN
353 MCAPI void $onPlayerReady(::Player& player);
354
355 MCAPI void $onConnect(::NetworkIdentifier const& hostId);
356
357 MCAPI bool $getIsConnectedToApplicationLayer() const;
358
359 MCAPI void $handle(::NetworkIdentifier const& source, ::AddActorPacket const& packet);
360
361 MCAPI void $handle(::NetworkIdentifier const& source, ::AddItemActorPacket const& packet);
362
363 MCAPI void $handle(::NetworkIdentifier const& source, ::AddPaintingPacket const& packet);
364
365 MCAPI void $handle(::NetworkIdentifier const& source, ::AddPlayerPacket const& packet);
366
367 MCAPI void $handle(::NetworkIdentifier const&, ::AnimatePacket const& packet);
368
369 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet);
370
371 MCAPI void $handle(::NetworkIdentifier const& source, ::BlockEventPacket const& packet);
372
373 MCAPI void $handle(::NetworkIdentifier const& source, ::ChangeDimensionPacket const& packet);
374
375 MCAPI void $handle(::NetworkIdentifier const& source, ::ContainerClosePacket const& packet);
376
377 MCAPI void $handle(::NetworkIdentifier const& source, ::ContainerOpenPacket const& packet);
378
379 MCAPI void $handle(::NetworkIdentifier const& source, ::ContainerRegistryCleanupPacket const& packet);
380
381 MCAPI void $handle(::NetworkIdentifier const& source, ::ContainerSetDataPacket const& packet);
382
383 MCAPI void $handle(::NetworkIdentifier const& source, ::DisconnectPacket const& packet);
384
385 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::LevelChunkPacket> packet);
386
387 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::ClientCacheMissResponsePacket> packet);
388
389 MCAPI void $handle(::NetworkIdentifier const& source, ::GameRulesChangedPacket const& packet);
390
391 MCAPI void $handle(::NetworkIdentifier const& source, ::HurtArmorPacket const& packet);
392
393 MCAPI void $handle(::NetworkIdentifier const& source, ::InventoryContentPacket const& packet);
394
395 MCAPI void $handle(::NetworkIdentifier const& source, ::InventorySlotPacket const& packet);
396
397 MCAPI void $handle(::NetworkIdentifier const&, ::std::shared_ptr<::InventoryTransactionPacket> packet);
398
399 MCAPI void $handle(::NetworkIdentifier const& source, ::MobArmorEquipmentPacket const& packet);
400
401 MCAPI void $handle(::NetworkIdentifier const&, ::MobEffectPacket const& packet);
402
403 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packetPtr);
404
405 MCAPI void $handle(::NetworkIdentifier const& source, ::MoveActorAbsolutePacket const& packet);
406
407 MCAPI void $handle(::NetworkIdentifier const& source, ::MoveActorDeltaPacket const& packet);
408
409 MCAPI void $handle(::NetworkIdentifier const&, ::MovementEffectPacket const& packet);
410
411 MCAPI void $handle(::NetworkIdentifier const& source, ::MovePlayerPacket const& packet);
412
413 MCAPI void $handle(::NetworkIdentifier const& source, ::NetworkSettingsPacket const& packet);
414
415 MCAPI void $handle(::NetworkIdentifier const& source, ::NetworkStackLatencyPacket const& packet);
416
417 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerHotbarPacket const& packet);
418
419 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerListPacket const& packet);
420
421 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerSkinPacket const& packet);
422
423 MCAPI void $handle(::NetworkIdentifier const&, ::PlayerUpdateEntityOverridesPacket const& packet);
424
425 MCAPI void $handle(::NetworkIdentifier const& source, ::RemoveActorPacket const& packet);
426
427 MCAPI void $handle(::NetworkIdentifier const& source, ::SetActorDataPacket const& packet);
428
429 MCAPI void $handle(::NetworkIdentifier const& source, ::SetActorLinkPacket const& packet);
430
431 MCAPI void $handle(::NetworkIdentifier const&, ::SetActorMotionPacket const& packet);
432
433 MCAPI void $handle(::NetworkIdentifier const& source, ::MotionPredictionHintsPacket const& packet);
434
435 MCAPI void $handle(::NetworkIdentifier const& source, ::SetCommandsEnabledPacket const& packet);
436
437 MCAPI void $handle(::NetworkIdentifier const& source, ::SetDefaultGameTypePacket const& packet);
438
439 MCAPI void $handle(::NetworkIdentifier const& source, ::SetDifficultyPacket const& packet);
440
441 MCAPI void $handle(::NetworkIdentifier const& source, ::SetHealthPacket const& packet);
442
443 MCAPI void $handle(::NetworkIdentifier const& source, ::SetSpawnPositionPacket const& packet);
444
445 MCAPI void $handle(::NetworkIdentifier const& source, ::SetTimePacket const& packet);
446
447 MCAPI void $handle(::NetworkIdentifier const& source, ::SetHudPacket const& packet);
448
449 MCAPI void $handle(::NetworkIdentifier const& source, ::SpawnParticleEffectPacket const& packet);
450
451 MCAPI void $handle(::NetworkIdentifier const& source, ::StartGamePacket const& packet);
452
453 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockPacket> packet);
454
455 MCAPI void $handle(::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockSyncedPacket> packet);
456
457 MCAPI void $handle(::NetworkIdentifier const& source, ::CreativeContentPacket const& packet);
458
459 MCAPI void $handle(::NetworkIdentifier const&, ::ItemRegistryPacket const& packet);
460
461 MCAPI void $handle(::NetworkIdentifier const& source, ::DimensionDataPacket const& packet);
462
463 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdateAbilitiesPacket const& packet);
464
465 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdateAdventureSettingsPacket const& packet);
466
467 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerStatsPacket const& packet);
468
469 MCAPI void $onTick();
470
471 MCAPI void $onEntityRemoved(::Actor& entity);
472
473 MCAPI void $onLevelDestruction(::std::string const&);
474 // NOLINTEND
475
476public:
477 // vftables
478 // NOLINTBEGIN
479 MCNAPI static void** $vftableForClientNetworkHandler();
480
481 MCNAPI static void** $vftableForLevelListener();
482 // NOLINTEND
483};
Definition ClientNetworkHandler.h:5
Definition IGameConnectionListener.h:5
Definition LegacyClientNetworkHandler.h:5
static MCAPI void ** $vftableForClientNetworkHandler()
static MCAPI void ** $vftableForLevelListener()
STL namespace.
Definition IContentManager.h:5
Definition PackDownloadManager.h:5
Definition PersonaService.h:5
Definition VideoCaptureSessionManager.h:5
Definition Alias.h:14