Fixed Compiling Issues
This commit is contained in:
parent
1afcc255bf
commit
72dd48f7e7
@ -407,6 +407,8 @@ void cNBTChunkSerializer::AddMonsterEntity(cMonster * a_Monster)
|
|||||||
}
|
}
|
||||||
} // switch (payload)
|
} // switch (payload)
|
||||||
|
|
||||||
|
m_Writer.BeginCompound("");
|
||||||
|
AddBasicEntity(a_Monster, EntityClass);
|
||||||
m_Writer.BeginList("DropChances", TAG_Float);
|
m_Writer.BeginList("DropChances", TAG_Float);
|
||||||
m_Writer.AddFloat("", a_Monster->GetDropChanceWeapon());
|
m_Writer.AddFloat("", a_Monster->GetDropChanceWeapon());
|
||||||
m_Writer.AddFloat("", a_Monster->GetDropChanceHelmet());
|
m_Writer.AddFloat("", a_Monster->GetDropChanceHelmet());
|
||||||
@ -414,9 +416,6 @@ void cNBTChunkSerializer::AddMonsterEntity(cMonster * a_Monster)
|
|||||||
m_Writer.AddFloat("", a_Monster->GetDropChanceLeggings());
|
m_Writer.AddFloat("", a_Monster->GetDropChanceLeggings());
|
||||||
m_Writer.AddFloat("", a_Monster->GetDropChanceBoots());
|
m_Writer.AddFloat("", a_Monster->GetDropChanceBoots());
|
||||||
m_Writer.EndList();
|
m_Writer.EndList();
|
||||||
|
|
||||||
m_Writer.BeginCompound("");
|
|
||||||
AddBasicEntity(a_Monster, EntityClass);
|
|
||||||
switch (a_Monster->GetMobType())
|
switch (a_Monster->GetMobType())
|
||||||
{
|
{
|
||||||
case cMonster::mtBat:
|
case cMonster::mtBat:
|
||||||
|
@ -2167,10 +2167,10 @@ bool cWSSAnvil::LoadEntityBaseFromNBT(cEntity & a_Entity, const cParsedNBT & a_N
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool LoadMonsterBaseFromNBT(cMonster & a_Monster, const cParsedNBT & a_NBT, int a_TagIdx)
|
bool cWSSAnvil::LoadMonsterBaseFromNBT(cMonster & a_Monster, const cParsedNBT & a_NBT, int a_TagIdx)
|
||||||
{
|
{
|
||||||
float DropChance[5];
|
float DropChance[5];
|
||||||
if (!LoadDoublesListFromNBT(DropChance, 5, a_NBT, a_NBT.FindChildByName(a_TagIdx, "DropChance")))
|
if (!LoadFloatsListFromNBT(DropChance, 5, a_NBT, a_NBT.FindChildByName(a_TagIdx, "DropChance")))
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@ -2228,6 +2228,24 @@ bool cWSSAnvil::LoadDoublesListFromNBT(double * a_Doubles, int a_NumDoubles, con
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
bool cWSSAnvil::LoadFloatsListFromNBT(float * a_Floats, int a_NumFloats, const cParsedNBT & a_NBT, int a_TagIdx)
|
||||||
|
{
|
||||||
|
if ((a_TagIdx < 0) || (a_NBT.GetType(a_TagIdx) != TAG_List) || (a_NBT.GetChildrenType(a_TagIdx) != TAG_Float))
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
int idx = 0;
|
||||||
|
for (int Tag = a_NBT.GetFirstChild(a_TagIdx); (Tag > 0) && (idx < a_NumFloats); Tag = a_NBT.GetNextSibling(Tag), ++idx)
|
||||||
|
{
|
||||||
|
a_Floats[idx] = a_NBT.GetFloat(Tag);
|
||||||
|
} // for Tag - PosTag[]
|
||||||
|
return (idx == a_NumFloats); // Did we read enough doubles?
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
bool cWSSAnvil::GetBlockEntityNBTPos(const cParsedNBT & a_NBT, int a_TagIdx, int & a_X, int & a_Y, int & a_Z)
|
bool cWSSAnvil::GetBlockEntityNBTPos(const cParsedNBT & a_NBT, int a_TagIdx, int & a_X, int & a_Y, int & a_Z)
|
||||||
{
|
{
|
||||||
int x = a_NBT.FindChildByName(a_TagIdx, "x");
|
int x = a_NBT.FindChildByName(a_TagIdx, "x");
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
#include "WorldStorage.h"
|
#include "WorldStorage.h"
|
||||||
#include "FastNBT.h"
|
#include "FastNBT.h"
|
||||||
|
#include "../Mobs/Monster.h"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -203,6 +204,9 @@ protected:
|
|||||||
/// Loads an array of doubles of the specified length from the specified NBT list tag a_TagIdx; returns true if successful
|
/// Loads an array of doubles of the specified length from the specified NBT list tag a_TagIdx; returns true if successful
|
||||||
bool LoadDoublesListFromNBT(double * a_Doubles, int a_NumDoubles, const cParsedNBT & a_NBT, int a_TagIdx);
|
bool LoadDoublesListFromNBT(double * a_Doubles, int a_NumDoubles, const cParsedNBT & a_NBT, int a_TagIdx);
|
||||||
|
|
||||||
|
/// Loads an array of floats of the specified length from the specified NBT list tag a_TagIdx; returns true if successful
|
||||||
|
bool LoadFloatsListFromNBT(float * a_Floats, int a_NumFloats, const cParsedNBT & a_NBT, int a_TagIdx);
|
||||||
|
|
||||||
/// Helper function for extracting the X, Y, and Z int subtags of a NBT compound; returns true if successful
|
/// Helper function for extracting the X, Y, and Z int subtags of a NBT compound; returns true if successful
|
||||||
bool GetBlockEntityNBTPos(const cParsedNBT & a_NBT, int a_TagIdx, int & a_X, int & a_Y, int & a_Z);
|
bool GetBlockEntityNBTPos(const cParsedNBT & a_NBT, int a_TagIdx, int & a_X, int & a_Y, int & a_Z);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user