Cuberite
A lightweight, fast and extensible game server for Minecraft
|
The version 109 protocol, used by 1.9.2. More...
#include <Protocol_1_9.h>
Protected Member Functions | |
virtual Version | GetProtocolVersion () const override |
Returns the protocol version. More... | |
Protected Member Functions inherited from cProtocol_1_9_1 | |
virtual void | SendLogin (const cPlayer &a_Player, const cWorld &a_World) override |
Protected Member Functions inherited from cProtocol_1_9_0 | |
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 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... | |
Private Types | |
using | Super = cProtocol_1_9_1 |
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... | |
Public Member Functions inherited from cProtocol_1_9_0 | |
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 | 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 () |
Static Public Member Functions inherited from cProtocol_1_8_0 | |
static void | CompressPacket (CircularBufferCompressor &a_Packet, ContiguousByteBuffer &a_Compressed) |
Compress the packet. More... | |
Protected Types inherited from cProtocol_1_9_0 | |
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... | |
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... | |
Protected Attributes inherited from cProtocol_1_9_0 | |
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 | |
cClientHandle * | m_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... | |
The version 109 protocol, used by 1.9.2.
Same as 1.9.1, except the server list ping version number changed with the protocol number.
Definition at line 149 of file Protocol_1_9.h.
|
private |
Definition at line 152 of file Protocol_1_9.h.
|
overrideprotectedvirtual |
Returns the protocol version.
Reimplemented from cProtocol_1_9_1.
Reimplemented in cProtocol_1_9_4, cProtocol_1_14_4, cProtocol_1_14_3, cProtocol_1_14_2, cProtocol_1_14_1, cProtocol_1_14, cProtocol_1_13_2, cProtocol_1_13_1, cProtocol_1_13, cProtocol_1_12_2, cProtocol_1_12_1, cProtocol_1_12, cProtocol_1_11_1, cProtocol_1_11_0, and cProtocol_1_10_0.
Definition at line 2405 of file Protocol_1_9.cpp.