diff options
author | worktycho <work.tycho@gmail.com> | 2016-01-12 00:52:25 +0100 |
---|---|---|
committer | worktycho <work.tycho@gmail.com> | 2016-01-12 00:52:25 +0100 |
commit | 7aa0b7299dad299a0b980d66793f43c70ecdd55f (patch) | |
tree | 3653367aaab3ddaeee96b5c3f9c3c6ed6d4bb9fd /src/Protocol | |
parent | Merge pull request #2848 from Nakkar/master (diff) | |
parent | Changed the format of the MobHead data to allow MobHeads working on MInecraft 1.8 (diff) | |
download | cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar.gz cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar.bz2 cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar.lz cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar.xz cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.tar.zst cuberite-7aa0b7299dad299a0b980d66793f43c70ecdd55f.zip |
Diffstat (limited to 'src/Protocol')
-rw-r--r-- | src/Protocol/Protocol17x.cpp | 2 | ||||
-rw-r--r-- | src/Protocol/Protocol18x.cpp | 15 |
2 files changed, 15 insertions, 2 deletions
diff --git a/src/Protocol/Protocol17x.cpp b/src/Protocol/Protocol17x.cpp index 010e1a8ba..1c8c81bbd 100644 --- a/src/Protocol/Protocol17x.cpp +++ b/src/Protocol/Protocol17x.cpp @@ -2784,7 +2784,7 @@ void cProtocol172::WriteBlockEntity(cPacketizer & a_Pkt, const cBlockEntity & a_ Writer.AddInt("z", MobHeadEntity.GetPosZ()); Writer.AddByte("SkullType", MobHeadEntity.GetType() & 0xFF); Writer.AddByte("Rot", MobHeadEntity.GetRotation() & 0xFF); - Writer.AddString("ExtraType", MobHeadEntity.GetOwner().c_str()); + Writer.AddString("ExtraType", MobHeadEntity.GetOwnerName()); Writer.AddString("id", "Skull"); // "Tile Entity ID" - MC wiki; vanilla server always seems to send this though break; } diff --git a/src/Protocol/Protocol18x.cpp b/src/Protocol/Protocol18x.cpp index d80e9d034..c80907ed8 100644 --- a/src/Protocol/Protocol18x.cpp +++ b/src/Protocol/Protocol18x.cpp @@ -3109,8 +3109,21 @@ void cProtocol180::WriteBlockEntity(cPacketizer & a_Pkt, const cBlockEntity & a_ Writer.AddInt("z", MobHeadEntity.GetPosZ()); Writer.AddByte("SkullType", MobHeadEntity.GetType() & 0xFF); Writer.AddByte("Rot", MobHeadEntity.GetRotation() & 0xFF); - Writer.AddString("ExtraType", MobHeadEntity.GetOwner().c_str()); Writer.AddString("id", "Skull"); // "Tile Entity ID" - MC wiki; vanilla server always seems to send this though + + // The new Block Entity format for a Mob Head. See: http://minecraft.gamepedia.com/Head#Block_entity + Writer.BeginCompound("Owner"); + Writer.AddString("Id", MobHeadEntity.GetOwnerUUID()); + Writer.AddString("Name", MobHeadEntity.GetOwnerName()); + Writer.BeginCompound("Properties"); + Writer.BeginList("textures", TAG_Compound); + Writer.BeginCompound(""); + Writer.AddString("Signature", MobHeadEntity.GetOwnerTextureSignature()); + Writer.AddString("Value", MobHeadEntity.GetOwnerTexture()); + Writer.EndCompound(); + Writer.EndList(); + Writer.EndCompound(); + Writer.EndCompound(); break; } |