3#include "mc/_HeaderOutputPredefine.h"
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"
160namespace ClientBlobCache {
struct Cache; }
174 using ChunkKey = ::std::pair<::Dimension const*, ::ChunkPos>;
176 using ChunkCallbackKey = ::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>;
181 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ClientBlobCache::Cache>> mBlobCache;
182 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::MPMCQueue<uint64>>> mCacheMisses;
183 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::MPMCQueue<uint64>>> mCacheHits;
184 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SharedTypes::v1_21_20::JigsawStructureData>> mJigsawStructureData;
185 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClient;
186 ::ll::TypedStorage<8, 8, ::PacketSender&> mPacketSender;
187 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::IGameConnectionListener>> mGameConnectionListener;
188 ::ll::TypedStorage<8, 8, ::IGameServerStartup&> mGameServerStartup;
189 ::ll::TypedStorage<8, 8, ::ClientNetworkSystem&> mNetwork;
190 ::ll::TypedStorage<8, 8, ::PrivateKeyManager&> mClientKeys;
191 ::ll::TypedStorage<8, 8, ::MinecraftCommands&> mMinecraftCommands;
192 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::ILevel>> mLevel;
193 ::ll::TypedStorage<1, 1, bool> mHasMessage;
194 ::ll::TypedStorage<1, 1, bool> mIsLoggedIn;
195 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mExistenceTracker;
196 ::ll::TypedStorage<1, 1, bool> mPacketTelemetryEnabled;
200 ::std::unordered_map<
201 ::std::pair<::Dimension const*, ::ChunkPos>,
203 ::mce::Math::PairHash,
204 ::std::equal_to<::std::pair<::Dimension const*, ::ChunkPos>>>>
209 ::std::unordered_map<
210 ::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>,
211 ::std::function<void(::BlockSource&)>,
212 ::mce::Math::TupleHash,
213 ::std::equal_to<::std::tuple<::NetworkIdentifier, ::Dimension const*, ::ChunkPos>>>>
214 mConnectionPausedCallbacks;
215 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mIOTaskGroup;
216 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::VideoCaptureSessionManager>> mVideoCaptureSessionManager;
217 ::ll::TypedStorage<8, 64, ::ClientNetworkPackDependencies> mPackDependencies;
218 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::CachedHostPackIdProvider>> mCachedHostPackIdProvider;
219 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mHostPacksReceivedSub;
224 ClientNetworkHandler& operator=(ClientNetworkHandler
const&);
225 ClientNetworkHandler(ClientNetworkHandler
const&);
226 ClientNetworkHandler();
231 virtual ~ClientNetworkHandler() ;
233 virtual void handle(::NetworkIdentifier
const& source, ::ActorEventPacket
const& packet) ;
235 virtual void handle(::NetworkIdentifier
const&, ::AddBehaviorTreePacket
const& packet) ;
237 virtual void handle(::NetworkIdentifier
const&, ::AnimateEntityPacket
const& packet) ;
239 virtual void handle(::NetworkIdentifier
const&, ::AvailableActorIdentifiersPacket
const& packet) ;
241 virtual void handle(::NetworkIdentifier
const& source, ::AvailableCommandsPacket
const& packet) ;
243 virtual void handle(::NetworkIdentifier
const&, ::AutomationClientConnectPacket
const& packet) ;
245 virtual void handle(::NetworkIdentifier
const& source, ::BiomeDefinitionListPacket
const& packet) ;
247 virtual void handle(::NetworkIdentifier
const&, ::BossEventPacket
const& packet) ;
249 virtual void handle(::NetworkIdentifier
const&, ::CameraAimAssistPacket
const& packet) ;
251 virtual void handle(::NetworkIdentifier
const&, ::CameraAimAssistPresetsPacket
const& packet) ;
253 virtual void handle(::NetworkIdentifier
const&, ::CameraInstructionPacket
const& packet) ;
255 virtual void handle(::NetworkIdentifier
const&, ::CameraPacket
const& packet) ;
257 virtual void handle(::NetworkIdentifier
const&, ::CameraPresetsPacket
const& packet) ;
259 virtual void handle(::NetworkIdentifier
const&, ::CameraShakePacket
const& packet) ;
261 virtual void handle(::NetworkIdentifier
const&, ::ChunkRadiusUpdatedPacket
const& packet) ;
263 virtual void handle(::NetworkIdentifier
const&, ::ClientboundControlSchemeSetPacket
const& packet) ;
265 virtual void handle(::NetworkIdentifier
const&, ::ClientboundMapItemDataPacket
const& packet) ;
267 virtual void handle(::NetworkIdentifier
const& source, ::CommandOutputPacket
const& packet) ;
269 virtual void handle(::NetworkIdentifier
const& source, ::CommandRequestPacket
const& packet) ;
271 virtual void handle(::NetworkIdentifier
const&, ::CompletedUsingItemPacket
const& packet) ;
273 virtual void handle(::NetworkIdentifier
const&, ::CraftingDataPacket
const& packet) ;
275 virtual void handle(::NetworkIdentifier
const& source, ::EmoteListPacket
const& packet) ;
277 virtual void handle(::NetworkIdentifier
const&, ::DebugInfoPacket
const& packet) ;
279 virtual void handle(::NetworkIdentifier
const& source, ::EmotePacket
const& packet) ;
281 virtual void handle(::NetworkIdentifier
const&, ::LegacyTelemetryEventPacket
const& packet) ;
283 virtual void handle(::NetworkIdentifier
const&, ::FeatureRegistryPacket
const& packet) ;
285 virtual void handle(::NetworkIdentifier
const&, ::LessonProgressPacket
const& packet) ;
287 virtual void handle(::NetworkIdentifier
const& source, ::GuiDataPickItemPacket
const& packet) ;
289 virtual void handle(::NetworkIdentifier
const& source, ::ItemStackResponsePacket
const& packet) ;
291 virtual void handle(::NetworkIdentifier
const& source, ::LabTablePacket
const& packet) ;
293 virtual void handle(::NetworkIdentifier
const& source, ::LevelEventPacket
const& packet) ;
295 virtual void handle(::NetworkIdentifier
const& source, ::LevelEventGenericPacket
const& packet) ;
297 virtual void handle(::NetworkIdentifier
const& source, ::LevelSoundEventPacket
const& packet) ;
299 virtual void handle(::NetworkIdentifier
const&, ::ModalFormRequestPacket
const& packet) ;
301 virtual void handle(::NetworkIdentifier
const&, ::ToastRequestPacket
const& packet) ;
303 virtual void handle(::NetworkIdentifier
const&, ::OnScreenTextureAnimationPacket
const& packet) ;
305 virtual void handle(::NetworkIdentifier
const&, ::NetworkChunkPublisherUpdatePacket
const& packet) ;
307 virtual void handle(::NetworkIdentifier
const&, ::PhotoTransferPacket
const& packet) ;
309 virtual void handle(::NetworkIdentifier
const& source, ::PlayerArmorDamagePacket
const& packet) ;
311 virtual void handle(::NetworkIdentifier
const& source, ::PlayerStartItemCooldownPacket
const& packet) ;
313 virtual void handle(::NetworkIdentifier
const&, ::PlaySoundPacket
const& packet) ;
315 virtual void handle(::NetworkIdentifier
const& source, ::PlayStatusPacket
const& packet) ;
317 virtual void handle(::NetworkIdentifier
const&, ::PlayerFogPacket
const& packet) ;
320 handle(::NetworkIdentifier
const& source, ::PositionTrackingDBServerBroadcastPacket
const& packet) ;
322 virtual void handle(::NetworkIdentifier
const&, ::RemoveObjectivePacket
const& packet) ;
324 virtual void handle(::NetworkIdentifier
const&, ::ResourcePackChunkDataPacket
const& packet) ;
326 virtual void handle(::NetworkIdentifier
const& source, ::ResourcePackDataInfoPacket
const& packet) ;
328 virtual void handle(::NetworkIdentifier
const& source, ::ResourcePacksInfoPacket
const& packet) ;
330 virtual void handle(::NetworkIdentifier
const& source, ::ResourcePackStackPacket
const& packet) ;
332 virtual void handle(::NetworkIdentifier
const& source, ::RespawnPacket
const& packet) ;
334 virtual void handle(::NetworkIdentifier
const&, ::ScriptMessagePacket
const& packet) ;
336 virtual void handle(::NetworkIdentifier
const&, ::ServerPlayerPostMovePositionPacket
const& packet) ;
338 virtual void handle(::NetworkIdentifier
const&, ::ServerSettingsResponsePacket
const& packet) ;
340 virtual void handle(::NetworkIdentifier
const& source, ::ServerToClientHandshakePacket
const& packet) ;
342 virtual void handle(::NetworkIdentifier
const&, ::SetDisplayObjectivePacket
const& packet) ;
344 virtual void handle(::NetworkIdentifier
const&, ::SetLastHurtByPacket
const& packet) ;
346 virtual void handle(::NetworkIdentifier
const&, ::SetPlayerGameTypePacket
const& packet) ;
348 virtual void handle(::NetworkIdentifier
const& source, ::UpdatePlayerGameTypePacket
const& packet) ;
350 virtual void handle(::NetworkIdentifier
const&, ::SetScoreboardIdentityPacket
const& packet) ;
352 virtual void handle(::NetworkIdentifier
const&, ::SetScorePacket
const& packet) ;
354 virtual void handle(::NetworkIdentifier
const&, ::SetTitlePacket
const& packet) ;
356 virtual void handle(::NetworkIdentifier
const&, ::ShowCreditsPacket
const& packet) ;
358 virtual void handle(::NetworkIdentifier
const&, ::ShowProfilePacket
const& packet) ;
360 virtual void handle(::NetworkIdentifier
const&, ::ShowStoreOfferPacket
const& packet) ;
362 virtual void handle(::NetworkIdentifier
const& source, ::SimpleEventPacket
const& packet) ;
364 virtual void handle(::NetworkIdentifier
const&, ::StopSoundPacket
const& packet) ;
366 virtual void handle(::NetworkIdentifier
const& source, ::SubChunkPacket
const& packet) ;
368 virtual void handle(::NetworkIdentifier
const&, ::TakeItemActorPacket
const& packet) ;
370 virtual void handle(::NetworkIdentifier
const& source, ::TextPacket
const& packet) ;
372 virtual void handle(::NetworkIdentifier
const&, ::TickingAreasLoadStatusPacket
const& packet) ;
374 virtual void handle(::NetworkIdentifier
const&, ::TransferPacket
const& packet) ;
376 virtual void handle(::NetworkIdentifier
const&, ::std::shared_ptr<::UpdateAttributesPacket> packet) ;
378 virtual void handle(::NetworkIdentifier
const&, ::UpdateEquipPacket
const& packet) ;
380 virtual void handle(::NetworkIdentifier
const&, ::UpdateSoftEnumPacket
const& packet) ;
382 virtual void handle(::NetworkIdentifier
const&, ::UpdateTradePacket
const& packet) ;
384 virtual void handle(::NetworkIdentifier
const&, ::StructureTemplateDataResponsePacket
const& packet) ;
386 virtual void handle(::NetworkIdentifier
const&, ::EducationSettingsPacket
const& packet) ;
388 virtual void handle(::NetworkIdentifier
const&, ::EduUriResourcePacket
const& packet) ;
390 virtual void handle(::NetworkIdentifier
const&, ::MultiplayerSettingsPacket
const& packet) ;
392 virtual void handle(::NetworkIdentifier
const&, ::PlayerEnchantOptionsPacket
const& packet) ;
394 virtual void handle(::NetworkIdentifier
const&, ::CodeBuilderPacket
const& packet) ;
396 virtual void handle(::NetworkIdentifier
const&, ::CorrectPlayerMovePredictionPacket
const& packet) ;
398 virtual void handle(::NetworkIdentifier
const&, ::SyncActorPropertyPacket
const& packet) ;
400 virtual void handle(::NetworkIdentifier
const&, ::NpcDialoguePacket
const& packet) ;
402 virtual void handle(::NetworkIdentifier
const& source, ::ClientboundDebugRendererPacket
const& packet) ;
404 virtual void handle(::NetworkIdentifier
const&, ::AddVolumeEntityPacket
const& packet) ;
406 virtual void handle(::NetworkIdentifier
const&, ::RemoveVolumeEntityPacket
const& packet) ;
408 virtual void handle(::NetworkIdentifier
const&, ::SimulationTypePacket
const& packet) ;
410 virtual void handle(::NetworkIdentifier
const&, ::AgentActionEventPacket
const& packet) ;
412 virtual void handle(::NetworkIdentifier
const& source, ::UpdateSubChunkBlocksPacket
const& packet) ;
414 virtual void handle(::NetworkIdentifier
const&, ::DeathInfoPacket
const& packet) ;
416 virtual void handle(::NetworkIdentifier
const&, ::EditorNetworkPacket
const& packet) ;
418 virtual void handle(::NetworkIdentifier
const&, ::GameTestResultsPacket
const&) ;
420 virtual void handle(::NetworkIdentifier
const& source, ::UpdateClientInputLocksPacket
const& packet) ;
422 virtual void handle(::NetworkIdentifier
const&, ::PlayerActionPacket
const& packet) ;
424 virtual void handle(::NetworkIdentifier
const&, ::UnlockedRecipesPacket
const& packet) ;
426 virtual void handle(::NetworkIdentifier
const&, ::TrimDataPacket
const& packet) ;
428 virtual void handle(::NetworkIdentifier
const&, ::OpenSignPacket
const& packet) ;
430 virtual void handle(::NetworkIdentifier
const&, ::AgentAnimationPacket
const& packet) ;
432 virtual void handle(::NetworkIdentifier
const& source, ::RefreshEntitlementsPacket
const& packet) ;
434 virtual void handle(::NetworkIdentifier
const&, ::SetPlayerInventoryOptionsPacket
const& packet) ;
436 virtual void handle(::NetworkIdentifier
const&, ::AwardAchievementPacket
const& packet) ;
438 virtual void handle(::NetworkIdentifier
const& source, ::ClientboundCloseFormPacket
const&) ;
440 virtual void handle(::NetworkIdentifier
const&, ::JigsawStructureDataPacket
const& packet) ;
442 virtual void handle(::NetworkIdentifier
const&, ::CurrentStructureFeaturePacket
const& packet) ;
444 virtual void handle(::NetworkIdentifier
const& source, ::PlayerVideoCapturePacket
const& packet) ;
446 virtual void handle(::NetworkIdentifier
const&, ::DebugDrawerPacket
const& packet) ;
448 virtual void handle(::NetworkIdentifier
const&, ::PlayerLocationPacket
const& packet) ;
450 virtual void handle(::NetworkIdentifier
const&, ::ClientboundDataStorePacket
const& packet) ;
452 virtual void handle(::NetworkIdentifier
const&, ::GraphicsOverrideParameterPacket
const& packet) ;
454 virtual void onOutgoingPacket(
455 ::NetworkIdentifier
const& netId,
456 ::MinecraftPacketIds packetId,
458 ::SubClientId recipientSubId
461 virtual void onValidPacketReceived(
462 ::NetworkIdentifier
const& netId,
463 ::MinecraftPacketIds packetId,
465 ::SubClientId recipientSubId
469 onStoreOfferReceive(::ShowStoreOfferRedirectType
const redirectType, ::std::string
const& offerID) ;
471 virtual void onDisconnect(
472 ::NetworkIdentifier
const& source,
473 ::Connection::DisconnectFailReason
const discoReason,
474 ::Connection::DisconnectionStage
const disconnectStage,
475 ::std::string
const& message,
477 ::std::string
const& telemetryOverride
480 virtual ::IncomingPacketFilterResult allowIncomingPacketId(
481 ::NetworkIdentifierWithSubId
const&
id,
482 ::MinecraftPacketIds packetId,
486 virtual ::OutgoingPacketFilterResult
487 allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId>
const& ids, ::Packet
const& packet) ;
489 virtual void handlePacketViolation(
490 ::std::shared_ptr<::IPacketSecurityController>
const& packetSecurityController,
491 ::std::error_code
const& errorCode,
492 ::PacketViolationResponse
const response,
493 ::MinecraftPacketIds
const packetId,
494 ::std::string&& context,
495 ::NetworkIdentifier
const& netId,
496 ::SubClientId
const clientSubId,
497 ::SubClientId
const senderSubId,
498 uint
const packetSize
501 virtual void sendPacketViolationWarningPacket(
502 ::std::error_code
const& errorCode,
503 ::PacketViolationResponse violationResponse,
504 ::MinecraftPacketIds violatingPacketId,
505 ::std::string
const& context,
506 ::NetworkIdentifier
const& netId,
507 ::SubClientId clientSubId
510 virtual void onSuccessfulLogin(::NetworkIdentifier
const&
id);
516 MCAPI
explicit ClientNetworkHandler(::ClientNetworkHandlerArguments&& args);
518 MCAPI
void _disconnectFromServer(::NetworkIdentifier
const& source);
520 MCAPI ::ILevel* _getLevelIfValid();
522 MCAPI
void _handleLevelEvent(::SharedTypes::Legacy::LevelEvent type, ::LevelEventPacket
const& packet);
524 MCAPI
void _handleLevelMusicEvent(::SharedTypes::Legacy::LevelEvent type, ::LevelEventGenericPacket
const& packet);
526 MCAPI
void _handleSubChunkData(
527 ::NetworkIdentifier
const&,
528 ::SubChunkPacket
const& packet,
529 ::SubChunkPacket::SubChunkPacketData
const& subChunkData,
530 ::LocalPlayer
const* localPlayer,
531 bool levelAndPlayerExists
535 _handleUnlockedRecipes(::UnlockedRecipesPacket
const& packet, ::UnlockedRecipesClientComponent& component);
537 MCAPI
void _respondBlobCacheStatusForSubChunk(::SubChunkPacket::SubChunkPacketData
const& subChunkData);
540 onChunkHandleCompleted(::NetworkIdentifier
const& source, ::ChunkPos
const& cp, ::Dimension
const& dimension);
542 MCAPI
void queueHandleWorldChangePacket(
543 ::NetworkIdentifier
const& source,
544 ::BlockPos
const& requiredPos,
545 ::std::function<
void(::BlockSource&)>&& handler
552 MCAPI static ::ClientNetworkHandler::SubscribedHostPacks
553 createHostPacks(::PackDownloadManager& downloadMaager, ::IContentManager& contentManager);
559 MCAPI
void* $ctor(::ClientNetworkHandlerArguments&& args);
571 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ActorEventPacket
const& packet);
573 MCFOLD
void $handle(::NetworkIdentifier
const&, ::AddBehaviorTreePacket
const& packet);
575 MCAPI
void $handle(::NetworkIdentifier
const&, ::AnimateEntityPacket
const& packet);
577 MCAPI
void $handle(::NetworkIdentifier
const&, ::AvailableActorIdentifiersPacket
const& packet);
579 MCAPI
void $handle(::NetworkIdentifier
const& source, ::AvailableCommandsPacket
const& packet);
581 MCAPI
void $handle(::NetworkIdentifier
const&, ::AutomationClientConnectPacket
const& packet);
583 MCAPI
void $handle(::NetworkIdentifier
const& source, ::BiomeDefinitionListPacket
const& packet);
585 MCAPI
void $handle(::NetworkIdentifier
const&, ::BossEventPacket
const& packet);
587 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraAimAssistPacket
const& packet);
589 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraAimAssistPresetsPacket
const& packet);
591 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraInstructionPacket
const& packet);
593 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraPacket
const& packet);
595 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraPresetsPacket
const& packet);
597 MCAPI
void $handle(::NetworkIdentifier
const&, ::CameraShakePacket
const& packet);
599 MCAPI
void $handle(::NetworkIdentifier
const&, ::ChunkRadiusUpdatedPacket
const& packet);
601 MCAPI
void $handle(::NetworkIdentifier
const&, ::ClientboundControlSchemeSetPacket
const& packet);
603 MCAPI
void $handle(::NetworkIdentifier
const&, ::ClientboundMapItemDataPacket
const& packet);
605 MCAPI
void $handle(::NetworkIdentifier
const& source, ::CommandOutputPacket
const& packet);
607 MCFOLD
void $handle(::NetworkIdentifier
const& source, ::CommandRequestPacket
const& packet);
609 MCAPI
void $handle(::NetworkIdentifier
const&, ::CompletedUsingItemPacket
const& packet);
611 MCAPI
void $handle(::NetworkIdentifier
const&, ::CraftingDataPacket
const& packet);
613 MCAPI
void $handle(::NetworkIdentifier
const& source, ::EmoteListPacket
const& packet);
615 MCFOLD
void $handle(::NetworkIdentifier
const&, ::DebugInfoPacket
const& packet);
617 MCAPI
void $handle(::NetworkIdentifier
const& source, ::EmotePacket
const& packet);
619 MCAPI
void $handle(::NetworkIdentifier
const&, ::LegacyTelemetryEventPacket
const& packet);
621 MCAPI
void $handle(::NetworkIdentifier
const&, ::FeatureRegistryPacket
const& packet);
623 MCAPI
void $handle(::NetworkIdentifier
const&, ::LessonProgressPacket
const& packet);
625 MCAPI
void $handle(::NetworkIdentifier
const& source, ::GuiDataPickItemPacket
const& packet);
627 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ItemStackResponsePacket
const& packet);
629 MCAPI
void $handle(::NetworkIdentifier
const& source, ::LabTablePacket
const& packet);
631 MCAPI
void $handle(::NetworkIdentifier
const& source, ::LevelEventPacket
const& packet);
633 MCAPI
void $handle(::NetworkIdentifier
const& source, ::LevelEventGenericPacket
const& packet);
635 MCAPI
void $handle(::NetworkIdentifier
const& source, ::LevelSoundEventPacket
const& packet);
637 MCAPI
void $handle(::NetworkIdentifier
const&, ::ModalFormRequestPacket
const& packet);
639 MCAPI
void $handle(::NetworkIdentifier
const&, ::ToastRequestPacket
const& packet);
641 MCAPI
void $handle(::NetworkIdentifier
const&, ::OnScreenTextureAnimationPacket
const& packet);
643 MCAPI
void $handle(::NetworkIdentifier
const&, ::NetworkChunkPublisherUpdatePacket
const& packet);
645 MCAPI
void $handle(::NetworkIdentifier
const&, ::PhotoTransferPacket
const& packet);
647 MCAPI
void $handle(::NetworkIdentifier
const& source, ::PlayerArmorDamagePacket
const& packet);
649 MCAPI
void $handle(::NetworkIdentifier
const& source, ::PlayerStartItemCooldownPacket
const& packet);
651 MCAPI
void $handle(::NetworkIdentifier
const&, ::PlaySoundPacket
const& packet);
653 MCAPI
void $handle(::NetworkIdentifier
const& source, ::PlayStatusPacket
const& packet);
655 MCAPI
void $handle(::NetworkIdentifier
const&, ::PlayerFogPacket
const& packet);
657 MCAPI
void $handle(::NetworkIdentifier
const& source, ::PositionTrackingDBServerBroadcastPacket
const& packet);
659 MCAPI
void $handle(::NetworkIdentifier
const&, ::RemoveObjectivePacket
const& packet);
661 MCAPI
void $handle(::NetworkIdentifier
const&, ::ResourcePackChunkDataPacket
const& packet);
663 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ResourcePackDataInfoPacket
const& packet);
665 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ResourcePacksInfoPacket
const& packet);
667 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ResourcePackStackPacket
const& packet);
669 MCAPI
void $handle(::NetworkIdentifier
const& source, ::RespawnPacket
const& packet);
671 MCAPI
void $handle(::NetworkIdentifier
const&, ::ScriptMessagePacket
const& packet);
673 MCAPI
void $handle(::NetworkIdentifier
const&, ::ServerPlayerPostMovePositionPacket
const& packet);
675 MCAPI
void $handle(::NetworkIdentifier
const&, ::ServerSettingsResponsePacket
const& packet);
677 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ServerToClientHandshakePacket
const& packet);
679 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetDisplayObjectivePacket
const& packet);
681 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetLastHurtByPacket
const& packet);
683 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetPlayerGameTypePacket
const& packet);
685 MCAPI
void $handle(::NetworkIdentifier
const& source, ::UpdatePlayerGameTypePacket
const& packet);
687 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetScoreboardIdentityPacket
const& packet);
689 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetScorePacket
const& packet);
691 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetTitlePacket
const& packet);
693 MCAPI
void $handle(::NetworkIdentifier
const&, ::ShowCreditsPacket
const& packet);
695 MCAPI
void $handle(::NetworkIdentifier
const&, ::ShowProfilePacket
const& packet);
697 MCAPI
void $handle(::NetworkIdentifier
const&, ::ShowStoreOfferPacket
const& packet);
699 MCAPI
void $handle(::NetworkIdentifier
const& source, ::SimpleEventPacket
const& packet);
701 MCAPI
void $handle(::NetworkIdentifier
const&, ::StopSoundPacket
const& packet);
703 MCAPI
void $handle(::NetworkIdentifier
const& source, ::SubChunkPacket
const& packet);
705 MCAPI
void $handle(::NetworkIdentifier
const&, ::TakeItemActorPacket
const& packet);
707 MCAPI
void $handle(::NetworkIdentifier
const& source, ::TextPacket
const& packet);
709 MCAPI
void $handle(::NetworkIdentifier
const&, ::TickingAreasLoadStatusPacket
const& packet);
711 MCAPI
void $handle(::NetworkIdentifier
const&, ::TransferPacket
const& packet);
713 MCAPI
void $handle(::NetworkIdentifier
const&, ::std::shared_ptr<::UpdateAttributesPacket> packet);
715 MCAPI
void $handle(::NetworkIdentifier
const&, ::UpdateEquipPacket
const& packet);
717 MCAPI
void $handle(::NetworkIdentifier
const&, ::UpdateSoftEnumPacket
const& packet);
719 MCAPI
void $handle(::NetworkIdentifier
const&, ::UpdateTradePacket
const& packet);
721 MCAPI
void $handle(::NetworkIdentifier
const&, ::StructureTemplateDataResponsePacket
const& packet);
723 MCAPI
void $handle(::NetworkIdentifier
const&, ::EducationSettingsPacket
const& packet);
725 MCAPI
void $handle(::NetworkIdentifier
const&, ::EduUriResourcePacket
const& packet);
727 MCAPI
void $handle(::NetworkIdentifier
const&, ::MultiplayerSettingsPacket
const& packet);
729 MCAPI
void $handle(::NetworkIdentifier
const&, ::PlayerEnchantOptionsPacket
const& packet);
731 MCAPI
void $handle(::NetworkIdentifier
const&, ::CodeBuilderPacket
const& packet);
733 MCAPI
void $handle(::NetworkIdentifier
const&, ::CorrectPlayerMovePredictionPacket
const& packet);
735 MCAPI
void $handle(::NetworkIdentifier
const&, ::SyncActorPropertyPacket
const& packet);
737 MCAPI
void $handle(::NetworkIdentifier
const&, ::NpcDialoguePacket
const& packet);
739 MCFOLD
void $handle(::NetworkIdentifier
const& source, ::ClientboundDebugRendererPacket
const& packet);
741 MCAPI
void $handle(::NetworkIdentifier
const&, ::AddVolumeEntityPacket
const& packet);
743 MCAPI
void $handle(::NetworkIdentifier
const&, ::RemoveVolumeEntityPacket
const& packet);
745 MCAPI
void $handle(::NetworkIdentifier
const&, ::SimulationTypePacket
const& packet);
747 MCAPI
void $handle(::NetworkIdentifier
const&, ::AgentActionEventPacket
const& packet);
749 MCAPI
void $handle(::NetworkIdentifier
const& source, ::UpdateSubChunkBlocksPacket
const& packet);
751 MCAPI
void $handle(::NetworkIdentifier
const&, ::DeathInfoPacket
const& packet);
753 MCAPI
void $handle(::NetworkIdentifier
const&, ::EditorNetworkPacket
const& packet);
755 MCFOLD
void $handle(::NetworkIdentifier
const&, ::GameTestResultsPacket
const&);
757 MCAPI
void $handle(::NetworkIdentifier
const& source, ::UpdateClientInputLocksPacket
const& packet);
759 MCAPI
void $handle(::NetworkIdentifier
const&, ::PlayerActionPacket
const& packet);
761 MCAPI
void $handle(::NetworkIdentifier
const&, ::UnlockedRecipesPacket
const& packet);
763 MCAPI
void $handle(::NetworkIdentifier
const&, ::TrimDataPacket
const& packet);
765 MCAPI
void $handle(::NetworkIdentifier
const&, ::OpenSignPacket
const& packet);
767 MCAPI
void $handle(::NetworkIdentifier
const&, ::AgentAnimationPacket
const& packet);
769 MCAPI
void $handle(::NetworkIdentifier
const& source, ::RefreshEntitlementsPacket
const& packet);
771 MCAPI
void $handle(::NetworkIdentifier
const&, ::SetPlayerInventoryOptionsPacket
const& packet);
773 MCAPI
void $handle(::NetworkIdentifier
const&, ::AwardAchievementPacket
const& packet);
775 MCAPI
void $handle(::NetworkIdentifier
const& source, ::ClientboundCloseFormPacket
const&);
777 MCAPI
void $handle(::NetworkIdentifier
const&, ::JigsawStructureDataPacket
const& packet);
779 MCAPI
void $handle(::NetworkIdentifier
const&, ::CurrentStructureFeaturePacket
const& packet);
781 MCAPI
void $handle(::NetworkIdentifier
const& source, ::PlayerVideoCapturePacket
const& packet);
783 MCAPI
void $handle(::NetworkIdentifier
const&, ::DebugDrawerPacket
const& packet);
785 MCAPI
void $handle(::NetworkIdentifier
const&, ::PlayerLocationPacket
const& packet);
787 MCAPI
void $handle(::NetworkIdentifier
const&, ::ClientboundDataStorePacket
const& packet);
789 MCAPI
void $handle(::NetworkIdentifier
const&, ::GraphicsOverrideParameterPacket
const& packet);
791 MCAPI
void $onOutgoingPacket(
792 ::NetworkIdentifier
const& netId,
793 ::MinecraftPacketIds packetId,
795 ::SubClientId recipientSubId
798 MCAPI
void $onValidPacketReceived(
799 ::NetworkIdentifier
const& netId,
800 ::MinecraftPacketIds packetId,
802 ::SubClientId recipientSubId
805 MCAPI
void $onStoreOfferReceive(::ShowStoreOfferRedirectType
const redirectType, ::std::string
const& offerID);
807 MCAPI
void $onDisconnect(
808 ::NetworkIdentifier
const& source,
809 ::Connection::DisconnectFailReason
const discoReason,
810 ::Connection::DisconnectionStage
const disconnectStage,
811 ::std::string
const& message,
813 ::std::string
const& telemetryOverride
816 MCAPI ::IncomingPacketFilterResult
817 $allowIncomingPacketId(::NetworkIdentifierWithSubId
const&
id, ::MinecraftPacketIds packetId, uint64 packetSize);
819 MCFOLD ::OutgoingPacketFilterResult
820 $allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId>
const& ids, ::Packet
const& packet);
822 MCAPI
void $handlePacketViolation(
823 ::std::shared_ptr<::IPacketSecurityController>
const& packetSecurityController,
824 ::std::error_code
const& errorCode,
825 ::PacketViolationResponse
const response,
826 ::MinecraftPacketIds
const packetId,
827 ::std::string&& context,
828 ::NetworkIdentifier
const& netId,
829 ::SubClientId
const clientSubId,
830 ::SubClientId
const senderSubId,
831 uint
const packetSize
834 MCAPI
void $sendPacketViolationWarningPacket(
835 ::std::error_code
const& errorCode,
836 ::PacketViolationResponse violationResponse,
837 ::MinecraftPacketIds violatingPacketId,
838 ::std::string
const& context,
839 ::NetworkIdentifier
const& netId,
840 ::SubClientId clientSubId
843 MCAPI
void $onSuccessfulLogin(::NetworkIdentifier
const&
id);
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 BlockSource.h:68
Definition BossEventPacket.h:21
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 ChunkRadiusUpdatedPacket.h:19
Definition ClientNetworkHandler.h:5
static MCAPI void ** $vftable()
Definition ClientNetworkSystem.h:39
Definition ClientboundControlSchemeSetPacket.h:19
Definition ClientboundDataStorePacket.h:19
Definition ClientboundDebugRendererPacket.h:19
Definition ClientboundMapItemDataPacket.h:25
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:85
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 IGameServerStartup.h:5
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 MinecraftCommands.h:34
Definition MultiplayerSettingsPacket.h:19
Definition NetEventCallback.h:245
Definition NetworkChunkPublisherUpdatePacket.h:19
Definition NetworkIdentifier.h:10
Definition NpcDialoguePacket.h:19
Definition OnScreenTextureAnimationPacket.h:19
Definition OpenSignPacket.h:19
Definition PacketSender.h:17
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 TakeItemActorPacket.h:19
Definition TaskGroup.h:53
Definition TextPacket.h:19
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 UpdateEquipPacket.h:19
Definition UpdatePlayerGameTypePacket.h:19
Definition UpdateSoftEnumPacket.h:19
Definition UpdateSubChunkBlocksPacket.h:19
Definition UpdateTradePacket.h:19
Definition CachedHostPackIdProvider.h:5
Definition ClientNetworkHandlerArguments.h:5
Definition ClientNetworkHandler.h:13
Definition IGameConnectionListener.h:5
Definition NetworkIdentifierWithSubId.h:10
Definition PackDownloadManager.h:5
Definition JigsawStructureData.h:16
Definition VideoCaptureSessionManager.h:5