summaryrefslogtreecommitdiffstats
path: root/src/WorldStorage
diff options
context:
space:
mode:
authorTycho <work.tycho+git@gmail.com>2014-02-02 18:11:53 +0100
committerTycho <work.tycho+git@gmail.com>2014-02-02 18:11:53 +0100
commit1e4e6c4619696e95b7b3f19650fe32c6a42d18b6 (patch)
tree9e8416c008a2e8b4f5f86d30de0224f9021b40a1 /src/WorldStorage
parentRemoved register keyword from Messinne Twister (diff)
parentFixed dark oak and acacia placement. (diff)
downloadcuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar.gz
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar.bz2
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar.lz
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar.xz
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.tar.zst
cuberite-1e4e6c4619696e95b7b3f19650fe32c6a42d18b6.zip
Diffstat (limited to 'src/WorldStorage')
-rw-r--r--src/WorldStorage/NBTChunkSerializer.cpp4
-rw-r--r--src/WorldStorage/WSSAnvil.cpp18
2 files changed, 21 insertions, 1 deletions
diff --git a/src/WorldStorage/NBTChunkSerializer.cpp b/src/WorldStorage/NBTChunkSerializer.cpp
index 9c454c028..c6250f393 100644
--- a/src/WorldStorage/NBTChunkSerializer.cpp
+++ b/src/WorldStorage/NBTChunkSerializer.cpp
@@ -455,7 +455,9 @@ void cNBTChunkSerializer::AddMonsterEntity(cMonster * a_Monster)
case cMonster::mtWolf:
{
m_Writer.AddString("Owner", ((const cWolf *)a_Monster)->GetOwner());
- m_Writer.AddByte("Sitting", ((const cWolf *)a_Monster)->IsSitting());
+ m_Writer.AddByte("Sitting", (((const cWolf *)a_Monster)->IsSitting() ? 1 : 0));
+ m_Writer.AddByte("Angry", (((const cWolf *)a_Monster)->IsAngry() ? 1 : 0));
+ m_Writer.AddInt("CollarColor", ((const cWolf *)a_Monster)->GetCollarColor());
break;
}
case cMonster::mtZombie:
diff --git a/src/WorldStorage/WSSAnvil.cpp b/src/WorldStorage/WSSAnvil.cpp
index 02396bb16..d72165c46 100644
--- a/src/WorldStorage/WSSAnvil.cpp
+++ b/src/WorldStorage/WSSAnvil.cpp
@@ -1886,6 +1886,24 @@ void cWSSAnvil::LoadWolfFromNBT(cEntityList & a_Entities, const cParsedNBT & a_N
Monster->SetIsTame(true);
}
}
+ int SittingIdx = a_NBT.FindChildByName(a_TagIdx, "Sitting");
+ if (SittingIdx > 0)
+ {
+ bool Sitting = ((a_NBT.GetByte(SittingIdx) == 1) ? true : false);
+ Monster->SetIsSitting(Sitting);
+ }
+ int AngryIdx = a_NBT.FindChildByName(a_TagIdx, "Angry");
+ if (AngryIdx > 0)
+ {
+ bool Angry = ((a_NBT.GetByte(AngryIdx) == 1) ? true : false);
+ Monster->SetIsAngry(Angry);
+ }
+ int CollarColorIdx = a_NBT.FindChildByName(a_TagIdx, "CollarColor");
+ if (CollarColorIdx > 0)
+ {
+ int CollarColor = a_NBT.GetInt(CollarColorIdx);
+ Monster->SetCollarColor(CollarColor);
+ }
a_Entities.push_back(Monster.release());
}