3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/common/SubClientId.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/network/IncomingPacketFilterResult.h"
9#include "mc/network/MinecraftPacketIds.h"
10#include "mc/network/OutgoingPacketFilterResult.h"
11#include "mc/network/PacketViolationResponse.h"
12#include "mc/network/connection/DisconnectFailReason.h"
13#include "mc/network/connection/DisconnectionStage.h"
14#include "mc/network/packet/ShowStoreOfferRedirectType.h"
262 virtual void onPlayerReady(
::Player& player);
268 virtual void onUnableToConnect(
269 ::Connection::DisconnectFailReason discoReason,
270 ::std::string
const& messageFromServer,
271 ::std::string
const& messageBodyOverride
274 virtual void onTick();
276 virtual void onOutgoingPacket(
::NetworkIdentifier const&, ::MinecraftPacketIds, ::SubClientId, ::SubClientId);
278 virtual void onValidPacketReceived(
::NetworkIdentifier const&, ::MinecraftPacketIds, ::SubClientId, ::SubClientId);
280 virtual void onStoreOfferReceive(::ShowStoreOfferRedirectType
const redirectType, ::std::string
const& offerID);
282 virtual void onDisconnect(
284 ::Connection::DisconnectFailReason
const discoReason,
285 ::Connection::DisconnectionStage
const disconnectStage,
286 ::std::string
const& messageFromServer,
287 ::std::string
const& messageBodyOverride,
289 ::std::string
const& telemetryOverride
292 virtual ::IncomingPacketFilterResult
295 virtual ::OutgoingPacketFilterResult
296 allowOutgoingPacket(::std::vector<::NetworkIdentifierWithSubId>
const& ids,
::Packet const& packet) = 0;
298 virtual void onWebsocketRequest(
299 ::std::string
const& serverAddress,
300 ::std::string
const& payload,
301 ::std::function<
void()> errorCallback
304 virtual void handlePacketViolation(
305 ::std::shared_ptr<::IPacketSecurityController>
const& packetSecurityController,
306 ::std::error_code
const& errorCode,
307 ::PacketViolationResponse
const response,
308 ::MinecraftPacketIds
const packetId,
311 ::SubClientId
const clientSubId,
312 ::SubClientId
const senderSubId,
313 uint
const packetSize
316 virtual void sendPacketViolationWarningPacket(
317 ::std::error_code
const& errorCode,
318 ::PacketViolationResponse violationResponse,
319 ::MinecraftPacketIds violatingPacketId,
322 ::SubClientId clientSubId
327 virtual bool getIsConnectedToApplicationLayer()
const;
329 virtual ::GameSpecificNetEventCallback* getGameSpecificNetEventCallback();
339 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::LoginPacket> packet);
343 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::SubClientLoginPacket> packet);
393 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockPacket> packet);
395 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockSyncedPacket> packet);
419 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packet);
467 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet);
473 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::LevelChunkPacket> packet);
481 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::ClientCacheMissResponsePacket> packet);
491 virtual void handle(
::NetworkIdentifier const&, ::std::shared_ptr<::UpdateAttributesPacket>);
581 virtual void handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::InventoryTransactionPacket> packet);
803 MCFOLD
void $onPlayerReady(
::Player& player);
807 MCFOLD
void $onUnableToConnect(
808 ::Connection::DisconnectFailReason discoReason,
809 ::std::string
const& messageFromServer,
810 ::std::string
const& messageBodyOverride
813 MCFOLD
void $onTick();
815 MCFOLD
void $onOutgoingPacket(
::NetworkIdentifier const&, ::MinecraftPacketIds, ::SubClientId, ::SubClientId);
817 MCFOLD
void $onValidPacketReceived(
::NetworkIdentifier const&, ::MinecraftPacketIds, ::SubClientId, ::SubClientId);
819 MCFOLD
void $onStoreOfferReceive(::ShowStoreOfferRedirectType
const redirectType, ::std::string
const& offerID);
821 MCFOLD
void $onDisconnect(
823 ::Connection::DisconnectFailReason
const discoReason,
824 ::Connection::DisconnectionStage
const disconnectStage,
825 ::std::string
const& messageFromServer,
826 ::std::string
const& messageBodyOverride,
828 ::std::string
const& telemetryOverride
831 MCFOLD
void $onWebsocketRequest(
832 ::std::string
const& serverAddress,
833 ::std::string
const& payload,
834 ::std::function<
void()> errorCallback
837 MCFOLD
void $handlePacketViolation(
838 ::std::shared_ptr<::IPacketSecurityController>
const& packetSecurityController,
839 ::std::error_code
const& errorCode,
840 ::PacketViolationResponse
const response,
841 ::MinecraftPacketIds
const packetId,
844 ::SubClientId
const clientSubId,
845 ::SubClientId
const senderSubId,
846 uint
const packetSize
849 MCFOLD
void $sendPacketViolationWarningPacket(
850 ::std::error_code
const& errorCode,
851 ::PacketViolationResponse violationResponse,
852 ::MinecraftPacketIds violatingPacketId,
855 ::SubClientId clientSubId
860 MCFOLD
bool $getIsConnectedToApplicationLayer()
const;
862 MCFOLD ::GameSpecificNetEventCallback* $getGameSpecificNetEventCallback();
872 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::LoginPacket> packet);
876 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::SubClientLoginPacket> packet);
926 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockPacket> packet);
928 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::UpdateBlockSyncedPacket> packet);
952 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::MobEquipmentPacket> packet);
1000 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::BlockActorDataPacket> packet);
1006 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::LevelChunkPacket> packet);
1014 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::ClientCacheMissResponsePacket> packet);
1024 MCFOLD
void $handle(
::NetworkIdentifier const&, ::std::shared_ptr<::UpdateAttributesPacket>);
1114 MCFOLD
void $handle(
::NetworkIdentifier const& source, ::std::shared_ptr<::InventoryTransactionPacket> packet);
Definition ActorEventPacket.h:19
Definition ActorFallPacket.h:5
Definition ActorPickRequestPacket.h:19
Definition AddActorPacket.h:29
Definition AddBehaviorTreePacket.h:19
Definition AddItemActorPacket.h:23
Definition AddMobPacket.h:5
Definition AddPaintingPacket.h:20
Definition AddPlayerPacket.h:30
Definition AddVolumeEntityPacket.h:19
Definition AgentActionEventPacket.h:19
Definition AgentAnimationPacket.h:19
Definition AnimateEntityPacket.h:19
Definition AnimatePacket.h:19
Definition AnvilDamagePacket.h:19
Definition AutomationClientConnectPacket.h:19
Definition AvailableActorIdentifiersPacket.h:19
Definition AvailableCommandsPacket.h:19
Definition AwardAchievementPacket.h:19
Definition EnableNonOwnerReferences.h:7
static MCAPI void ** $vftable()
Definition BiomeDefinitionListPacket.h:18
Definition BlockActorDataPacket.h:19
Definition BlockEventPacket.h:19
Definition BlockPickRequestPacket.h:19
Definition BookAddPagePacket.h:5
Definition BookDeletePagePacket.h:5
Definition BookEditPacket.h:19
Definition BookSignPacket.h:5
Definition BookSwapPagesPacket.h:5
Definition BossEventPacket.h:21
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 ChangeDimensionPacket.h:19
Definition ChangeMobPropertyPacket.h:19
Definition ChunkRadiusUpdatedPacket.h:19
Definition ClientCacheBlobStatusPacket.h:16
Definition ClientCacheMissResponsePacket.h:17
Definition ClientCacheStatusPacket.h:19
Definition ClientCameraAimAssistPacket.h:19
Definition ClientMovementPredictionSyncPacket.h:20
Definition ClientToServerHandshakePacket.h:19
Definition ClientboundAttributeLayerSyncPacket.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 CodeBuilderSourcePacket.h:19
Definition CommandBlockUpdatePacket.h:22
Definition CommandOutputPacket.h:19
Definition CommandRequestPacket.h:19
Definition CompletedUsingItemPacket.h:19
Definition ContainerClosePacket.h:19
Definition ContainerOpenPacket.h:19
Definition ContainerRegistryCleanupPacket.h:19
Definition ContainerSetDataPacket.h:19
Definition CorrectPlayerMovePredictionPacket.h:19
Definition CraftingDataPacket.h:21
Definition CreatePhotoPacket.h:19
Definition CreativeContentPacket.h:22
Definition CurrentStructureFeaturePacket.h:19
Definition DeathInfoPacket.h:19
Definition DebugDrawerPacket.h:19
Definition DebugInfoPacket.h:19
Definition DimensionDataPacket.h:17
Definition DisconnectPacket.h:17
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 GameRulesChangedPacket.h:19
Definition GameSpecificNetEventCallback.h:11
Definition GameTestRequestPacket.h:19
Definition GameTestResultsPacket.h:19
Definition GraphicsOverrideParameterPacket.h:19
Definition GuiDataPickItemPacket.h:19
Definition HurtArmorPacket.h:19
Definition IPacketSecurityController.h:22
Definition InteractPacket.h:19
Definition InventoryActionPacket.h:5
Definition InventoryContentPacket.h:21
Definition InventorySlotPacket.h:20
Definition InventoryTransactionPacket.h:24
Definition ItemRegistryPacket.h:19
Definition ItemStackRequestPacket.h:17
Definition ItemStackResponsePacket.h:17
Definition JigsawStructureDataPacket.h:19
Definition LabTablePacket.h:19
Definition LecternUpdatePacket.h:19
Definition LegacyTelemetryEventPacket.h:19
Definition LessonProgressPacket.h:19
Definition LevelChunkPacket.h:19
Definition LevelEventGenericPacket.h:19
Definition LevelEventPacket.h:19
Definition LevelSoundEventPacket.h:19
Definition LocatorBarPacket.h:19
Definition LoginPacket.h:19
Definition MapCreateLockedCopyPacket.h:19
Definition MapInfoRequestPacket.h:19
Definition MobArmorEquipmentPacket.h:19
Definition MobEffectPacket.h:19
Definition MobEquipmentPacket.h:24
Definition MotionPredictionHintsPacket.h:19
Definition MoveActorAbsolutePacket.h:19
Definition MoveActorDeltaPacket.h:17
Definition MovePlayerPacket.h:22
Definition MovementEffectPacket.h:19
Definition MultiplayerSettingsPacket.h:19
Definition NetEventCallback.h:258
Definition NetworkChunkPublisherUpdatePacket.h:19
Definition NetworkIdentifier.h:10
Definition NetworkSettingsPacket.h:19
Definition NetworkStackLatencyPacket.h:19
Definition NpcDialoguePacket.h:19
Definition NpcRequestPacket.h:19
Definition OnScreenTextureAnimationPacket.h:19
Definition OpenSignPacket.h:19
Definition PacketViolationWarningPacket.h:19
Definition PartyChangedPacket.h:19
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 PlayerHotbarPacket.h:19
Definition PlayerListPacket.h:18
Definition PlayerLocationPacket.h:18
Definition PlayerSkinPacket.h:19
Definition PlayerStartItemCooldownPacket.h:19
Definition PlayerToggleCrafterSlotRequestPacket.h:19
Definition PlayerUpdateEntityOverridesPacket.h:18
Definition PlayerVideoCapturePacket.h:19
Definition PositionTrackingDBClientRequestPacket.h:20
Definition PositionTrackingDBServerBroadcastPacket.h:20
Definition PurchaseReceiptPacket.h:19
Definition RefreshEntitlementsPacket.h:19
Definition RemoveActorPacket.h:19
Definition RemoveObjectivePacket.h:19
Definition RemoveVolumeEntityPacket.h:19
Definition RequestAbilityPacket.h:19
Definition RequestChunkRadiusPacket.h:19
Definition RequestNetworkSettingsPacket.h:19
Definition RequestPermissionsPacket.h:19
Definition ResourcePackChunkDataPacket.h:19
Definition ResourcePackChunkRequestPacket.h:19
Definition ResourcePackClientResponsePacket.h:17
Definition ResourcePackDataInfoPacket.h:19
Definition ResourcePackStackPacket.h:20
Definition ResourcePacksInfoPacket.h:19
Definition ResourcePacksReadyForValidationPacket.h:20
Definition RespawnPacket.h:19
Definition ScriptMessagePacket.h:19
Definition ServerPlayerPostMovePositionPacket.h:19
Definition ServerSettingsRequestPacket.h:19
Definition ServerSettingsResponsePacket.h:19
Definition ServerStatsPacket.h:19
Definition ServerToClientHandshakePacket.h:19
Definition ServerboundDataDrivenScreenClosedPacket.h:20
Definition ServerboundDataStorePacket.h:19
Definition ServerboundDiagnosticsPacket.h:19
Definition ServerboundLoadingScreenPacket.h:19
Definition ServerboundPackSettingChangePacket.h:19
Definition SetActorDataPacket.h:26
Definition SetActorLinkPacket.h:19
Definition SetActorMotionPacket.h:19
Definition SetCommandsEnabledPacket.h:19
Definition SetDefaultGameTypePacket.h:19
Definition SetDifficultyPacket.h:19
Definition SetDisplayObjectivePacket.h:19
Definition SetHealthPacket.h:19
Definition SetHudPacket.h:19
Definition SetLastHurtByPacket.h:19
Definition SetLocalPlayerAsInitializedPacket.h:19
Definition SetPlayerGameTypePacket.h:19
Definition SetPlayerInventoryOptionsPacket.h:19
Definition SetScorePacket.h:20
Definition SetScoreboardIdentityPacket.h:18
Definition SetSpawnPositionPacket.h:19
Definition SetTimePacket.h:19
Definition SetTitlePacket.h:19
Definition SettingsCommandPacket.h:19
Definition ShowCreditsPacket.h:19
Definition ShowProfilePacket.h:19
Definition ShowStoreOfferPacket.h:19
Definition SimpleEventPacket.h:19
Definition SimulationTypePacket.h:19
Definition GameConnectionInfo.h:21
Definition SpawnExperienceOrbPacket.h:19
Definition SpawnParticleEffectPacket.h:19
Definition StartGamePacket.h:31
Definition StopSoundPacket.h:19
Definition StructureBlockUpdatePacket.h:18
Definition StructureTemplateDataRequestPacket.h:19
Definition StructureTemplateDataResponsePacket.h:19
Definition SubChunkPacket.h:19
Definition SubChunkRequestPacket.h:20
Definition SubClientLoginPacket.h:17
Definition SyncActorPropertyPacket.h:19
Definition SyncWorldClocksPacket.h:19
Definition TakeItemActorPacket.h:19
Definition TextPacket.h:19
Definition TickingAreasLoadStatusPacket.h:19
Definition ToastRequestPacket.h:19
Definition TransferPacket.h:19
Definition TrimDataPacket.h:20
Definition UnlockedRecipesPacket.h:19
Definition UpdateAbilitiesPacket.h:18
Definition UpdateAdventureSettingsPacket.h:19
Definition UpdateAttributesPacket.h:21
Definition UpdateBlockPacket.h:19
Definition UpdateBlockSyncedPacket.h:19
Definition UpdateClientOptionsPacket.h:19
Definition UpdateEquipPacket.h:19
Definition UpdatePlayerGameTypePacket.h:19
Definition UpdateSoftEnumPacket.h:19
Definition UpdateSubChunkBlocksPacket.h:19
Definition UpdateTradePacket.h:19
Definition VoxelShapesPacket.h:19
Definition NetworkIdentifierWithSubId.h:10