Cuberite
A lightweight, fast and extensible game server for Minecraft
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Types | List of all members
cProtocol_1_9_0 Class Reference

#include <Protocol_1_9.h>

Inheritance diagram for cProtocol_1_9_0:
Inheritance graph
[legend]
Collaboration diagram for cProtocol_1_9_0:
Collaboration graph
[legend]

Public Member Functions

 cProtocol_1_9_0 (cClientHandle *a_Client, const AString &a_ServerAddress, State a_State)
 
virtual void SendAttachEntity (const cEntity &a_Entity, const cEntity &a_Vehicle) override
 
virtual void SendBossBarAdd (UInt32 a_UniqueID, const cCompositeChat &a_Title, float a_FractionFilled, BossBarColor a_Color, BossBarDivisionType a_DivisionType, bool a_DarkenSky, bool a_PlayEndMusic, bool a_CreateFog) override
 
virtual void SendBossBarRemove (UInt32 a_UniqueID) override
 
virtual void SendBossBarUpdateFlags (UInt32 a_UniqueID, bool a_DarkenSky, bool a_PlayEndMusic, bool a_CreateFog) override
 
virtual void SendBossBarUpdateHealth (UInt32 a_UniqueID, float a_FractionFilled) override
 
virtual void SendBossBarUpdateStyle (UInt32 a_UniqueID, BossBarColor a_Color, BossBarDivisionType a_DivisionType) override
 
virtual void SendBossBarUpdateTitle (UInt32 a_UniqueID, const cCompositeChat &a_Title) override
 
virtual void SendDetachEntity (const cEntity &a_Entity, const cEntity &a_PreviousVehicle) override
 
virtual void SendEntityEquipment (const cEntity &a_Entity, short a_SlotNum, const cItem &a_Item) override
 
virtual void SendEntityMetadata (const cEntity &a_Entity) override
 
virtual void SendEntityPosition (const cEntity &a_Entity) override
 
virtual void SendExperienceOrb (const cExpOrb &a_ExpOrb) override
 
virtual void SendKeepAlive (UInt32 a_PingID) override
 
virtual void SendLeashEntity (const cEntity &a_Entity, const cEntity &a_EntityLeashedTo) override
 
virtual void SendMapData (const cMap &a_Map, int a_DataStartX, int a_DataStartY) override
 
virtual void SendPaintingSpawn (const cPainting &a_Painting) override
 
virtual void SendPlayerMoveLook (Vector3d a_Pos, float a_Yaw, float a_Pitch, bool a_IsRelative) override
 
virtual void SendPlayerMoveLook (void) override
 
virtual void SendPlayerPermissionLevel () override
 
virtual void SendPlayerSpawn (const cPlayer &a_Player) override
 
virtual void SendSoundEffect (const AString &a_SoundName, Vector3d a_Origin, float a_Volume, float a_Pitch) override
 
virtual void SendSpawnMob (const cMonster &a_Mob) override
 
virtual void SendThunderbolt (Vector3i a_Origin) override
 
virtual void SendUnleashEntity (const cEntity &a_Entity) override
 
virtual void SendUnloadChunk (int a_ChunkX, int a_ChunkZ) override
 
- Public Member Functions inherited from cProtocol_1_8_0
 cProtocol_1_8_0 (cClientHandle *a_Client, const AString &a_ServerAddress, State a_State)
 
virtual void DataPrepared (ContiguousByteBuffer &a_Data) override
 Called by cClientHandle to finalise a buffer of prepared data before they are sent to the client. More...
 
virtual void DataReceived (cByteBuffer &a_Buffer, ContiguousByteBuffer &a_Data) override
 Called by cClientHandle to process data, when the client sends some. More...
 
virtual AString GetAuthServerID (void) override
 Returns the ServerID used for authentication through session.minecraft.net. More...
 
virtual void SendBlockAction (Vector3i a_BlockPos, char a_Byte1, char a_Byte2, BLOCKTYPE a_BlockType) override
 
virtual void SendBlockBreakAnim (UInt32 a_EntityID, Vector3i a_BlockPos, char a_Stage) override
 
virtual void SendBlockChange (Vector3i a_BlockPos, BLOCKTYPE a_BlockType, NIBBLETYPE a_BlockMeta) override
 
virtual void SendBlockChanges (int a_ChunkX, int a_ChunkZ, const sSetBlockVector &a_Changes) override
 
virtual void SendCameraSetTo (const cEntity &a_Entity) override
 
virtual void SendChat (const AString &a_Message, eChatType a_Type) override
 
virtual void SendChat (const cCompositeChat &a_Message, eChatType a_Type, bool a_ShouldUseChatPrefixes) override
 
virtual void SendChatRaw (const AString &a_MessageRaw, eChatType a_Type) override
 
