summaryrefslogtreecommitdiffstats
path: root/src/WorldStorage/NBTChunkSerializer.cpp
diff options
context:
space:
mode:
authorHowaner <franzi.moos@googlemail.com>2014-02-17 20:14:08 +0100
committerTheJumper <maximilian.springer@web.de>2014-02-23 19:50:50 +0100
commitab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2 (patch)
treee4b50b198e8e869a7e8955110a121329ffaf1ac5 /src/WorldStorage/NBTChunkSerializer.cpp
parentMerge pull request #694 from mc-server/itemframes (diff)
downloadcuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar.gz
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar.bz2
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar.lz
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar.xz
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.tar.zst
cuberite-ab2eba17ec36e5d906d0a45e33b8c7d59e19d4e2.zip
Diffstat (limited to 'src/WorldStorage/NBTChunkSerializer.cpp')
-rw-r--r--src/WorldStorage/NBTChunkSerializer.cpp26
1 files changed, 21 insertions, 5 deletions
diff --git a/src/WorldStorage/NBTChunkSerializer.cpp b/src/WorldStorage/NBTChunkSerializer.cpp
index c7aaa2633..e1a986d04 100644
--- a/src/WorldStorage/NBTChunkSerializer.cpp
+++ b/src/WorldStorage/NBTChunkSerializer.cpp
@@ -19,6 +19,7 @@
#include "../BlockEntities/JukeboxEntity.h"
#include "../BlockEntities/NoteEntity.h"
#include "../BlockEntities/SignEntity.h"
+#include "../BlockEntities/SkullEntity.h"
#include "../Entities/Entity.h"
#include "../Entities/FallingBlock.h"
@@ -248,11 +249,25 @@ void cNBTChunkSerializer::AddCommandBlockEntity(cCommandBlockEntity * a_CmdBlock
void cNBTChunkSerializer::AddSignEntity(cSignEntity * a_Sign)
{
m_Writer.BeginCompound("");
- AddBasicTileEntity(a_Sign, "Sign");
- m_Writer.AddString("Text1", a_Sign->GetLine(0));
- m_Writer.AddString("Text2", a_Sign->GetLine(1));
- m_Writer.AddString("Text3", a_Sign->GetLine(2));
- m_Writer.AddString("Text4", a_Sign->GetLine(3));
+ AddBasicTileEntity(a_Sign, "Sign");
+ m_Writer.AddString("Text1", a_Sign->GetLine(0));
+ m_Writer.AddString("Text2", a_Sign->GetLine(1));
+ m_Writer.AddString("Text3", a_Sign->GetLine(2));
+ m_Writer.AddString("Text4", a_Sign->GetLine(3));
+ m_Writer.EndCompound();
+}
+
+
+
+
+
+void cNBTChunkSerializer::AddSkullEntity(cSkullEntity * a_Skull)
+{
+ m_Writer.BeginCompound("");
+ AddBasicTileEntity(a_Skull, "Skull");
+ m_Writer.AddByte ("SkullType", a_Skull->GetSkullType() & 0xFF);
+ m_Writer.AddByte ("Rot", a_Skull->GetRotation() & 0xFF);
+ m_Writer.AddString("ExtraType", a_Skull->GetOwner());
m_Writer.EndCompound();
}
@@ -668,6 +683,7 @@ void cNBTChunkSerializer::BlockEntity(cBlockEntity * a_Entity)
case E_BLOCK_HOPPER: AddHopperEntity ((cHopperEntity *) a_Entity); break;
case E_BLOCK_SIGN_POST:
case E_BLOCK_WALLSIGN: AddSignEntity ((cSignEntity *) a_Entity); break;
+ case E_BLOCK_HEAD: AddSkullEntity ((cSkullEntity *) a_Entity); break;
case E_BLOCK_NOTE_BLOCK: AddNoteEntity ((cNoteEntity *) a_Entity); break;
case E_BLOCK_JUKEBOX: AddJukeboxEntity ((cJukeboxEntity *) a_Entity); break;
case E_BLOCK_COMMAND_BLOCK: AddCommandBlockEntity((cCommandBlockEntity *) a_Entity); break;