diff options
author | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2013-09-08 01:14:57 +0200 |
---|---|---|
committer | Tiger Wang <ziwei.tiger@hotmail.co.uk> | 2013-09-08 01:14:57 +0200 |
commit | c789a8ddf5840cf7861c73536279da8bbd9281c3 (patch) | |
tree | b310df7724901b570d442039f196b073a1397fd3 /source/WorldStorage/WSSAnvil.cpp | |
parent | Implemented SteerVehicle packet. (diff) | |
download | cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar.gz cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar.bz2 cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar.lz cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar.xz cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.tar.zst cuberite-c789a8ddf5840cf7861c73536279da8bbd9281c3.zip |
Diffstat (limited to 'source/WorldStorage/WSSAnvil.cpp')
-rw-r--r-- | source/WorldStorage/WSSAnvil.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/source/WorldStorage/WSSAnvil.cpp b/source/WorldStorage/WSSAnvil.cpp index 3ab64148e..3d69fe5ef 100644 --- a/source/WorldStorage/WSSAnvil.cpp +++ b/source/WorldStorage/WSSAnvil.cpp @@ -23,6 +23,7 @@ #include "../OSSupport/MakeDir.h" #include "FastNBT.h" #include "../Mobs/Monster.h" +#include "../Entities/Boat.h" #include "../Entities/FallingBlock.h" #include "../Entities/Minecart.h" #include "../Entities/Pickup.h" @@ -911,7 +912,11 @@ void cWSSAnvil::LoadSignFromNBT(cBlockEntityList & a_BlockEntities, const cParse void cWSSAnvil::LoadEntityFromNBT(cEntityList & a_Entities, const cParsedNBT & a_NBT, int a_EntityTagIdx, const char * a_IDTag, int a_IDTagLength) { - if (strncmp(a_IDTag, "FallingBlock", a_IDTagLength) == 0) + if (strncmp(a_IDTag, "Boat", a_IDTagLength) == 0) + { + LoadBoatFromNBT(a_Entities, a_NBT, a_EntityTagIdx); + } + else if (strncmp(a_IDTag, "FallingBlock", a_IDTagLength) == 0) { LoadFallingBlockFromNBT(a_Entities, a_NBT, a_EntityTagIdx); } @@ -967,6 +972,20 @@ void cWSSAnvil::LoadEntityFromNBT(cEntityList & a_Entities, const cParsedNBT & a +void cWSSAnvil::LoadBoatFromNBT(cEntityList & a_Entities, const cParsedNBT & a_NBT, int a_TagIdx) +{ + std::auto_ptr<cBoat> Boat(new cBoat(0, 0, 0)); + if (!LoadEntityBaseFromNBT(*Boat.get(), a_NBT, a_TagIdx)) + { + return; + } + a_Entities.push_back(Boat.release()); +} + + + + + void cWSSAnvil::LoadFallingBlockFromNBT(cEntityList & a_Entities, const cParsedNBT & a_NBT, int a_TagIdx) { // TODO |