virtual void SendChunkData (ContiguousByteBufferView a_ChunkData) override
 
virtual void SendCollectEntity (const cEntity &a_Collected, const cEntity &a_Collector, unsigned a_Count) override
 
virtual void SendDestroyEntity (const cEntity &a_Entity) override
 
virtual void SendDisconnect (const AString &a_Reason) override
 
virtual void SendDisplayObjective (const AString &a_Objective, cScoreboard::eDisplaySlot a_Display) override
 
virtual void SendEditSign (Vector3i a_BlockPos) override
 Request the client to open up the sign editor for the sign (1.6+) More...
 
virtual void SendEntityAnimation (const cEntity &a_Entity, EntityAnimation a_Animation) override
 
virtual void SendEntityEffect (const cEntity &a_Entity, int a_EffectID, int a_Amplifier, int a_Duration) override
 
virtual void SendEntityHeadLook (const cEntity &a_Entity) override
 
virtual void SendEntityLook (const cEntity &a_Entity) override
 
virtual void SendEntityProperties (const cEntity &a_Entity) override
 
virtual void SendEntityVelocity (const cEntity &a_Entity) override
 
virtual void SendExperience (void) override
 
virtual void SendExplosion (Vector3f a_Position, float a_Power) override
 
virtual void SendGameMode (eGameMode a_GameMode) override
 
virtual void SendHealth (void) override
 
virtual void SendHeldItemChange (int a_ItemIndex) override
 
virtual void SendHideTitle (void) override
 
virtual void SendInitRecipes (UInt32 a_RecipeID) override
 
virtual void SendInventorySlot (char a_WindowID, short a_SlotNum, const cItem &a_Item) override
 
virtual void SendLogin (const cPlayer &a_Player, const cWorld &a_World) override
 
virtual void SendLoginSuccess (void) override
 
virtual void SendParticleEffect (const AString &a_ParticleName, Vector3f a_Src, Vector3f a_Offset, float a_ParticleData, int a_ParticleAmount) override
 
virtual void SendParticleEffect (const AString &a_ParticleName, Vector3f a_Src, Vector3f a_Offset, float a_ParticleData, int a_ParticleAmount, std::array< int, 2 > a_Data) override
 
virtual void SendPlayerAbilities (void) override
 
virtual void SendPlayerListAddPlayer (const cPlayer &a_Player) override
 
virtual void SendPlayerListHeaderFooter (const cCompositeChat &a_Header, const cCompositeChat &a_Footer) override
 
virtual void SendPlayerListRemovePlayer (const cPlayer &a_Player) override
 
virtual void SendPlayerListUpdateDisplayName (const cPlayer &a_Player, const AString &a_CustomName) override
 
virtual void SendPlayerListUpdateGameMode (const cPlayer &a_Player) override
 
virtual void SendPlayerListUpdatePing () override
 
virtual void SendPlayerPosition (void) override
 
virtual void SendPluginMessage (const AString &a_Channel, ContiguousByteBufferView a_Message) override
 
virtual void SendRemoveEntityEffect (const cEntity &a_Entity, int a_EffectID) override
 
virtual void SendResetTitle (void) override
 
virtual void SendResourcePack (const AString &a_ResourcePackUrl) override
 
virtual void SendRespawn (eDimension a_Dimension) override
 
virtual void SendScoreboardObjective (const AString &a_Name, const AString &a_DisplayName, Byte a_Mode) override
 
virtual void SendScoreUpdate (const AString &a_Objective, const AString &a_Player, cObjective::Score a_Score, Byte a_Mode) override
 
virtual void SendSetRawSubTitle (const AString &a_SubTitle) override
 
virtual void SendSetRawTitle (const AString &a_Title) override
 
virtual void SendSetSubTitle (const cCompositeChat &a_SubTitle) override
 
virtual void SendSetTitle (const cCompositeChat &a_Title) override
 
virtual void SendSoundParticleEffect (const EffectID a_EffectID, Vector3i a_Origin, int a_Data) override
 
virtual void SendSpawnEntity (const cEntity &a_Entity) override
 
virtual void SendStatistics (const StatisticsManager &a_Manager) override
 
virtual void SendTabCompletionResults (const AStringVector &a_Results) override
 
virtual void SendTimeUpdate (cTickTimeLong a_WorldAge, cTickTimeLong a_WorldDate, bool a_DoDaylightCycle) override
 
virtual void SendTitleTimes (int a_FadeInTicks, int a_DisplayTicks, int a_FadeOutTicks) override
 
virtual void SendUnlockRecipe (UInt32 a_RecipeID) override
 
virtual void SendUpdateBlockEntity (cBlockEntity &a_BlockEntity) override
 
virtual void SendUpdateSign (Vector3i a_BlockPos, const AString &a_Line1, const AString &a_Line2, const AString &a_Line3, const AString &a_Line4) override
 
