summaryrefslogtreecommitdiffstats
path: root/src/WorldStorage
diff options
context:
space:
mode:
authorLukas Pioch <lukas@zgow.de>2017-05-05 11:58:21 +0200
committerLukas Pioch <lukas@zgow.de>2017-05-08 06:30:54 +0200
commit41bfb22834f0cd13166914b35d4616f21f3c99df (patch)
treeedb3ed8e3ef8b0258d4522a2f3202cc9aa09521d /src/WorldStorage
parentAdjusted RipeMeta for off by one error (#3691) (diff)
downloadcuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar.gz
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar.bz2
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar.lz
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar.xz
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.tar.zst
cuberite-41bfb22834f0cd13166914b35d4616f21f3c99df.zip
Diffstat (limited to 'src/WorldStorage')
-rw-r--r--src/WorldStorage/NBTChunkSerializer.cpp1
-rwxr-xr-xsrc/WorldStorage/WSSAnvil.cpp12
2 files changed, 11 insertions, 2 deletions
diff --git a/src/WorldStorage/NBTChunkSerializer.cpp b/src/WorldStorage/NBTChunkSerializer.cpp
index 6797d196a..e00e7aa3c 100644
--- a/src/WorldStorage/NBTChunkSerializer.cpp
+++ b/src/WorldStorage/NBTChunkSerializer.cpp
@@ -205,6 +205,7 @@ void cNBTChunkSerializer::AddBrewingstandEntity(cBrewingstandEntity * a_Brewings
AddItemGrid(a_Brewingstand->GetContents());
m_Writer.EndList();
m_Writer.AddShort("BrewTime", a_Brewingstand->GetTimeBrewed());
+ m_Writer.AddShort("Fuel", a_Brewingstand->GetRemainingFuel());
m_Writer.EndCompound();
}
diff --git a/src/WorldStorage/WSSAnvil.cpp b/src/WorldStorage/WSSAnvil.cpp
index 54ee5b1da..971c6d88c 100755
--- a/src/WorldStorage/WSSAnvil.cpp
+++ b/src/WorldStorage/WSSAnvil.cpp
@@ -944,6 +944,14 @@ cBlockEntity * cWSSAnvil::LoadBrewingstandFromNBT(const cParsedNBT & a_NBT, int
std::unique_ptr<cBrewingstandEntity> Brewingstand(new cBrewingstandEntity(a_BlockX, a_BlockY, a_BlockZ, a_BlockType, a_BlockMeta, m_World));
+ // Fuel has to be loaded at first, because of slot events:
+ int Fuel = a_NBT.FindChildByName(a_TagIdx, "Fuel");
+ if (Fuel >= 0)
+ {
+ Int16 tb = a_NBT.GetShort(Fuel);
+ Brewingstand->SetRemainingFuel(tb);
+ }
+
// Load slots:
for (int Child = a_NBT.GetFirstChild(Items); Child != -1; Child = a_NBT.GetNextSibling(Child))
{
@@ -964,11 +972,11 @@ cBlockEntity * cWSSAnvil::LoadBrewingstandFromNBT(const cParsedNBT & a_NBT, int
if (BrewTime >= 0)
{
Int16 tb = a_NBT.GetShort(BrewTime);
- Brewingstand->setTimeBrewed(tb);
+ Brewingstand->SetTimeBrewed(tb);
}
// Restart brewing:
- Brewingstand->GetRecipes();
+ Brewingstand->LoadRecipes();
Brewingstand->ContinueBrewing();
return Brewingstand.release();
}