summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormjagdis <mjagdis@eris-associates.co.uk>2024-06-30 14:12:03 +0200
committerGitHub <noreply@github.com>2024-06-30 14:12:03 +0200
commitc6c32bc2ed53e0d72614a06d5c2b0580926b2f95 (patch)
treef4c08dfbffc993034c24b458e369cad6f8e8ed97
parentSet TCP_NODELAY on connections (#5558) (diff)
downloadcuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar.gz
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar.bz2
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar.lz
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar.xz
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.tar.zst
cuberite-c6c32bc2ed53e0d72614a06d5c2b0580926b2f95.zip
-rw-r--r--src/Protocol/Protocol_1_13.cpp6
-rw-r--r--src/Protocol/Protocol_1_14.cpp7
2 files changed, 11 insertions, 2 deletions
diff --git a/src/Protocol/Protocol_1_13.cpp b/src/Protocol/Protocol_1_13.cpp
index eb452ec79..8bffe0f85 100644
--- a/src/Protocol/Protocol_1_13.cpp
+++ b/src/Protocol/Protocol_1_13.cpp
@@ -900,7 +900,11 @@ void cProtocol_1_13::WriteEntityMetadata(cPacketizer & a_Pkt, const cEntity & a_
case cEntity::etItemFrame:
{
- // TODO
+ const auto & Frame = static_cast<const cItemFrame &>(a_Entity);
+ WriteEntityMetadata(a_Pkt, EntityMetadata::ItemFrameItem, EntityMetadataType::Item);
+ WriteItem(a_Pkt, Frame.GetItem());
+ WriteEntityMetadata(a_Pkt, EntityMetadata::ItemFrameRotation, EntityMetadataType::VarInt);
+ a_Pkt.WriteVarInt32(Frame.GetItemRotation());
break;
} // case etItemFrame
diff --git a/src/Protocol/Protocol_1_14.cpp b/src/Protocol/Protocol_1_14.cpp
index 4b306a2c3..beb929ce3 100644
--- a/src/Protocol/Protocol_1_14.cpp
+++ b/src/Protocol/Protocol_1_14.cpp
@@ -19,6 +19,7 @@ Implements the 1.14 protocol classes:
#include "../BlockEntities/BlockEntity.h"
#include "../Entities/ArrowEntity.h"
+#include "../Entities/ItemFrame.h"
#include "../Mobs/Bat.h"
#include "../Entities/Boat.h"
#include "../Mobs/Chicken.h"
@@ -1213,7 +1214,11 @@ void cProtocol_1_14::WriteEntityMetadata(cPacketizer & a_Pkt, const cEntity & a_
case cEntity::etItemFrame:
{
- // TODO
+ const auto & Frame = static_cast<const cItemFrame &>(a_Entity);
+ WriteEntityMetadata(a_Pkt, EntityMetadata::ItemFrameItem, EntityMetadataType::Item);
+ WriteItem(a_Pkt, Frame.GetItem());
+ WriteEntityMetadata(a_Pkt, EntityMetadata::ItemFrameRotation, EntityMetadataType::VarInt);
+ a_Pkt.WriteVarInt32(Frame.GetItemRotation());
break;
} // case etItemFrame