virtual void SendWeather (eWeather a_Weather) override
 
virtual void SendWholeInventory (const cWindow &a_Window) override
 
virtual void SendWindowClose (const cWindow &a_Window) override
 
virtual void SendWindowOpen (const cWindow &a_Window) override
 
virtual void SendWindowProperty (const cWindow &a_Window, size_t a_Property, short a_Value) override
 
- Public Member Functions inherited from cProtocol
 cProtocol (cClientHandle *a_Client)
 
virtual ~cProtocol ()
 

Protected Types

enum  eMetadataType {
  METADATA_TYPE_BYTE = 0 , METADATA_TYPE_VARINT = 1 , METADATA_TYPE_FLOAT = 2 , METADATA_TYPE_STRING = 3 ,
  METADATA_TYPE_CHAT = 4 , METADATA_TYPE_ITEM = 5 , METADATA_TYPE_BOOL = 6 , METADATA_TYPE_ROTATION = 7 ,
  METADATA_TYPE_POSITION = 8 , METADATA_TYPE_OPTIONAL_POSITION = 9 , METADATA_TYPE_DIRECTION = 10 , METADATA_TYPE_OPTIONAL_UUID = 11 ,
  METADATA_TYPE_BLOCKID = 12
}
 Types used within metadata. More...
 

Protected Member Functions

virtual UInt32 GetPacketID (ePacketType a_Packet) const override
 Get the packet ID for a given packet. More...
 
virtual unsigned char GetProtocolEntityAnimation (EntityAnimation a_Animation) const override
 Converts an animation into an ID suitable for use with the Entity Animation packet. More...
 
virtual signed char GetProtocolEntityStatus (EntityAnimation a_Animation) const override
 Converts an animation into an ID suitable for use with the Entity Status packet. More...
 
virtual UInt32 GetProtocolMobType (eMonsterType a_MobType) const override
 Converts eMonsterType to protocol-specific mob types. More...
 
virtual Version GetProtocolVersion () const override
 Returns the protocol version. More...
 
virtual void HandleConfirmTeleport (cByteBuffer &a_ByteBuffer)
 
virtual bool HandlePacket (cByteBuffer &a_ByteBuffer, UInt32 a_PacketType) override
 Reads and handles the packet. More...
 
