From 21bcb2a7578e6b25faadda89345684871c7144aa Mon Sep 17 00:00:00 2001 From: Simon Pribylski <66266021+Persson-dev@users.noreply.github.com> Date: Wed, 20 Apr 2022 12:21:30 +0200 Subject: Improving 1.14 support (#5388) * Fixing login * Add basic 1.14 support * Adding pktHorseWindowOpen to PacketTypeToStr * Fixing build with clang * Fixing inventories * Add entities metadata * Add particles * Fixing style * Fixing build with clang-tidy * fixing build --- src/Protocol/Protocol_1_14.h | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/Protocol/Protocol_1_14.h') diff --git a/src/Protocol/Protocol_1_14.h b/src/Protocol/Protocol_1_14.h index 2effea504..a5813819b 100644 --- a/src/Protocol/Protocol_1_14.h +++ b/src/Protocol/Protocol_1_14.h @@ -32,19 +32,29 @@ protected: 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 SendEditSign (Vector3i a_BlockPos) override; ///< Request the client to open up the sign editor for the sign (1.6+) virtual void SendEntityAnimation (const cEntity & a_Entity, EntityAnimation a_Animation) override; + virtual void SendEntitySpawn (const cEntity & a_Entity, const UInt8 a_ObjectType, const Int32 a_ObjectData) override; virtual void SendLogin (const cPlayer & a_Player, const cWorld & a_World) 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 SendParticleEffect (const AString & a_ParticleName, Vector3f a_Src, Vector3f a_Offset, float a_ParticleData, int a_ParticleAmount, std::array a_Data) override; + virtual void SendRespawn (eDimension a_Dimension) override; virtual void SendSoundParticleEffect (const EffectID a_EffectID, Vector3i a_Origin, int a_Data) 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 SendWindowOpen (const cWindow & a_Window) override; + virtual UInt8 GetEntityMetadataID(EntityMetadata a_Metadata) const override; virtual UInt32 GetPacketID(ePacketType a_PacketType) const override; virtual std::pair GetItemFromProtocolID(UInt32 a_ProtocolID) const override; virtual UInt32 GetProtocolBlockType(BLOCKTYPE a_BlockType, NIBBLETYPE a_Meta) const override; virtual signed char GetProtocolEntityStatus(EntityAnimation a_Animation) const override; + virtual UInt8 GetProtocolEntityType(const cEntity & a_Entity) const override; virtual UInt32 GetProtocolItemType(short a_ItemID, short a_ItemDamage) const override; + virtual UInt32 GetProtocolMobType(eMonsterType a_MobType) const override; + virtual int GetProtocolParticleID(const AString & a_ParticleName) const override; virtual UInt32 GetProtocolStatisticType(CustomStatistic a_Statistic) const override; virtual Version GetProtocolVersion() const override; @@ -53,6 +63,7 @@ protected: virtual void HandlePacketBlockPlace(cByteBuffer & a_ByteBuffer) override; virtual void HandlePacketUpdateSign(cByteBuffer & a_ByteBuffer) override; - virtual void WriteEntityMetadata(cPacketizer & a_Pkt, const cEntity & a_Entity) const override {} - virtual void WriteMobMetadata(cPacketizer & a_Pkt, const cMonster & a_Mob) const override {} + virtual void WriteEntityMetadata(cPacketizer & a_Pkt, EntityMetadata a_Metadata, EntityMetadataType a_FieldType) const override; + virtual void WriteEntityMetadata(cPacketizer & a_Pkt, const cEntity & a_Entity) const override; + virtual void WriteMobMetadata(cPacketizer & a_Pkt, const cMonster & a_Mob) const override; }; -- cgit v1.2.3