//codec:ignore package client import ( "github.com/Tnze/go-mc/data/packetid" "github.com/Tnze/go-mc/net/packet" ) type ClientboundPacket interface { packet.Field PacketID() packetid.ClientboundPacketID } type clientBoundPacketCreator func() ClientboundPacket var ClientboundPackets = make(map[packetid.ClientboundPacketID]clientBoundPacketCreator) func init() { registerPacket(func() ClientboundPacket { return &AddEntity{} }) registerPacket(func() ClientboundPacket { return &Animate{} }) registerPacket(func() ClientboundPacket { return &AwardStats{} }) registerPacket(func() ClientboundPacket { return &BlockChangedAck{} }) registerPacket(func() ClientboundPacket { return &BlockDestruction{} }) registerPacket(func() ClientboundPacket { return &BlockEntityData{} }) registerPacket(func() ClientboundPacket { return &BlockEvent{} }) registerPacket(func() ClientboundPacket { return &BlockUpdate{} }) registerPacket(func() ClientboundPacket { return &BossEvent{} }) registerPacket(func() ClientboundPacket { return &ChangeDifficulty{} }) registerPacket(func() ClientboundPacket { return &ChunkBatchFinished{} }) registerPacket(func() ClientboundPacket { return &ChunkBatchStart{} }) registerPacket(func() ClientboundPacket { return &ChunkBiomes{} }) registerPacket(func() ClientboundPacket { return &ClearTitles{} }) registerPacket(func() ClientboundPacket { return &CommandSuggestions{} }) registerPacket(func() ClientboundPacket { return &Commands{} }) registerPacket(func() ClientboundPacket { return &CloseContainer{} }) registerPacket(func() ClientboundPacket { return &SetContainerContent{} }) registerPacket(func() ClientboundPacket { return &ContainerSetData{} }) registerPacket(func() ClientboundPacket { return &ContainerSetSlot{} }) registerPacket(func() ClientboundPacket { return &CookieRequest{} }) registerPacket(func() ClientboundPacket { return &Cooldown{} }) registerPacket(func() ClientboundPacket { return &CustomChatCompletions{} }) registerPacket(func() ClientboundPacket { return &CustomPayload{} }) registerPacket(func() ClientboundPacket { return &DamageEvent{} }) registerPacket(func() ClientboundPacket { return &DebugSample{} }) registerPacket(func() ClientboundPacket { return &DeleteChat{} }) registerPacket(func() ClientboundPacket { return &Disconnect{} }) registerPacket(func() ClientboundPacket { return &DisguisedChat{} }) registerPacket(func() ClientboundPacket { return &EntityEvent{} }) registerPacket(func() ClientboundPacket { return &TeleportEntity{} }) registerPacket(func() ClientboundPacket { return &Explode{} }) registerPacket(func() ClientboundPacket { return &ForgetLevelChunk{} }) registerPacket(func() ClientboundPacket { return &GameEvent{} }) registerPacket(func() ClientboundPacket { return &OpenHorseScreen{} }) registerPacket(func() ClientboundPacket { return &HurtAnimation{} }) registerPacket(func() ClientboundPacket { return &InitializeWorldBorder{} }) registerPacket(func() ClientboundPacket { return &KeepAlive{} }) registerPacket(func() ClientboundPacket { return &LevelChunkWithLight{} }) registerPacket(func() ClientboundPacket { return &LevelEvent{} }) registerPacket(func() ClientboundPacket { return &Particle{} }) registerPacket(func() ClientboundPacket { return &UpdateLight{} }) registerPacket(func() ClientboundPacket { return &Login{} }) registerPacket(func() ClientboundPacket { return &MapData{} }) registerPacket(func() ClientboundPacket { return &MerchantOffers{} }) registerPacket(func() ClientboundPacket { return &UpdateEntityPosition{} }) registerPacket(func() ClientboundPacket { return &UpdateEntityPositionAndRotation{} }) registerPacket(func() ClientboundPacket { return &MoveMinecartAlongTrack{} }) registerPacket(func() ClientboundPacket { return &UpdateEntityRotation{} }) registerPacket(func() ClientboundPacket { return &MoveVehicle{} }) registerPacket(func() ClientboundPacket { return &OpenBook{} }) registerPacket(func() ClientboundPacket { return &OpenScreen{} }) registerPacket(func() ClientboundPacket { return &OpenSignEditor{} }) registerPacket(func() ClientboundPacket { return &Ping{} }) registerPacket(func() ClientboundPacket { return &PingResponse{} }) registerPacket(func() ClientboundPacket { return &PlaceGhostRecipe{} }) registerPacket(func() ClientboundPacket { return &PlayerAbilities{} }) registerPacket(func() ClientboundPacket { return &EndCombat{} }) registerPacket(func() ClientboundPacket { return &EnterCombat{} }) registerPacket(func() ClientboundPacket { return &CombatDeath{} }) registerPacket(func() ClientboundPacket { return &PlayerInfoRemove{} }) registerPacket(func() ClientboundPacket { return &PlayerInfoUpdate{} }) registerPacket(func() ClientboundPacket { return &LookAt{} }) registerPacket(func() ClientboundPacket { return &PlayerPosition{} }) registerPacket(func() ClientboundPacket { return &PlayerRotation{} }) registerPacket(func() ClientboundPacket { return &RecipeBookAdd{} }) registerPacket(func() ClientboundPacket { return &RecipeBookRemove{} }) registerPacket(func() ClientboundPacket { return &RecipeBookSettings{} }) registerPacket(func() ClientboundPacket { return &RemoveEntities{} }) registerPacket(func() ClientboundPacket { return &RemoveMobEffect{} }) registerPacket(func() ClientboundPacket { return &ResetScore{} }) registerPacket(func() ClientboundPacket { return &AddResourcePack{} }) registerPacket(func() ClientboundPacket { return &RemoveResourcePack{} }) registerPacket(func() ClientboundPacket { return &Respawn{} }) registerPacket(func() ClientboundPacket { return &SetHeadRotation{} }) registerPacket(func() ClientboundPacket { return &UpdateSectionsBlocks{} }) registerPacket(func() ClientboundPacket { return &SelectAdvancementsTab{} }) registerPacket(func() ClientboundPacket { return &ServerData{} }) registerPacket(func() ClientboundPacket { return &SetActionBarText{} }) registerPacket(func() ClientboundPacket { return &SetBorderCenter{} }) registerPacket(func() ClientboundPacket { return &SetBorderLerpSize{} }) registerPacket(func() ClientboundPacket { return &SetBorderSize{} }) registerPacket(func() ClientboundPacket { return &SetBorderWarningDelay{} }) registerPacket(func() ClientboundPacket { return &SetBorderWarningDistance{} }) registerPacket(func() ClientboundPacket { return &SetCamera{} }) registerPacket(func() ClientboundPacket { return &SetCenterChunk{} }) registerPacket(func() ClientboundPacket { return &SetRenderDistance{} }) registerPacket(func() ClientboundPacket { return &SetCursorItem{} }) registerPacket(func() ClientboundPacket { return &SetDefaultSpawnPosition{} }) registerPacket(func() ClientboundPacket { return &DisplayObjective{} }) registerPacket(func() ClientboundPacket { return &SetEntityMetadata{} }) registerPacket(func() ClientboundPacket { return &SetEntityLink{} }) registerPacket(func() ClientboundPacket { return &SetEntityVelocity{} }) registerPacket(func() ClientboundPacket { return &SetEquipment{} }) registerPacket(func() ClientboundPacket { return &SetExperience{} }) registerPacket(func() ClientboundPacket { return &SetHealth{} }) registerPacket(func() ClientboundPacket { return &SetHeldItem{} }) registerPacket(func() ClientboundPacket { return &UpdateObjectives{} }) registerPacket(func() ClientboundPacket { return &SetPassengers{} }) registerPacket(func() ClientboundPacket { return &SetPlayerInventory{} }) registerPacket(func() ClientboundPacket { return &UpdateTeams{} }) registerPacket(func() ClientboundPacket { return &UpdateScore{} }) registerPacket(func() ClientboundPacket { return &SetSimulationDistance{} }) registerPacket(func() ClientboundPacket { return &SetSubtitleText{} }) registerPacket(func() ClientboundPacket { return &SetTime{} }) registerPacket(func() ClientboundPacket { return &SetTitleText{} }) registerPacket(func() ClientboundPacket { return &SetTitleAnimationTimes{} }) registerPacket(func() ClientboundPacket { return &EntitySoundEffect{} }) registerPacket(func() ClientboundPacket { return &SoundEffect{} }) registerPacket(func() ClientboundPacket { return &StartConfiguration{} }) registerPacket(func() ClientboundPacket { return &StopSound{} }) registerPacket(func() ClientboundPacket { return &StoreCookie{} }) registerPacket(func() ClientboundPacket { return &SystemChatMessage{} }) registerPacket(func() ClientboundPacket { return &SetTabListHeaderAndFooter{} }) registerPacket(func() ClientboundPacket { return &TagQueryResponse{} }) registerPacket(func() ClientboundPacket { return &PickupItem{} }) registerPacket(func() ClientboundPacket { return &SynchronizeVehiclePosition{} }) registerPacket(func() ClientboundPacket { return &TestInstanceBlockStatus{} }) registerPacket(func() ClientboundPacket { return &SetTickingState{} }) registerPacket(func() ClientboundPacket { return &StepTick{} }) registerPacket(func() ClientboundPacket { return &Transfer{} }) registerPacket(func() ClientboundPacket { return &UpdateAdvancements{} }) registerPacket(func() ClientboundPacket { return &UpdateAttributes{} }) registerPacket(func() ClientboundPacket { return &EntityEffect{} }) registerPacket(func() ClientboundPacket { return &UpdateRecipes{} }) registerPacket(func() ClientboundPacket { return &UpdateTags{} }) registerPacket(func() ClientboundPacket { return &ProjectilePower{} }) registerPacket(func() ClientboundPacket { return &CustomReportDetails{} }) registerPacket(func() ClientboundPacket { return &ServerLinks{} }) registerPacket(func() ClientboundPacket { return &Waypoint{} }) registerPacket(func() ClientboundPacket { return &ClearDialog{} }) registerPacket(func() ClientboundPacket { return &ShowDialog{} }) } func registerPacket(creator clientBoundPacketCreator) { ClientboundPackets[creator().PacketID()] = creator } func (AddEntity) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundAddEntity } func (Animate) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundAnimate } func (AwardStats) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundAwardStats } func (BlockChangedAck) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBlockChangedAck } func (BlockDestruction) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBlockDestruction } func (BlockEntityData) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBlockEntityData } func (BlockEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBlockEvent } func (BlockUpdate) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBlockUpdate } func (BossEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundBossEvent } func (ChangeDifficulty) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundChangeDifficulty } func (ChunkBatchFinished) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundChunkBatchFinished } func (ChunkBatchStart) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundChunkBatchStart } func (ChunkBiomes) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundChunksBiomes } func (ClearTitles) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundClearTitles } func (CommandSuggestions) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCommandSuggestions } func (Commands) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCommands } func (CloseContainer) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundContainerClose } func (SetContainerContent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundContainerSetContent } func (ContainerSetData) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundContainerSetData } func (ContainerSetSlot) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundContainerSetSlot } func (CookieRequest) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCookieRequest } func (Cooldown) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCooldown } func (CustomChatCompletions) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCustomChatCompletions } func (CustomPayload) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCustomPayload } func (DamageEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundDamageEvent } func (DebugSample) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundDebugSample } func (DeleteChat) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundDeleteChat } func (Disconnect) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundDisconnect } func (DisguisedChat) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundDisguisedChat } func (EntityEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundEntityEvent } func (TeleportEntity) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundEntityPositionSync } func (Explode) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundExplode } func (ForgetLevelChunk) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundForgetLevelChunk } func (GameEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundGameEvent } func (OpenHorseScreen) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundHorseScreenOpen } func (HurtAnimation) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundHurtAnimation } func (InitializeWorldBorder) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundInitializeBorder } func (KeepAlive) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundKeepAlive } func (LevelChunkWithLight) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundLevelChunkWithLight } func (LevelEvent) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundLevelEvent } func (Particle) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundLevelParticles } func (UpdateLight) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundLightUpdate } func (Login) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundLogin } func (MapData) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMapItemData } func (MerchantOffers) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMerchantOffers } func (UpdateEntityPosition) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMoveEntityPos } func (UpdateEntityPositionAndRotation) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMoveEntityPosRot } func (MoveMinecartAlongTrack) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMoveMinecartAlongTrack } func (UpdateEntityRotation) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMoveEntityRot } func (MoveVehicle) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundMoveVehicle } func (OpenBook) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundOpenBook } func (OpenScreen) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundOpenScreen } func (OpenSignEditor) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundOpenSignEditor } func (Ping) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPing } func (PingResponse) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPongResponse } func (PlaceGhostRecipe) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlaceGhostRecipe } func (PlayerAbilities) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerAbilities } func (EndCombat) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerCombatEnd } func (EnterCombat) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerCombatEnter } func (CombatDeath) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerCombatKill } func (PlayerInfoRemove) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerInfoRemove } func (PlayerInfoUpdate) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerInfoUpdate } func (LookAt) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerLookAt } func (PlayerPosition) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerPosition } func (PlayerRotation) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundPlayerRotation } func (RecipeBookAdd) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRecipeBookAdd } func (RecipeBookRemove) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRecipeBookRemove } func (RecipeBookSettings) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRecipeBookSettings } func (RemoveEntities) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRemoveEntities } func (RemoveMobEffect) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRemoveMobEffect } func (ResetScore) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundResetScore } func (AddResourcePack) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundResourcePackPop } func (RemoveResourcePack) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundResourcePackPush } func (Respawn) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRespawn } func (SetHeadRotation) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundRotateHead } func (UpdateSectionsBlocks) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSectionBlocksUpdate } func (SelectAdvancementsTab) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSelectAdvancementsTab } func (ServerData) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundServerData } func (SetActionBarText) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetActionBarText } func (SetBorderCenter) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetBorderCenter } func (SetBorderLerpSize) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetBorderLerpSize } func (SetBorderSize) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetBorderSize } func (SetBorderWarningDelay) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetBorderWarningDelay } func (SetBorderWarningDistance) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetBorderWarningDistance } func (SetCamera) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetCamera } func (SetCenterChunk) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetChunkCacheCenter } func (SetRenderDistance) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetChunkCacheRadius } func (SetCursorItem) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetCursorItem } func (SetDefaultSpawnPosition) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetDefaultSpawnPosition } func (DisplayObjective) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetDisplayObjective } func (SetEntityMetadata) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetEntityData } func (SetEntityLink) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetEntityLink } func (SetEntityVelocity) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetEntityMotion } func (SetEquipment) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetEquipment } func (SetExperience) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetExperience } func (SetHealth) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetHealth } func (SetHeldItem) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetHeldSlot } func (UpdateObjectives) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetObjective } func (SetPassengers) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetPassengers } func (SetPlayerInventory) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetPlayerInventory } func (UpdateTeams) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetPlayerTeam } func (UpdateScore) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetScore } func (SetSimulationDistance) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetSimulationDistance } func (SetSubtitleText) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetSubtitleText } func (SetTime) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetTime } func (SetTitleText) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetTitleText } func (SetTitleAnimationTimes) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSetTitlesAnimation } func (EntitySoundEffect) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSoundEntity } func (SoundEffect) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSound } func (StartConfiguration) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundStartConfiguration } func (StopSound) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundStopSound } func (StoreCookie) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundStoreCookie } func (SystemChatMessage) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundSystemChat } func (SetTabListHeaderAndFooter) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTabList } func (TagQueryResponse) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTagQuery } func (PickupItem) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTakeItemEntity } func (SynchronizeVehiclePosition) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTeleportEntity } func (TestInstanceBlockStatus) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTestInstanceBlockStatus } func (SetTickingState) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTickingState } func (StepTick) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTickingStep } func (Transfer) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundTransfer } func (UpdateAdvancements) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundUpdateAdvancements } func (UpdateAttributes) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundUpdateAttributes } func (EntityEffect) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundUpdateMobEffect } func (UpdateRecipes) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundUpdateRecipes } func (UpdateTags) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundUpdateTags } func (ProjectilePower) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundProjectilePower } func (CustomReportDetails) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundCustomReportDetails } func (ServerLinks) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundServerLinks } func (Waypoint) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundWaypoint } func (ClearDialog) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundClearDialog } func (ShowDialog) PacketID() packetid.ClientboundPacketID { return packetid.ClientboundShowDialog }