summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-01-31 16:32:38 +0100
committerMattes D <github@xoft.cz>2014-01-31 16:32:38 +0100
commit617c5b1fff61fea40ceb8816cf4f9b7f117dc22b (patch)
treef09ddd64be314767fe8e62c13c08c6955ff0f9df
parentFixed cLineBlockTracer:Trace() signature. (diff)
parentInversed condition. (diff)
downloadcuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar.gz
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar.bz2
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar.lz
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar.xz
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.tar.zst
cuberite-617c5b1fff61fea40ceb8816cf4f9b7f117dc22b.zip
Diffstat (limited to '')
-rw-r--r--src/WorldStorage/NBTChunkSerializer.cpp4
-rw-r--r--src/WorldStorage/WSSAnvil.cpp11
2 files changed, 12 insertions, 3 deletions
diff --git a/src/WorldStorage/NBTChunkSerializer.cpp b/src/WorldStorage/NBTChunkSerializer.cpp
index e46a28caa..9c454c028 100644
--- a/src/WorldStorage/NBTChunkSerializer.cpp
+++ b/src/WorldStorage/NBTChunkSerializer.cpp
@@ -454,8 +454,8 @@ void cNBTChunkSerializer::AddMonsterEntity(cMonster * a_Monster)
}
case cMonster::mtWolf:
{
- // TODO:
- // _X: CopyPasta error: m_Writer.AddInt("Profession", ((const cVillager *)a_Monster)->GetVilType());
+ m_Writer.AddString("Owner", ((const cWolf *)a_Monster)->GetOwner());
+ m_Writer.AddByte("Sitting", ((const cWolf *)a_Monster)->IsSitting());
break;
}
case cMonster::mtZombie:
diff --git a/src/WorldStorage/WSSAnvil.cpp b/src/WorldStorage/WSSAnvil.cpp
index a0f9136d8..02396bb16 100644
--- a/src/WorldStorage/WSSAnvil.cpp
+++ b/src/WorldStorage/WSSAnvil.cpp
@@ -1876,7 +1876,16 @@ void cWSSAnvil::LoadWolfFromNBT(cEntityList & a_Entities, const cParsedNBT & a_N
{
return;
}
-
+ int OwnerIdx = a_NBT.FindChildByName(a_TagIdx, "Owner");
+ if (OwnerIdx > 0)
+ {
+ AString OwnerName = a_NBT.GetString(OwnerIdx);
+ if (OwnerName != "")
+ {
+ Monster->SetOwner(OwnerName);
+ Monster->SetIsTame(true);
+ }
+ }
a_Entities.push_back(Monster.release());
}