virtual void HandlePacketAnimation (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketBlockDig (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketBlockPlace (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketBoatSteer (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketClientSettings (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketEntityAction (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketPlayerPos (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketPlayerPosLook (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketSteerVehicle (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketTabComplete (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketUpdateSign (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketUseEntity (cByteBuffer &a_ByteBuffer) override
 
virtual void HandlePacketUseItem (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketVehicleMove (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketWindowClick (cByteBuffer &a_ByteBuffer) override
 
virtual void HandleVanillaPluginMessage (cByteBuffer &a_ByteBuffer, std::string_view a_Channel) override
 Parses Vanilla plugin messages into specific ClientHandle calls. More...
 
virtual void ParseItemMetadata (cItem &a_Item, ContiguousByteBufferView a_Metadata) const override
 Parses item metadata as read by ReadItem(), into the item enchantments. More...
 
virtual void SendEntitySpawn (const cEntity &a_Entity, const UInt8 a_ObjectType, const Int32 a_ObjectData) override
 Sends the entity type and entity-dependent data required for the entity to initially spawn. More...
 
virtual void WriteBlockEntity (cFastNBTWriter &a_Writer, const cBlockEntity &a_BlockEntity) const override
 Writes the block entity data for the specified block entity into the packet. More...
 
virtual void WriteEntityMetadata (cPacketizer &a_Pkt, const cEntity &a_Entity) const override
 Writes the metadata for the specified entity, not including the terminating 0x7f. More...
 
virtual void WriteItem (cPacketizer &a_Pkt, const cItem &a_Item) const override
 Writes the item data into a packet. More...
 
virtual void WriteMobMetadata (cPacketizer &a_Pkt, const cMonster &a_Mob) const override
 Writes the mob-specific metadata for the specified mob. More...
 
- Protected Member Functions inherited from cProtocol_1_8_0
virtual UInt8 GetProtocolEntityType (const cEntity &a_Entity) const
 Converts an entity to a protocol-specific entity type. More...
 
virtual int GetProtocolParticleID (const AString &a_ParticleName) const
 The 1.8 protocol use a particle id instead of a string. More...
 
virtual void HandlePacketChatMessage (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketClientStatus (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketCreativeInventoryAction (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketEnchantItem (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketKeepAlive (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketLoginEncryptionResponse (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketLoginStart (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketPlayer (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketPlayerAbilities (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketPlayerLook (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketPluginMessage (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketResourcePackStatus (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketSlotSelect (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketSpectate (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketStatusPing (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketStatusRequest (cByteBuffer &a_ByteBuffer)
 
virtual void HandlePacketWindowClose (cByteBuffer &a_ByteBuffer)
 
virtual bool ReadItem (cByteBuffer &a_ByteBuffer, cItem &a_Item, size_t a_KeepRemainingBytes=0) const
 Reads an item out of the received data, sets a_Item to the values read. More...
 
virtual void SendPacket (cPacketizer &a_Packet) override
 Sends the packet to the client. More...
 
virtual void WriteEntityProperties (cPacketizer &a_Pkt, const cEntity &a_Entity) const
 Writes the entity properties for the specified entity, including the Count field. More...
 

Protected Attributes

bool m_IsTeleportIdConfirmed
 The current teleport ID. More...
 
UInt32 m_OutstandingTeleportId
 Whether the current teleport ID has been confirmed by the client. More...
 
- Protected Attributes inherited from cProtocol_1_8_0
State m_State
 State of the protocol. More...
 
- Protected Attributes inherited from cProtocol
cClientHandlem_Client
 
cCriticalSection m_CSPacket
 Provides synchronization for sending the entire packet at once. More...
 
cByteBuffer m_OutPacketBuffer
 Buffer for composing the outgoing packets, through cPacketizer. More...
 
cByteBuffer m_OutPacketLenBuffer
 Buffer for composing packet length (so that each cPacketizer instance doesn't allocate a new cPacketBuffer) More...
 

Private Types

using Super = cProtocol_1_8_0
 

Additional Inherited Members

- Public Types inherited from cProtocol
enum class  EntityMetadata {
  EntityFlags , EntityAir , EntityCustomName , EntityCustomNameVisible ,
  EntitySilent , EntityNoGravity , EntityPose , PotionThrown ,
  FallingBlockPosition , AreaEffectCloudRadius , AreaEffectCloudColor , AreaEffectCloudSinglePointEffect ,
  AreaEffectCloudParticleId , AreaEffectCloudParticleParameter1 , AreaEffectCloudParticleParameter2 , ArrowFlags ,
  TippedArrowColor , PiercingLevel , BoatLastHitTime , BoatForwardDirection ,
  BoatDamageTaken , BoatType , BoatLeftPaddleTurning , BoatRightPaddleTurning ,
  BoatSplashTimer , EnderCrystalBeamTarget , EnderCrystalShowBottom , WitherSkullInvulnerable ,
  FireworkInfo , FireworkBoostedEntityId , FireworkFromCrossbow , ItemFrameItem ,
  ItemFrameRotation , ItemItem , LivingActiveHand , LivingHealth ,
  LivingPotionEffectColor , LivingPotionEffectAmbient , LivingNumberOfArrows , PlayerAdditionalHearts ,
  PlayerScore , PlayerDisplayedSkinParts , PlayerMainHand , ArmorStandStatus ,
  ArmorStandHeadRotation , ArmorStandBodyRotation , ArmorStandLeftArmRotation , ArmorStandRightArmRotation ,
  ArmorStandLeftLegRotation , ArmorStandRightLegRotation , InsentientFlags , BatHanging ,
  AgeableIsBaby , AbstractHorseFlags , AbstractHorseOwner , HorseVariant ,
  HorseArmour , ChestedHorseChested , LlamaStrength , LlamaCarpetColor ,
  LlamaVariant , PigHasSaddle , PigTotalCarrotOnAStickBoost , RabbitType ,
  PolarBearStanding , SheepFlags , TameableAnimalFlags , TameableAnimalOwner ,
  ThrowableItem , TridentLoyaltyLevel , OcelotType , WolfDamageTaken ,
  WolfBegging , WolfCollarColour , VillagerProfession , IronGolemPlayerCreated ,
  ShulkerFacingDirection , ShulkerAttachmentFallingBlockPosition , ShulkerShieldHeight , BlazeOnFire ,
  CreeperState , CreeperPowered , CreeperIgnited , GuardianStatus ,
  GuardianTarget , IllagerFlags , SpeIlagerSpell , VexFlags ,
  AbstractSkeletonArmsSwinging , SpiderClimbing , WitchAggresive , WitchDrinking ,
  WitherFirstHeadTarget , WitherSecondHeadTarget , WitherThirdHeadTarget , WitherInvulnerableTimer ,
  ZombieIsBaby , ZombieUnusedWasType , ZombieHandsRisedUp , ZombieVillagerConverting ,
  ZombieVillagerProfession , EndermanCarriedBlock , EndermanScreaming , EnderDragonDragonPhase ,
  GhastAttacking , SlimeSize , MinecartShakingPower , MinecartShakingDirection ,
  MinecartShakingMultiplier , MinecartBlockIDMeta , MinecartBlockY , MinecartShowBlock ,
  MinecartCommandBlockCommand , MinecartCommandBlockLastOutput , MinecartFurnacePowered , MooshroomType ,
  TNTPrimedFuseTime
}
 
enum class  EntityMetadataType {
  Byte , VarInt , Float , String ,
  Chat , OptChat , Item , Boolean ,
  Rotation , Position , OptPosition , Direction ,
  OptUUID , OptBlockID , NBT , Particle ,
  VillagerData , OptVarInt , Pose
}
 
enum  ePacketType {
  pktAttachEntity = 0 , pktBlockAction , pktBlockBreakAnim , pktBlockChange ,
  pktBlockChanges , pktBossBar , pktCameraSetTo , pktChatRaw ,
  pktCollectEntity , pktDestroyEntity , pktDifficulty , pktDisconnectDuringLogin ,
  pktDisconnectDuringGame , pktDisplayObjective , pktEditSign , pktEncryptionRequest ,
  pktEntityAnimation , pktEntityEffect , pktEntityEquipment , pktEntityHeadLook ,
  pktEntityLook , pktEntityMeta , pktEntityProperties , pktEntityRelMove ,
  pktEntityRelMoveLook , pktEntityStatus , pktEntityVelocity , pktExperience ,
  pktExplosion , pktGameMode , pktHeldItemChange , pktHorseWindowOpen ,
  pktInventorySlot , pktJoinGame , pktKeepAlive , pktLeashEntity ,
  pktLoginSuccess , pktMapData , pktParticleEffect , pktPingResponse ,
  pktPlayerAbilities , pktPlayerList , pktPlayerListHeaderFooter , pktPlayerMoveLook ,
  pktPluginMessage , pktRemoveEntityEffect , pktResourcePack , pktRespawn ,
  pktScoreboardObjective , pktSpawnObject , pktSoundEffect , pktSoundParticleEffect ,
  pktSpawnExperienceOrb , pktSpawnGlobalEntity , pktSpawnMob , pktSpawnOtherPlayer ,
  pktSpawnPainting , pktSpawnPosition , pktStartCompression , pktStatistics ,
  pktStatusResponse , pktTabCompletionResults , pktTeleportEntity , pktTimeUpdate ,
  pktTitle , pktUnloadChunk , pktUnlockRecipe , pktUpdateBlockEntity ,
  pktUpdateHealth , pktUpdateScore , pktUpdateSign , pktUseBed ,
  pktWeather , pktWindowItems , pktWindowClose , pktWindowOpen ,
  pktWindowProperty
}
 Logical types of outgoing packets. More...
 
enum  State { Status = 1 , Login = 2 , Game = 3 }
 
enum class  Version {
  v1_8_0 = 47 , v1_9_0 = 107 , v1_9_1 = 108 , v1_9_2 = 109 ,
  v1_9_4 = 110 , v1_10_0 = 210 , v1_11_0 = 315 , v1_11_1 = 316 ,
  v1_12 = 335 , v1_12_1 = 338 , v1_12_2 = 340 , v1_13 = 393 ,
  v1_13_1 = 401 , v1_13_2 = 404 , v1_14 = 477 , v1_14_1 = 480 ,
  v1_14_2 = 485 , v1_14_3 = 490 , v1_14_4 = 498
}
 The protocol version number, received from the client in the Handshake packet. More...
 
- Static Public Member Functions inherited from cProtocol_1_8_0
static void CompressPacket (CircularBufferCompressor &a_Packet, ContiguousByteBuffer &a_Compressed)
 Compress the packet. More...
 
- Static Protected Member Functions inherited from cProtocol_1_8_0
static eBlockFace FaceIntToBlockFace (Int32 a_FaceInt)
 Converts the BlockFace received by the protocol into eBlockFace constants. More...
 

Detailed Description

Definition at line 29 of file Protocol_1_9.h.

Member Typedef Documentation

◆ Super

Definition at line 32 of file Protocol_1_9.h.

Member Enumeration Documentation

◆ eMetadataType

Types used within metadata.

Enumerator
METADATA_TYPE_BYTE 
METADATA_TYPE_VARINT 
METADATA_TYPE_FLOAT 
METADATA_TYPE_STRING 
METADATA_TYPE_CHAT 
METADATA_TYPE_ITEM 
METADATA_TYPE_BOOL 
METADATA_TYPE_ROTATION 
METADATA_TYPE_POSITION 
METADATA_TYPE_OPTIONAL_POSITION 
METADATA_TYPE_DIRECTION 
METADATA_TYPE_OPTIONAL_UUID 
METADATA_TYPE_BLOCKID 

Definition at line 105 of file Protocol_1_9.h.

Constructor & Destructor Documentation

◆ cProtocol_1_9_0()

cProtocol_1_9_0::cProtocol_1_9_0 ( cClientHandle a_Client,
const AString a_ServerAddress,
State  a_State 
)

Definition at line 67 of file Protocol_1_9.cpp.

Member Function Documentation

◆ GetPacketID()

UInt32 cProtocol_1_9_0::GetPacketID ( cProtocol::ePacketType  a_Packet) const
overrideprotectedvirtual

Get the packet ID for a given packet.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_9_4, cProtocol_1_12_1, and cProtocol_1_12.

Definition at line 654 of file Protocol_1_9.cpp.

◆ GetProtocolEntityAnimation()

unsigned char cProtocol_1_9_0::GetProtocolEntityAnimation ( EntityAnimation  a_Animation) const
overrideprotectedvirtual

Converts an animation into an ID suitable for use with the Entity Animation packet.

Returns (uchar)-1 if the protocol version doesn't support this animation.

Reimplemented from cProtocol_1_8_0.

Definition at line 750 of file Protocol_1_9.cpp.

◆ GetProtocolEntityStatus()

signed char cProtocol_1_9_0::GetProtocolEntityStatus ( EntityAnimation  a_Animation) const
overrideprotectedvirtual

Converts an animation into an ID suitable for use with the Entity Status packet.

Returns -1 if the protocol version doesn't support this animation.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_12, and cProtocol_1_11_0.

Definition at line 764 of file Protocol_1_9.cpp.

◆ GetProtocolMobType()

UInt32 cProtocol_1_9_0::GetProtocolMobType ( eMonsterType  a_MobType) const
overrideprotectedvirtual

Converts eMonsterType to protocol-specific mob types.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_12, cProtocol_1_11_0, and cProtocol_1_10_0.

Definition at line 781 of file Protocol_1_9.cpp.

◆ GetProtocolVersion()

cProtocol::Version cProtocol_1_9_0::GetProtocolVersion ( void  ) const
overrideprotectedvirtual

◆ HandleConfirmTeleport()

void cProtocol_1_9_0::HandleConfirmTeleport ( cByteBuffer a_ByteBuffer)
protectedvirtual

Definition at line 968 of file Protocol_1_9.cpp.

◆ HandlePacket()

bool cProtocol_1_9_0::HandlePacket ( cByteBuffer a_ByteBuffer,
UInt32  a_PacketType 
)
overrideprotectedvirtual

Reads and handles the packet.

The packet length and type have already been read. Returns true if the packet was understood, false if it was an unknown packet.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_12_1, and cProtocol_1_12.

Definition at line 803 of file Protocol_1_9.cpp.

◆ HandlePacketAnimation()

void cProtocol_1_9_0::HandlePacketAnimation ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 875 of file Protocol_1_9.cpp.

◆ HandlePacketBlockDig()

void cProtocol_1_9_0::HandlePacketBlockDig ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14.

Definition at line 886 of file Protocol_1_9.cpp.

◆ HandlePacketBlockPlace()

void cProtocol_1_9_0::HandlePacketBlockPlace ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, and cProtocol_1_11_0.

Definition at line 904 of file Protocol_1_9.cpp.

◆ HandlePacketBoatSteer()

void cProtocol_1_9_0::HandlePacketBoatSteer ( cByteBuffer a_ByteBuffer)
protectedvirtual

Definition at line 925 of file Protocol_1_9.cpp.

◆ HandlePacketClientSettings()

void cProtocol_1_9_0::HandlePacketClientSettings ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 948 of file Protocol_1_9.cpp.

◆ HandlePacketEntityAction()

void cProtocol_1_9_0::HandlePacketEntityAction ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 983 of file Protocol_1_9.cpp.

◆ HandlePacketPlayerPos()

void cProtocol_1_9_0::HandlePacketPlayerPos ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 1011 of file Protocol_1_9.cpp.

◆ HandlePacketPlayerPosLook()

void cProtocol_1_9_0::HandlePacketPlayerPosLook ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 1028 of file Protocol_1_9.cpp.

◆ HandlePacketSteerVehicle()

void cProtocol_1_9_0::HandlePacketSteerVehicle ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 1047 of file Protocol_1_9.cpp.

◆ HandlePacketTabComplete()

void cProtocol_1_9_0::HandlePacketTabComplete ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 1071 of file Protocol_1_9.cpp.

◆ HandlePacketUpdateSign()

void cProtocol_1_9_0::HandlePacketUpdateSign ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14.

Definition at line 1089 of file Protocol_1_9.cpp.

◆ HandlePacketUseEntity()

void cProtocol_1_9_0::HandlePacketUseEntity ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 1111 of file Protocol_1_9.cpp.

◆ HandlePacketUseItem()

void cProtocol_1_9_0::HandlePacketUseItem ( cByteBuffer a_ByteBuffer)
protectedvirtual

Definition at line 1155 of file Protocol_1_9.cpp.

◆ HandlePacketVehicleMove()

void cProtocol_1_9_0::HandlePacketVehicleMove ( cByteBuffer a_ByteBuffer)
protectedvirtual

Definition at line 1166 of file Protocol_1_9.cpp.

◆ HandlePacketWindowClick()

void cProtocol_1_9_0::HandlePacketWindowClick ( cByteBuffer a_ByteBuffer)
overrideprotectedvirtual

The slot number that the client uses to indicate "outside the window".

Reimplemented from cProtocol_1_8_0.

Definition at line 1192 of file Protocol_1_9.cpp.

◆ HandleVanillaPluginMessage()

void cProtocol_1_9_0::HandleVanillaPluginMessage ( cByteBuffer a_ByteBuffer,
std::string_view  a_Channel 
)
overrideprotectedvirtual

Parses Vanilla plugin messages into specific ClientHandle calls.

The message payload is still in the bytebuffer, the handler reads it specifically for each handled channel.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_13.

Definition at line 1250 of file Protocol_1_9.cpp.

◆ ParseItemMetadata()

void cProtocol_1_9_0::ParseItemMetadata ( cItem a_Item,
ContiguousByteBufferView  a_Metadata 
) const
overrideprotectedvirtual

Parses item metadata as read by ReadItem(), into the item enchantments.

Reimplemented from cProtocol_1_8_0.

Definition at line 1302 of file Protocol_1_9.cpp.

◆ SendAttachEntity()

void cProtocol_1_9_0::SendAttachEntity ( const cEntity a_Entity,
const cEntity a_Vehicle 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 78 of file Protocol_1_9.cpp.

◆ SendBossBarAdd()

void cProtocol_1_9_0::SendBossBarAdd ( UInt32  a_UniqueID,
const cCompositeChat a_Title,
float  a_FractionFilled,
BossBarColor  a_Color,
BossBarDivisionType  a_DivisionType,
bool  a_DarkenSky,
bool  a_PlayEndMusic,
bool  a_CreateFog 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_13_1.

Definition at line 91 of file Protocol_1_9.cpp.

◆ SendBossBarRemove()

void cProtocol_1_9_0::SendBossBarRemove ( UInt32  a_UniqueID)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 146 of file Protocol_1_9.cpp.

◆ SendBossBarUpdateFlags()

void cProtocol_1_9_0::SendBossBarUpdateFlags ( UInt32  a_UniqueID,
bool  a_DarkenSky,
bool  a_PlayEndMusic,
bool  a_CreateFog 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_13_1.

Definition at line 161 of file Protocol_1_9.cpp.

◆ SendBossBarUpdateHealth()

void cProtocol_1_9_0::SendBossBarUpdateHealth ( UInt32  a_UniqueID,
float  a_FractionFilled 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 188 of file Protocol_1_9.cpp.

◆ SendBossBarUpdateStyle()

void cProtocol_1_9_0::SendBossBarUpdateStyle ( UInt32  a_UniqueID,
BossBarColor  a_Color,
BossBarDivisionType  a_DivisionType 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 204 of file Protocol_1_9.cpp.

◆ SendBossBarUpdateTitle()

void cProtocol_1_9_0::SendBossBarUpdateTitle ( UInt32  a_UniqueID,
const cCompositeChat a_Title 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 245 of file Protocol_1_9.cpp.

◆ SendDetachEntity()

void cProtocol_1_9_0::SendDetachEntity ( const cEntity a_Entity,
const cEntity a_PreviousVehicle 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 261 of file Protocol_1_9.cpp.

◆ SendEntityEquipment()

void cProtocol_1_9_0::SendEntityEquipment ( const cEntity a_Entity,
short  a_SlotNum,
const cItem a_Item 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 273 of file Protocol_1_9.cpp.

◆ SendEntityMetadata()

void cProtocol_1_9_0::SendEntityMetadata ( const cEntity a_Entity)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 292 of file Protocol_1_9.cpp.

◆ SendEntityPosition()

void cProtocol_1_9_0::SendEntityPosition ( const cEntity a_Entity)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 306 of file Protocol_1_9.cpp.

◆ SendEntitySpawn()

void cProtocol_1_9_0::SendEntitySpawn ( const cEntity a_Entity,
const UInt8  a_ObjectType,
const Int32  a_ObjectData 
)
overrideprotectedvirtual

Sends the entity type and entity-dependent data required for the entity to initially spawn.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14.

Definition at line 1506 of file Protocol_1_9.cpp.

◆ SendExperienceOrb()

void cProtocol_1_9_0::SendExperienceOrb ( const cExpOrb a_ExpOrb)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 363 of file Protocol_1_9.cpp.

◆ SendKeepAlive()

void cProtocol_1_9_0::SendKeepAlive ( UInt32  a_PingID)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_12_2.

Definition at line 379 of file Protocol_1_9.cpp.

◆ SendLeashEntity()

void cProtocol_1_9_0::SendLeashEntity ( const cEntity a_Entity,
const cEntity a_EntityLeashedTo 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 396 of file Protocol_1_9.cpp.

◆ SendMapData()

void cProtocol_1_9_0::SendMapData ( const cMap a_Map,
int  a_DataStartX,
int  a_DataStartY 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, and cProtocol_1_13.

Definition at line 441 of file Protocol_1_9.cpp.

◆ SendPaintingSpawn()

void cProtocol_1_9_0::SendPaintingSpawn ( const cPainting a_Painting)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, and cProtocol_1_13.

Definition at line 420 of file Protocol_1_9.cpp.

◆ SendPlayerMoveLook() [1/2]

void cProtocol_1_9_0::SendPlayerMoveLook ( Vector3d  a_Pos,
float  a_Yaw,
float  a_Pitch,
bool  a_IsRelative 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 473 of file Protocol_1_9.cpp.

◆ SendPlayerMoveLook() [2/2]

void cProtocol_1_9_0::SendPlayerMoveLook ( void  )
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 505 of file Protocol_1_9.cpp.

◆ SendPlayerPermissionLevel()

void cProtocol_1_9_0::SendPlayerPermissionLevel ( void  )
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 515 of file Protocol_1_9.cpp.

◆ SendPlayerSpawn()

void cProtocol_1_9_0::SendPlayerSpawn ( const cPlayer a_Player)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 551 of file Protocol_1_9.cpp.

◆ SendSoundEffect()

void cProtocol_1_9_0::SendSoundEffect ( const AString a_SoundName,
Vector3d  a_Origin,
float  a_Volume,
float  a_Pitch 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_10_0.

Definition at line 571 of file Protocol_1_9.cpp.

◆ SendSpawnMob()

void cProtocol_1_9_0::SendSpawnMob ( const cMonster a_Mob)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_11_0.

Definition at line 589 of file Protocol_1_9.cpp.

◆ SendThunderbolt()

void cProtocol_1_9_0::SendThunderbolt ( Vector3i  a_Origin)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 625 of file Protocol_1_9.cpp.

◆ SendUnleashEntity()

void cProtocol_1_9_0::SendUnleashEntity ( const cEntity a_Entity)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 408 of file Protocol_1_9.cpp.

◆ SendUnloadChunk()

void cProtocol_1_9_0::SendUnloadChunk ( int  a_ChunkX,
int  a_ChunkZ 
)
overridevirtual

Reimplemented from cProtocol_1_8_0.

Definition at line 641 of file Protocol_1_9.cpp.

◆ WriteBlockEntity()

void cProtocol_1_9_0::WriteBlockEntity ( cFastNBTWriter a_Writer,
const cBlockEntity a_BlockEntity 
) const
overrideprotectedvirtual

Writes the block entity data for the specified block entity into the packet.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_11_0.

Definition at line 1533 of file Protocol_1_9.cpp.

◆ WriteEntityMetadata()

void cProtocol_1_9_0::WriteEntityMetadata ( cPacketizer a_Pkt,
const cEntity a_Entity 
) const
overrideprotectedvirtual

Writes the metadata for the specified entity, not including the terminating 0x7f.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_12, cProtocol_1_11_0, and cProtocol_1_10_0.

Definition at line 1556 of file Protocol_1_9.cpp.

◆ WriteItem()

void cProtocol_1_9_0::WriteItem ( cPacketizer a_Pkt,
const cItem a_Item 
) const
overrideprotectedvirtual

Writes the item data into a packet.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_13_2, and cProtocol_1_13.

Definition at line 1778 of file Protocol_1_9.cpp.

◆ WriteMobMetadata()

void cProtocol_1_9_0::WriteMobMetadata ( cPacketizer a_Pkt,
const cMonster a_Mob 
) const
overrideprotectedvirtual

Writes the mob-specific metadata for the specified mob.

Reimplemented from cProtocol_1_8_0.

Reimplemented in cProtocol_1_14, cProtocol_1_13, cProtocol_1_12, cProtocol_1_11_0, and cProtocol_1_10_0.

Definition at line 1948 of file Protocol_1_9.cpp.

Member Data Documentation

◆ m_IsTeleportIdConfirmed

bool cProtocol_1_9_0::m_IsTeleportIdConfirmed
protected

The current teleport ID.

Definition at line 67 of file Protocol_1_9.h.

◆ m_OutstandingTeleportId

UInt32 cProtocol_1_9_0::m_OutstandingTeleportId
protected

Whether the current teleport ID has been confirmed by the client.

Definition at line 70 of file Protocol_1_9.h.


The documentation for this class was generated from the following files: