LeviLamina
Loading...
Searching...
No Matches
ClientNetworkHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/network/ClientNetworkPackDependencies.h"
7#include "mc/common/SubClientId.h"
8#include "mc/deps/core/math/PairHash.h"
9#include "mc/deps/core/math/TupleHash.h"
10#include "mc/deps/core/threading/MPMCQueue.h"
11#include "mc/deps/core/utility/NonOwnerPointer.h"
12#include "mc/deps/core/utility/pub_sub/Subscription.h"
13#include "mc/deps/shared_types/legacy/LevelEvent.h"
14#include "mc/network/IncomingPacketFilterResult.h"
15#include "mc/network/MinecraftPacketIds.h"
16#include "mc/network/NetEventCallback.h"
17#include "mc/network/OutgoingPacketFilterResult.h"
18#include "mc/network/PacketViolationResponse.h"
19#include "mc/network/connection/DisconnectFailReason.h"
20#include "mc/network/connection/DisconnectionStage.h"
21#include "mc/network/packet/ShowStoreOfferRedirectType.h"
22#include "mc/network/packet/SubChunkPacket.h"
23
24// auto generated forward declare list
25// clang-format off
37class BlockPos;
38class BlockSource;
39class BossEventPacket;
45class CameraPacket;
49class ChunkPos;
69class DeathInfoPacket;
71class DebugInfoPacket;
72class Dimension;
76class EmoteListPacket;
77class EmotePacket;
82class IClientInstance;
83class IContentManager;
86class ILevel;
90class LabTablePacket;
96class LocalPlayer;
105class OpenSignPacket;
107class Packet;
108class PacketSender;
110class PlaySoundPacket;
111class PlayStatusPacket;
115class PlayerFogPacket;
128class RespawnPacket;
137class SetScorePacket;
139class SetTitlePacket;
145class StopSoundPacket;
147class SubChunkPacket;
151class TaskGroup;
152class TextPacket;
156class TransferPacket;
157class TrimDataPacket;
171namespace ClientBlobCache { class Cache; }
172namespace SharedTypes::v1_21_20 { struct JigsawStructureData; }
173namespace VoxelShapes { class VoxelShapeRegistry; }
174// clang-format on
175
177public:
178 // ClientNetworkHandler inner types declare
179 // clang-format off
180 struct SubscribedHostPacks;
181 // clang-format on
182
183 // ClientNetworkHandler inner types define
184 struct SubscribedHostPacks {};
185
186 using ChunkKey = ::std::pair<::Dimension const*, ::ChunkPos>;
187
188 using ChunkCallbackKey = ::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>;
189
190public:
191 // member variables
192 // NOLINTBEGIN
193 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ClientBlobCache::Cache>> mBlobCache;
194 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::MPMCQueue<uint64>>> mCacheMisses;
195 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::MPMCQueue<uint64>>> mCacheHits;
196 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SharedTypes::v1_21_20::JigsawStructureData>> mJigsawStructureData;
197 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::VoxelShapes::VoxelShapeRegistry>> mVoxelShapeRegistry;
198 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClient;
199 ::ll::TypedStorage<8, 8, ::PacketSender&> mPacketSender;
200 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::IGameConnectionListener>> mGameConnectionListener;
201 ::ll::TypedStorage<8, 8, ::IGameServerStartup&> mGameServerStartup;
202 ::ll::TypedStorage<8, 8, ::ClientNetworkSystem&> mNetwork;
203 ::ll::TypedStorage<8, 8, ::PrivateKeyManager const&> mClientKeys;
204 ::ll::TypedStorage<8, 8, ::MinecraftCommands&> mMinecraftCommands;
205 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::ILevel>> mLevel;
206 ::ll::TypedStorage<1, 1, bool> mHasMessage;
207 ::ll::TypedStorage<1, 1, bool> mIsLoggedIn;
208 ::ll::TypedStorage<1, 1, bool> mHasHandshaked;
209 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mExistenceTracker;
210 ::ll::TypedStorage<1, 1, bool> mPacketTelemetryEnabled;
211 ::ll::TypedStorage<
212 8,
213 64,
214 ::std::unordered_map<
215 ::std::pair<::Dimension const*, ::ChunkPos>,
216 uint64,
217 ::mce::Math::PairHash,
218 ::std::equal_to<::std::pair<::Dimension const*, ::ChunkPos>>>>
219 mPendingChunks;
220 ::ll::TypedStorage<
221 8,
222 64,
223 ::std::unordered_map<
224 ::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>,
225 ::std::function<void(::BlockSource&)>,
226 ::mce::Math::TupleHash,
227 ::std::equal_to<::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>>>>
228 mConnectionPausedCallbacks;
229 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mIOTaskGroup;
230 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::VideoCaptureSessionManager>> mVideoCaptureSessionManager;
231 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::TextureShiftManager>> mTextureShiftManager;
232 ::ll::TypedStorage<8, 128, ::ClientNetworkPackDependencies> mPackDependencies;
233 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::CachedHostPackIdProvider>> mCachedHostPackIdProvider;
234 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mHostPacksReceivedSub;
235 // NOLINTEND
236
237public:
238 // prevent constructor by default
239 ClientNetworkHandler& operator=(ClientNetworkHandler const&);
240 ClientNetworkHandler(ClientNetworkHandler const&);
241 ClientNetworkHandler();
242
243public:
244 // virtual functions
245 // NOLINTBEGIN
246 virtual ~ClientNetworkHandler() /*override*/;
247
248 virtual void handle(::NetworkIdentifier const& source, ::ActorEventPacket const& packet) /*override*/;
249
250 virtual void handle(::NetworkIdentifier const&, ::AddBehaviorTreePacket const& packet) /*override*/;
251
252 virtual void handle(::NetworkIdentifier const&, ::AnimateEntityPacket const& packet) /*override*/;
253
254 virtual void handle(::NetworkIdentifier const&, ::AvailableActorIdentifiersPacket const& packet) /*override*/;
255
256 virtual void handle(::NetworkIdentifier const& source, ::AvailableCommandsPacket const& packet) /*override*/;
257
258 virtual void handle(::NetworkIdentifier const&, ::AutomationClientConnectPacket const& packet) /*override*/;
259
260 virtual void handle(::NetworkIdentifier const& source, ::BiomeDefinitionListPacket const& packet) /*override*/;
261
262 virtual void handle(::NetworkIdentifier const&, ::BossEventPacket const& packet) /*override*/;
263
264 virtual void handle(::NetworkIdentifier const&, ::CameraAimAssistPacket const& packet) /*override*/;
265
266 virtual void handle(::NetworkIdentifier const&, ::CameraAimAssistPresetsPacket const& packet) /*override*/;
267
268 virtual void handle(::NetworkIdentifier const&, ::CameraAimAssistActorPriorityPacket const& packet) /*override*/;
269
270 virtual void handle(::NetworkIdentifier const&, ::CameraInstructionPacket const& packet) /*override*/;
271
272 virtual void handle(::NetworkIdentifier const&, ::CameraPacket const& packet) /*override*/;
273
274 virtual void handle(::NetworkIdentifier const&, ::CameraPresetsPacket const& packet) /*override*/;
275
276 virtual void handle(::NetworkIdentifier const&, ::CameraShakePacket const& packet) /*override*/;
277
278 virtual void handle(::NetworkIdentifier const&, ::CameraSplinePacket const& packet) /*override*/;
279
280 virtual void handle(::NetworkIdentifier const&, ::ChunkRadiusUpdatedPacket const& packet) /*override*/;
281
282 virtual void handle(::NetworkIdentifier const&, ::ClientboundControlSchemeSetPacket const& packet) /*override*/;
283
284 virtual void handle(::NetworkIdentifier const&, ::ClientboundMapItemDataPacket const& packet) /*override*/;
285
286 virtual void handle(::NetworkIdentifier const& source, ::CommandOutputPacket const& packet) /*override*/;
287
288 virtual void handle(::NetworkIdentifier const& source, ::CommandRequestPacket const& packet) /*override*/;
289
290 virtual void handle(::NetworkIdentifier const&, ::CompletedUsingItemPacket const& packet) /*override*/;
291
292 virtual void handle(::NetworkIdentifier const&, ::CraftingDataPacket const& packet) /*override*/;
293
294 virtual void handle(::NetworkIdentifier const& source, ::EmoteListPacket const& packet) /*override*/;
295
296 virtual void handle(::NetworkIdentifier const&, ::DebugInfoPacket const& packet) /*override*/;
297
298 virtual void handle(::NetworkIdentifier const& source, ::EmotePacket const& packet) /*override*/;
299
300 virtual void handle(::NetworkIdentifier const&, ::LegacyTelemetryEventPacket const& packet) /*override*/;
301
302 virtual void handle(::NetworkIdentifier const&, ::FeatureRegistryPacket const& packet) /*override*/;
303
304 virtual void handle(::NetworkIdentifier const&, ::LessonProgressPacket const& packet) /*override*/;
305
306 virtual void handle(::NetworkIdentifier const& source, ::GuiDataPickItemPacket const& packet) /*override*/;
307
308 virtual void handle(::NetworkIdentifier const& source, ::ItemStackResponsePacket const& packet) /*override*/;
309
310 virtual void handle(::NetworkIdentifier const& source, ::LabTablePacket const& packet) /*override*/;
311
312 virtual void handle(::NetworkIdentifier const& source, ::LevelEventPacket const& packet) /*override*/;
313
314 virtual void handle(::NetworkIdentifier const& source, ::LevelEventGenericPacket const& packet) /*override*/;
315
316 virtual void handle(::NetworkIdentifier const& source, ::LevelSoundEventPacket const& packet) /*override*/;
317
318 virtual void handle(::NetworkIdentifier const&, ::ModalFormRequestPacket const& packet) /*override*/;
319
320 virtual void handle(::NetworkIdentifier const&, ::ToastRequestPacket const& packet) /*override*/;
321
322 virtual void handle(::NetworkIdentifier const&, ::OnScreenTextureAnimationPacket const& packet) /*override*/;
323
324 virtual void handle(::NetworkIdentifier const&, ::NetworkChunkPublisherUpdatePacket const& packet) /*override*/;
325
326 virtual void handle(::NetworkIdentifier const&, ::PhotoTransferPacket const& packet) /*override*/;
327
328 virtual void handle(::NetworkIdentifier const& source, ::PlayerArmorDamagePacket const& packet) /*override*/;
329
330 virtual void handle(::NetworkIdentifier const& source, ::PlayerStartItemCooldownPacket const& packet) /*override*/;
331
332 virtual void handle(::NetworkIdentifier const&, ::PlaySoundPacket const& packet) /*override*/;
333
334 virtual void handle(::NetworkIdentifier const& source, ::PlayStatusPacket const& packet) /*override*/;
335
336 virtual void handle(::NetworkIdentifier const&, ::PlayerFogPacket const& packet) /*override*/;
337
338 virtual void
339 handle(::NetworkIdentifier const& source, ::PositionTrackingDBServerBroadcastPacket const& packet) /*override*/;
340
341 virtual void handle(::NetworkIdentifier const&, ::RemoveObjectivePacket const& packet) /*override*/;
342
343 virtual void handle(::NetworkIdentifier const&, ::ResourcePackChunkDataPacket const& packet) /*override*/;
344
345 virtual void handle(::NetworkIdentifier const& source, ::ResourcePackDataInfoPacket const& packet) /*override*/;
346
347 virtual void handle(::NetworkIdentifier const& source, ::ResourcePacksInfoPacket const& packet) /*override*/;
348
349 virtual void handle(::NetworkIdentifier const& source, ::ResourcePackStackPacket const& packet) /*override*/;
350
351 virtual void handle(::NetworkIdentifier const& source, ::RespawnPacket const& packet) /*override*/;
352
353 virtual void handle(::NetworkIdentifier const&, ::ScriptMessagePacket const& packet) /*override*/;
354
355 virtual void handle(::NetworkIdentifier const&, ::ServerPlayerPostMovePositionPacket const& packet) /*override*/;
356
357 virtual void handle(::NetworkIdentifier const&, ::ServerSettingsResponsePacket const& packet) /*override*/;
358
359 virtual void handle(::NetworkIdentifier const& source, ::ServerToClientHandshakePacket const& packet) /*override*/;
360
361 virtual void handle(::NetworkIdentifier const&, ::SetDisplayObjectivePacket const& packet) /*override*/;
362
363 virtual void handle(::NetworkIdentifier const&, ::SetLastHurtByPacket const& packet) /*override*/;
364
365 virtual void handle(::NetworkIdentifier const&, ::SetPlayerGameTypePacket const& packet) /*override*/;
366
367 virtual void handle(::NetworkIdentifier const& source, ::UpdatePlayerGameTypePacket const& packet) /*override*/;
368
369 virtual void handle(::NetworkIdentifier const&, ::SetScoreboardIdentityPacket const& packet) /*override*/;
370
371 virtual void handle(::NetworkIdentifier const&, ::SetScorePacket const& packet) /*override*/;
372
373 virtual void handle(::NetworkIdentifier const&, ::SetTitlePacket const& packet) /*override*/;
374
375 virtual void handle(::NetworkIdentifier const&, ::ShowCreditsPacket const& packet) /*override*/;
376
377 virtual void handle(::NetworkIdentifier const&, ::ShowProfilePacket const& packet) /*override*/;
378
379 virtual void handle(::NetworkIdentifier const&, ::ShowStoreOfferPacket const& packet) /*override*/;
380
381 virtual void handle(::NetworkIdentifier const& source, ::SimpleEventPacket const& packet) /*override*/;
382
383 virtual void handle(::NetworkIdentifier const&, ::StopSoundPacket const& packet) /*override*/;
384
385 virtual void handle(::NetworkIdentifier const& source, ::SubChunkPacket const& packet) /*override*/;
386
387 virtual void handle(::NetworkIdentifier const&, ::TakeItemActorPacket const& packet) /*override*/;
388
389 virtual void handle(::NetworkIdentifier const& source, ::TextPacket const& packet) /*override*/;
390
391 virtual void handle(::NetworkIdentifier const&, ::TickingAreasLoadStatusPacket const& packet) /*override*/;
392
393 virtual void handle(::NetworkIdentifier const&, ::TransferPacket const& packet) /*override*/;
394
395 virtual void handle(::NetworkIdentifier const&, ::std::shared_ptr<::UpdateAttributesPacket> packet) /*override*/;
396
397 virtual void handle(::NetworkIdentifier const&, ::UpdateEquipPacket const& packet) /*override*/;
398
399 virtual void handle(::NetworkIdentifier const&, ::UpdateSoftEnumPacket const& packet) /*override*/;
400
401 virtual void handle(::NetworkIdentifier const&, ::UpdateTradePacket const& packet) /*override*/;
402
403 virtual void handle(::NetworkIdentifier const&, ::StructureTemplateDataResponsePacket const& packet) /*override*/;
404
405 virtual void handle(::NetworkIdentifier const&, ::EducationSettingsPacket const& packet) /*override*/;
406
407 virtual void handle(::NetworkIdentifier const&, ::EduUriResourcePacket const& packet) /*override*/;
408
409 virtual void handle(::NetworkIdentifier const&, ::MultiplayerSettingsPacket const& packet) /*override*/;
410
411 virtual void handle(::NetworkIdentifier const&, ::PlayerEnchantOptionsPacket const& packet) /*override*/;
412
413 virtual void handle(::NetworkIdentifier const&, ::CodeBuilderPacket const& packet) /*override*/;
414
415 virtual void handle(::NetworkIdentifier const&, ::CorrectPlayerMovePredictionPacket const& packet) /*override*/;
416
417 virtual void handle(::NetworkIdentifier const&, ::SyncActorPropertyPacket const& packet) /*override*/;
418
419 virtual void handle(::NetworkIdentifier const&, ::NpcDialoguePacket const& packet) /*override*/;
420
421 virtual void handle(::NetworkIdentifier const& source, ::ClientboundDebugRendererPacket const& packet) /*override*/;
422
423 virtual void handle(::NetworkIdentifier const&, ::AddVolumeEntityPacket const& packet) /*override*/;
424
425 virtual void handle(::NetworkIdentifier const&, ::RemoveVolumeEntityPacket const& packet) /*override*/;
426
427 virtual void handle(::NetworkIdentifier const&, ::SimulationTypePacket const& packet) /*override*/;
428
429 virtual void handle(::NetworkIdentifier const&, ::AgentActionEventPacket const& packet) /*override*/;
430
431 virtual void handle(::NetworkIdentifier const& source, ::UpdateSubChunkBlocksPacket const& packet) /*override*/;
432
433 virtual void handle(::NetworkIdentifier const&, ::DeathInfoPacket const& packet) /*override*/;
434
435 virtual void handle(::NetworkIdentifier const&, ::EditorNetworkPacket const& packet) /*override*/;
436
437 virtual void handle(::NetworkIdentifier const&, ::GameTestResultsPacket const&) /*override*/;
438
439 virtual void handle(::NetworkIdentifier const& source, ::UpdateClientInputLocksPacket const& packet) /*override*/;
440
441 virtual void handle(::NetworkIdentifier const&, ::PlayerActionPacket const& packet) /*override*/;
442
443 virtual void handle(::NetworkIdentifier const&, ::UnlockedRecipesPacket const& packet) /*override*/;
444
445 virtual void handle(::NetworkIdentifier const&, ::TrimDataPacket const& packet) /*override*/;
446
447 virtual void handle(::NetworkIdentifier const&, ::OpenSignPacket const& packet) /*override*/;
448
449 virtual void handle(::NetworkIdentifier const&, ::AgentAnimationPacket const& packet) /*override*/;
450
451 virtual void handle(::NetworkIdentifier const& source, ::RefreshEntitlementsPacket const& packet) /*override*/;
452
453 virtual void handle(::NetworkIdentifier const&, ::SetPlayerInventoryOptionsPacket const& packet) /*override*/;
454
455 virtual void handle(::NetworkIdentifier const&, ::AwardAchievementPacket const& packet) /*override*/;
456
457 virtual void handle(::NetworkIdentifier const& source, ::ClientboundCloseFormPacket const&) /*override*/;
458
459 virtual void handle(::NetworkIdentifier const&, ::JigsawStructureDataPacket const& packet) /*override*/;
460
461 virtual void handle(::NetworkIdentifier const&, ::CurrentStructureFeaturePacket const& packet) /*override*/;
462
463 virtual void handle(::NetworkIdentifier const& source, ::PlayerVideoCapturePacket const& packet) /*override*/;
464
465 virtual void handle(::NetworkIdentifier const&, ::DebugDrawerPacket const& packet) /*override*/;
466
467 virtual void handle(::NetworkIdentifier const&, ::PlayerLocationPacket const& packet) /*override*/;
468
469 virtual void handle(::NetworkIdentifier const&, ::ClientboundDataStorePacket const& packet) /*override*/;
470
471 virtual void handle(::NetworkIdentifier const&, ::GraphicsOverrideParameterPacket const& packet) /*override*/;
472
473 virtual void
474 handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUICloseScreenPacket const& packet) /*override*/;
475
476 virtual void handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUIReloadPacket const&) /*override*/;
477
478 virtual void
479 handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUIShowScreenPacket const& packet) /*override*/;
480
481 virtual void handle(::NetworkIdentifier const&, ::ClientboundTextureShiftPacket const& packet) /*override*/;
482
483 virtual void handle(::NetworkIdentifier const&, ::VoxelShapesPacket const& packet) /*override*/;
484
485 virtual void handle(::NetworkIdentifier const&, ::LocatorBarPacket const& packet) /*override*/;
486
487 virtual void handle(::NetworkIdentifier const&, ::SyncWorldClocksPacket const& packet) /*override*/;
488
489 virtual void handle(::NetworkIdentifier const&, ::ClientboundAttributeLayerSyncPacket const& packet) /*override*/;
490
491 virtual void onOutgoingPacket(
492 ::NetworkIdentifier const& netId,
493 ::MinecraftPacketIds packetId,
494 ::SubClientId,
495 ::SubClientId recipientSubId
496 ) /*override*/;
497
498 virtual void onValidPacketReceived(
499 ::NetworkIdentifier const& netId,
500 ::MinecraftPacketIds packetId,
501 ::SubClientId,
502 ::SubClientId recipientSubId
503 ) /*override*/;
504
505 virtual void
506 onStoreOfferReceive(::ShowStoreOfferRedirectType const redirectType, ::std::string const& offerID) /*override*/;
507
508 virtual void onDisconnect(
509 ::NetworkIdentifier const& source,
510 ::Connection::DisconnectFailReason const discoReason,
511 ::Connection::DisconnectionStage const disconnectStage,
512 ::std::string const& messageFromServer,
513 ::std::string const& messageBodyOverride,
514 bool skipMessage,
515 ::std::string const& telemetryOverride
516 ) /*override*/;
517
518 virtual ::IncomingPacketFilterResult allowIncomingPacketId(
519 ::NetworkIdentifierWithSubId const& id,
520 ::MinecraftPacketIds packetId,
521 uint64 packetSize
522 ) /*override*/;
523
524 virtual ::OutgoingPacketFilterResult
525 allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId> const& ids, ::Packet const& packet) /*override*/;
526
527 virtual void handlePacketViolation(
528 ::std::shared_ptr<::IPacketSecurityController> const& packetSecurityController,
529 ::std::error_code const& errorCode,
530 ::PacketViolationResponse const response,
531 ::MinecraftPacketIds const packetId,
532 ::std::string&& context,
533 ::NetworkIdentifier const& netId,
534 ::SubClientId const clientSubId,
535 ::SubClientId const senderSubId,
536 uint const packetSize
537 ) /*override*/;
538
539 virtual void sendPacketViolationWarningPacket(
540 ::std::error_code const& errorCode,
541 ::PacketViolationResponse violationResponse,
542 ::MinecraftPacketIds violatingPacketId,
543 ::std::string const& context,
544 ::NetworkIdentifier const& netId,
545 ::SubClientId clientSubId
546 ) /*override*/;
547
548 virtual void onSuccessfulLogin(::NetworkIdentifier const& id);
549 // NOLINTEND
550
551public:
552 // member functions
553 // NOLINTBEGIN
554 MCAPI explicit ClientNetworkHandler(::ClientNetworkHandlerArguments&& args);
555
556 MCAPI void _disconnectFromServer(::NetworkIdentifier const& source);
557
558 MCAPI ::ILevel* _getLevelIfValid();
559
560 MCAPI void _handleLevelEvent(::SharedTypes::Legacy::LevelEvent type, ::LevelEventPacket const& packet);
561
562 MCAPI void _handleLevelMusicEvent(::SharedTypes::Legacy::LevelEvent type, ::LevelEventGenericPacket const& packet);
563
564 MCAPI void _handleSubChunkData(
565 ::NetworkIdentifier const&,
566 ::SubChunkPacket const& packet,
567 ::SubChunkPacket::SubChunkPacketData const& subChunkData,
568 ::LocalPlayer const* localPlayer,
569 bool levelAndPlayerExists
570 );
571
572 MCAPI void
573 _handleUnlockedRecipes(::UnlockedRecipesPacket const& packet, ::UnlockedRecipesClientComponent& component);
574
575 MCAPI void _respondBlobCacheStatusForSubChunk(::SubChunkPacket::SubChunkPacketData const& subChunkData);
576
577 MCAPI void
578 onChunkHandleCompleted(::NetworkIdentifier const& source, ::ChunkPos const& cp, ::Dimension const& dimension);
579
580 MCAPI void queueHandleWorldChangePacket(
581 ::NetworkIdentifier const& source,
582 ::BlockPos const& requiredPos,
583 ::std::function<void(::BlockSource&)>&& handler
584 );
585 // NOLINTEND
586
587public:
588 // static functions
589 // NOLINTBEGIN
590 MCAPI static ::ClientNetworkHandler::SubscribedHostPacks
591 createHostPacks(::PackDownloadManager& downloadMaager, ::IContentManager& contentManager);
592 // NOLINTEND
593
594public:
595 // constructor thunks
596 // NOLINTBEGIN
597 MCAPI void* $ctor(::ClientNetworkHandlerArguments&& args);
598 // NOLINTEND
599
600public:
601 // destructor thunk
602 // NOLINTBEGIN
603 MCAPI void $dtor();
604 // NOLINTEND
605
606public:
607 // virtual function thunks
608 // NOLINTBEGIN
609 MCAPI void $handle(::NetworkIdentifier const& source, ::ActorEventPacket const& packet);
610
611 MCFOLD void $handle(::NetworkIdentifier const&, ::AddBehaviorTreePacket const& packet);
612
613 MCAPI void $handle(::NetworkIdentifier const&, ::AnimateEntityPacket const& packet);
614
615 MCAPI void $handle(::NetworkIdentifier const&, ::AvailableActorIdentifiersPacket const& packet);
616
617 MCAPI void $handle(::NetworkIdentifier const& source, ::AvailableCommandsPacket const& packet);
618
619 MCAPI void $handle(::NetworkIdentifier const&, ::AutomationClientConnectPacket const& packet);
620
621 MCAPI void $handle(::NetworkIdentifier const& source, ::BiomeDefinitionListPacket const& packet);
622
623 MCAPI void $handle(::NetworkIdentifier const&, ::BossEventPacket const& packet);
624
625 MCAPI void $handle(::NetworkIdentifier const&, ::CameraAimAssistPacket const& packet);
626
627 MCAPI void $handle(::NetworkIdentifier const&, ::CameraAimAssistPresetsPacket const& packet);
628
629 MCAPI void $handle(::NetworkIdentifier const&, ::CameraAimAssistActorPriorityPacket const& packet);
630
631 MCAPI void $handle(::NetworkIdentifier const&, ::CameraInstructionPacket const& packet);
632
633 MCAPI void $handle(::NetworkIdentifier const&, ::CameraPacket const& packet);
634
635 MCAPI void $handle(::NetworkIdentifier const&, ::CameraPresetsPacket const& packet);
636
637 MCAPI void $handle(::NetworkIdentifier const&, ::CameraShakePacket const& packet);
638
639 MCAPI void $handle(::NetworkIdentifier const&, ::CameraSplinePacket const& packet);
640
641 MCAPI void $handle(::NetworkIdentifier const&, ::ChunkRadiusUpdatedPacket const& packet);
642
643 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundControlSchemeSetPacket const& packet);
644
645 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundMapItemDataPacket const& packet);
646
647 MCAPI void $handle(::NetworkIdentifier const& source, ::CommandOutputPacket const& packet);
648
649 MCFOLD void $handle(::NetworkIdentifier const& source, ::CommandRequestPacket const& packet);
650
651 MCAPI void $handle(::NetworkIdentifier const&, ::CompletedUsingItemPacket const& packet);
652
653 MCAPI void $handle(::NetworkIdentifier const&, ::CraftingDataPacket const& packet);
654
655 MCAPI void $handle(::NetworkIdentifier const& source, ::EmoteListPacket const& packet);
656
657 MCFOLD void $handle(::NetworkIdentifier const&, ::DebugInfoPacket const& packet);
658
659 MCAPI void $handle(::NetworkIdentifier const& source, ::EmotePacket const& packet);
660
661 MCAPI void $handle(::NetworkIdentifier const&, ::LegacyTelemetryEventPacket const& packet);
662
663 MCAPI void $handle(::NetworkIdentifier const&, ::FeatureRegistryPacket const& packet);
664
665 MCAPI void $handle(::NetworkIdentifier const&, ::LessonProgressPacket const& packet);
666
667 MCAPI void $handle(::NetworkIdentifier const& source, ::GuiDataPickItemPacket const& packet);
668
669 MCAPI void $handle(::NetworkIdentifier const& source, ::ItemStackResponsePacket const& packet);
670
671 MCAPI void $handle(::NetworkIdentifier const& source, ::LabTablePacket const& packet);
672
673 MCAPI void $handle(::NetworkIdentifier const& source, ::LevelEventPacket const& packet);
674
675 MCAPI void $handle(::NetworkIdentifier const& source, ::LevelEventGenericPacket const& packet);
676
677 MCAPI void $handle(::NetworkIdentifier const& source, ::LevelSoundEventPacket const& packet);
678
679 MCAPI void $handle(::NetworkIdentifier const&, ::ModalFormRequestPacket const& packet);
680
681 MCAPI void $handle(::NetworkIdentifier const&, ::ToastRequestPacket const& packet);
682
683 MCAPI void $handle(::NetworkIdentifier const&, ::OnScreenTextureAnimationPacket const& packet);
684
685 MCAPI void $handle(::NetworkIdentifier const&, ::NetworkChunkPublisherUpdatePacket const& packet);
686
687 MCAPI void $handle(::NetworkIdentifier const&, ::PhotoTransferPacket const& packet);
688
689 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerArmorDamagePacket const& packet);
690
691 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerStartItemCooldownPacket const& packet);
692
693 MCAPI void $handle(::NetworkIdentifier const&, ::PlaySoundPacket const& packet);
694
695 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayStatusPacket const& packet);
696
697 MCAPI void $handle(::NetworkIdentifier const&, ::PlayerFogPacket const& packet);
698
699 MCAPI void $handle(::NetworkIdentifier const& source, ::PositionTrackingDBServerBroadcastPacket const& packet);
700
701 MCAPI void $handle(::NetworkIdentifier const&, ::RemoveObjectivePacket const& packet);
702
703 MCAPI void $handle(::NetworkIdentifier const&, ::ResourcePackChunkDataPacket const& packet);
704
705 MCAPI void $handle(::NetworkIdentifier const& source, ::ResourcePackDataInfoPacket const& packet);
706
707 MCAPI void $handle(::NetworkIdentifier const& source, ::ResourcePacksInfoPacket const& packet);
708
709 MCAPI void $handle(::NetworkIdentifier const& source, ::ResourcePackStackPacket const& packet);
710
711 MCAPI void $handle(::NetworkIdentifier const& source, ::RespawnPacket const& packet);
712
713 MCAPI void $handle(::NetworkIdentifier const&, ::ScriptMessagePacket const& packet);
714
715 MCAPI void $handle(::NetworkIdentifier const&, ::ServerPlayerPostMovePositionPacket const& packet);
716
717 MCAPI void $handle(::NetworkIdentifier const&, ::ServerSettingsResponsePacket const& packet);
718
719 MCAPI void $handle(::NetworkIdentifier const& source, ::ServerToClientHandshakePacket const& packet);
720
721 MCAPI void $handle(::NetworkIdentifier const&, ::SetDisplayObjectivePacket const& packet);
722
723 MCAPI void $handle(::NetworkIdentifier const&, ::SetLastHurtByPacket const& packet);
724
725 MCAPI void $handle(::NetworkIdentifier const&, ::SetPlayerGameTypePacket const& packet);
726
727 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdatePlayerGameTypePacket const& packet);
728
729 MCAPI void $handle(::NetworkIdentifier const&, ::SetScoreboardIdentityPacket const& packet);
730
731 MCAPI void $handle(::NetworkIdentifier const&, ::SetScorePacket const& packet);
732
733 MCAPI void $handle(::NetworkIdentifier const&, ::SetTitlePacket const& packet);
734
735 MCAPI void $handle(::NetworkIdentifier const&, ::ShowCreditsPacket const& packet);
736
737 MCAPI void $handle(::NetworkIdentifier const&, ::ShowProfilePacket const& packet);
738
739 MCAPI void $handle(::NetworkIdentifier const&, ::ShowStoreOfferPacket const& packet);
740
741 MCAPI void $handle(::NetworkIdentifier const& source, ::SimpleEventPacket const& packet);
742
743 MCAPI void $handle(::NetworkIdentifier const&, ::StopSoundPacket const& packet);
744
745 MCAPI void $handle(::NetworkIdentifier const& source, ::SubChunkPacket const& packet);
746
747 MCAPI void $handle(::NetworkIdentifier const&, ::TakeItemActorPacket const& packet);
748
749 MCAPI void $handle(::NetworkIdentifier const& source, ::TextPacket const& packet);
750
751 MCAPI void $handle(::NetworkIdentifier const&, ::TickingAreasLoadStatusPacket const& packet);
752
753 MCAPI void $handle(::NetworkIdentifier const&, ::TransferPacket const& packet);
754
755 MCAPI void $handle(::NetworkIdentifier const&, ::std::shared_ptr<::UpdateAttributesPacket> packet);
756
757 MCAPI void $handle(::NetworkIdentifier const&, ::UpdateEquipPacket const& packet);
758
759 MCAPI void $handle(::NetworkIdentifier const&, ::UpdateSoftEnumPacket const& packet);
760
761 MCAPI void $handle(::NetworkIdentifier const&, ::UpdateTradePacket const& packet);
762
763 MCAPI void $handle(::NetworkIdentifier const&, ::StructureTemplateDataResponsePacket const& packet);
764
765 MCAPI void $handle(::NetworkIdentifier const&, ::EducationSettingsPacket const& packet);
766
767 MCAPI void $handle(::NetworkIdentifier const&, ::EduUriResourcePacket const& packet);
768
769 MCAPI void $handle(::NetworkIdentifier const&, ::MultiplayerSettingsPacket const& packet);
770
771 MCAPI void $handle(::NetworkIdentifier const&, ::PlayerEnchantOptionsPacket const& packet);
772
773 MCAPI void $handle(::NetworkIdentifier const&, ::CodeBuilderPacket const& packet);
774
775 MCAPI void $handle(::NetworkIdentifier const&, ::CorrectPlayerMovePredictionPacket const& packet);
776
777 MCAPI void $handle(::NetworkIdentifier const&, ::SyncActorPropertyPacket const& packet);
778
779 MCAPI void $handle(::NetworkIdentifier const&, ::NpcDialoguePacket const& packet);
780
781 MCFOLD void $handle(::NetworkIdentifier const& source, ::ClientboundDebugRendererPacket const& packet);
782
783 MCAPI void $handle(::NetworkIdentifier const&, ::AddVolumeEntityPacket const& packet);
784
785 MCAPI void $handle(::NetworkIdentifier const&, ::RemoveVolumeEntityPacket const& packet);
786
787 MCAPI void $handle(::NetworkIdentifier const&, ::SimulationTypePacket const& packet);
788
789 MCAPI void $handle(::NetworkIdentifier const&, ::AgentActionEventPacket const& packet);
790
791 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdateSubChunkBlocksPacket const& packet);
792
793 MCAPI void $handle(::NetworkIdentifier const&, ::DeathInfoPacket const& packet);
794
795 MCAPI void $handle(::NetworkIdentifier const&, ::EditorNetworkPacket const& packet);
796
797 MCFOLD void $handle(::NetworkIdentifier const&, ::GameTestResultsPacket const&);
798
799 MCAPI void $handle(::NetworkIdentifier const& source, ::UpdateClientInputLocksPacket const& packet);
800
801 MCAPI void $handle(::NetworkIdentifier const&, ::PlayerActionPacket const& packet);
802
803 MCAPI void $handle(::NetworkIdentifier const&, ::UnlockedRecipesPacket const& packet);
804
805 MCAPI void $handle(::NetworkIdentifier const&, ::TrimDataPacket const& packet);
806
807 MCAPI void $handle(::NetworkIdentifier const&, ::OpenSignPacket const& packet);
808
809 MCAPI void $handle(::NetworkIdentifier const&, ::AgentAnimationPacket const& packet);
810
811 MCAPI void $handle(::NetworkIdentifier const& source, ::RefreshEntitlementsPacket const& packet);
812
813 MCAPI void $handle(::NetworkIdentifier const&, ::SetPlayerInventoryOptionsPacket const& packet);
814
815 MCAPI void $handle(::NetworkIdentifier const&, ::AwardAchievementPacket const& packet);
816
817 MCAPI void $handle(::NetworkIdentifier const& source, ::ClientboundCloseFormPacket const&);
818
819 MCAPI void $handle(::NetworkIdentifier const&, ::JigsawStructureDataPacket const& packet);
820
821 MCAPI void $handle(::NetworkIdentifier const&, ::CurrentStructureFeaturePacket const& packet);
822
823 MCAPI void $handle(::NetworkIdentifier const& source, ::PlayerVideoCapturePacket const& packet);
824
825 MCAPI void $handle(::NetworkIdentifier const&, ::DebugDrawerPacket const& packet);
826
827 MCAPI void $handle(::NetworkIdentifier const&, ::PlayerLocationPacket const& packet);
828
829 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundDataStorePacket const& packet);
830
831 MCAPI void $handle(::NetworkIdentifier const&, ::GraphicsOverrideParameterPacket const& packet);
832
833 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUICloseScreenPacket const& packet);
834
835 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUIReloadPacket const&);
836
837 MCAPI void $handle(::NetworkIdentifier const&, ::ClientboundDataDrivenUIShowScreenPacket const& packet);
838
839 MCFOLD void $handle(::NetworkIdentifier const&, ::ClientboundTextureShiftPacket const& packet);
840
841 MCAPI void $handle(::NetworkIdentifier const&, ::VoxelShapesPacket const& packet);
842
843 MCAPI void $handle(::NetworkIdentifier const&, ::LocatorBarPacket const& packet);
844
845 MCFOLD void $handle(::NetworkIdentifier const&, ::SyncWorldClocksPacket const& packet);
846
847 MCFOLD void $handle(::NetworkIdentifier const&, ::ClientboundAttributeLayerSyncPacket const& packet);
848
849 MCAPI void $onOutgoingPacket(
850 ::NetworkIdentifier const& netId,
851 ::MinecraftPacketIds packetId,
852 ::SubClientId,
853 ::SubClientId recipientSubId
854 );
855
856 MCAPI void $onValidPacketReceived(
857 ::NetworkIdentifier const& netId,
858 ::MinecraftPacketIds packetId,
859 ::SubClientId,
860 ::SubClientId recipientSubId
861 );
862
863 MCAPI void $onStoreOfferReceive(::ShowStoreOfferRedirectType const redirectType, ::std::string const& offerID);
864
865 MCAPI void $onDisconnect(
866 ::NetworkIdentifier const& source,
867 ::Connection::DisconnectFailReason const discoReason,
868 ::Connection::DisconnectionStage const disconnectStage,
869 ::std::string const& messageFromServer,
870 ::std::string const& messageBodyOverride,
871 bool skipMessage,
872 ::std::string const& telemetryOverride
873 );
874
875 MCAPI ::IncomingPacketFilterResult
876 $allowIncomingPacketId(::NetworkIdentifierWithSubId const& id, ::MinecraftPacketIds packetId, uint64 packetSize);
877
878 MCFOLD ::OutgoingPacketFilterResult
879 $allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId> const& ids, ::Packet const& packet);
880
881 MCAPI void $handlePacketViolation(
882 ::std::shared_ptr<::IPacketSecurityController> const& packetSecurityController,
883 ::std::error_code const& errorCode,
884 ::PacketViolationResponse const response,
885 ::MinecraftPacketIds const packetId,
886 ::std::string&& context,
887 ::NetworkIdentifier const& netId,
888 ::SubClientId const clientSubId,
889 ::SubClientId const senderSubId,
890 uint const packetSize
891 );
892
893 MCAPI void $sendPacketViolationWarningPacket(
894 ::std::error_code const& errorCode,
895 ::PacketViolationResponse violationResponse,
896 ::MinecraftPacketIds violatingPacketId,
897 ::std::string const& context,
898 ::NetworkIdentifier const& netId,
899 ::SubClientId clientSubId
900 );
901
902 MCAPI void $onSuccessfulLogin(::NetworkIdentifier const& id);
903 // NOLINTEND
904
905public:
906 // vftables
907 // NOLINTBEGIN
908 MCNAPI static void** $vftable();
909 // NOLINTEND
910};
Definition ActorEventPacket.h:19
Definition AddBehaviorTreePacket.h:19
Definition AddVolumeEntityPacket.h:19
Definition AgentActionEventPacket.h:19
Definition AgentAnimationPacket.h:19
Definition AnimateEntityPacket.h:19
Definition AutomationClientConnectPacket.h:19
Definition AvailableActorIdentifiersPacket.h:19
Definition AvailableCommandsPacket.h:19
Definition AwardAchievementPacket.h:19
Definition BiomeDefinitionListPacket.h:18
Definition BlockPos.h:19
Definition BlockSource.h:71
Definition BossEventPacket.h:21
Definition CachedHostPackIdProvider.h:5
Definition CameraAimAssistActorPriorityPacket.h:19
Definition CameraAimAssistPacket.h:19
Definition CameraAimAssistPresetsPacket.h:19
Definition CameraInstructionPacket.h:19
Definition CameraPacket.h:19
Definition CameraPresetsPacket.h:19
Definition CameraShakePacket.h:19
Definition CameraSplinePacket.h:19
Definition ChunkPos.h:11
Definition ChunkRadiusUpdatedPacket.h:19
Definition Cache.h:7
Definition ClientNetworkHandler.h:5
static MCAPI void ** $vftable()
Definition ClientNetworkSystem.h:40
Definition ClientboundAttributeLayerSyncPacket.h:19
Definition ClientboundCloseFormPacket.h:19
Definition ClientboundControlSchemeSetPacket.h:19
Definition ClientboundDataDrivenUICloseScreenPacket.h:20
Definition ClientboundDataDrivenUIReloadPacket.h:19
Definition ClientboundDataDrivenUIShowScreenPacket.h:20
Definition ClientboundDataStorePacket.h:19
Definition ClientboundDebugRendererPacket.h:19
Definition ClientboundMapItemDataPacket.h:25
Definition ClientboundTextureShiftPacket.h:19
Definition CodeBuilderPacket.h:19
Definition CommandOutputPacket.h:19
Definition CommandRequestPacket.h:19
Definition CompletedUsingItemPacket.h:19
Definition CorrectPlayerMovePredictionPacket.h:19
Definition CraftingDataPacket.h:21
Definition CurrentStructureFeaturePacket.h:19
Definition DeathInfoPacket.h:19
Definition DebugDrawerPacket.h:19
Definition DebugInfoPacket.h:19
Definition Dimension.h:86
Definition EditorNetworkPacket.h:19
Definition EduUriResourcePacket.h:19
Definition EducationSettingsPacket.h:19
Definition EmoteListPacket.h:19
Definition EmotePacket.h:19
Definition FeatureRegistryPacket.h:19
Definition GameTestResultsPacket.h:19
Definition GraphicsOverrideParameterPacket.h:19
Definition GuiDataPickItemPacket.h:19
Definition IClientInstance.h:5
Definition IContentManager.h:5
Definition IGameConnectionListener.h:5
Definition IGameServerStartup.h:5
Definition ILevel.h:218
Definition IPacketSecurityController.h:22
Definition ItemStackResponsePacket.h:17
Definition JigsawStructureDataPacket.h:19
Definition LabTablePacket.h:19
Definition LegacyTelemetryEventPacket.h:19
Definition LessonProgressPacket.h:19
Definition LevelEventGenericPacket.h:19
Definition LevelEventPacket.h:19
Definition LevelSoundEventPacket.h:19
Definition LocalPlayer.h:5
Definition LocatorBarPacket.h:19
Definition MinecraftCommands.h:34
Definition ModalFormRequestPacket.h:19
Definition MultiplayerSettingsPacket.h:19
Definition NetEventCallback.h:258
Definition NetworkChunkPublisherUpdatePacket.h:19
Definition NetworkIdentifier.h:10
Definition NpcDialoguePacket.h:19
Definition OnScreenTextureAnimationPacket.h:19
Definition OpenSignPacket.h:19
Definition PackDownloadManager.h:5
Definition PacketSender.h:17
Definition Packet.h:28
Definition PhotoTransferPacket.h:19
Definition PlaySoundPacket.h:19
Definition PlayStatusPacket.h:19
Definition PlayerActionPacket.h:19
Definition PlayerArmorDamagePacket.h:19
Definition PlayerEnchantOptionsPacket.h:17
Definition PlayerFogPacket.h:19
Definition PlayerLocationPacket.h:18
Definition PlayerStartItemCooldownPacket.h:19
Definition PlayerVideoCapturePacket.h:19
Definition PositionTrackingDBServerBroadcastPacket.h:20
Definition PrivateKeyManager.h:9
Definition RefreshEntitlementsPacket.h:19
Definition RemoveObjectivePacket.h:19
Definition RemoveVolumeEntityPacket.h:19
Definition ResourcePackChunkDataPacket.h:19
Definition ResourcePackDataInfoPacket.h:19
Definition ResourcePackStackPacket.h:20
Definition ResourcePacksInfoPacket.h:19
Definition RespawnPacket.h:19
Definition ScriptMessagePacket.h:19
Definition ServerPlayerPostMovePositionPacket.h:19
Definition ServerSettingsResponsePacket.h:19
Definition ServerToClientHandshakePacket.h:19
Definition SetDisplayObjectivePacket.h:19
Definition SetLastHurtByPacket.h:19
Definition SetPlayerGameTypePacket.h:19
Definition SetPlayerInventoryOptionsPacket.h:19
Definition SetScorePacket.h:20
Definition SetScoreboardIdentityPacket.h:18
Definition SetTitlePacket.h:19
Definition ShowCreditsPacket.h:19
Definition ShowProfilePacket.h:19
Definition ShowStoreOfferPacket.h:19
Definition SimpleEventPacket.h:19
Definition SimulationTypePacket.h:19
Definition StopSoundPacket.h:19
Definition StructureTemplateDataResponsePacket.h:19
Definition SubChunkPacket.h:19
Definition SyncActorPropertyPacket.h:19
Definition SyncWorldClocksPacket.h:19
Definition TakeItemActorPacket.h:19
Definition TaskGroup.h:57
Definition TextPacket.h:19
Definition TextureShiftManager.h:5
Definition TickingAreasLoadStatusPacket.h:19
Definition ToastRequestPacket.h:19
Definition TransferPacket.h:19
Definition TrimDataPacket.h:20
Definition UnlockedRecipesClientComponent.h:11
Definition UnlockedRecipesPacket.h:19
Definition UpdateAttributesPacket.h:21
Definition UpdateClientInputLocksPacket.h:19
Definition UpdateEquipPacket.h:19
Definition UpdatePlayerGameTypePacket.h:19
Definition UpdateSoftEnumPacket.h:19
Definition UpdateSubChunkBlocksPacket.h:19
Definition UpdateTradePacket.h:19
Definition VideoCaptureSessionManager.h:5
Definition VoxelShapesPacket.h:19
Definition VoxelShapeRegistry.h:14
Definition ClientNetworkHandlerArguments.h:5
Definition ClientNetworkHandler.h:13
Definition NetworkIdentifierWithSubId.h:10
Definition JigsawStructureData.h:16