fix(Core): ScriptName not readable in creature and gameobject table fix (#8715)

This commit is contained in:
acidmanifesto
2021-10-25 08:25:13 -04:00
committed by GitHub
parent dc3ff71c70
commit bcd1a701ac
7 changed files with 45 additions and 15 deletions
@@ -1031,7 +1031,7 @@ bool Creature::Create(ObjectGuid::LowType guidlow, Map* map, uint32 phaseMask, u
//! Need to be called after LoadCreaturesAddon - MOVEMENTFLAG_HOVER is set there
m_positionZ += GetHoverHeight();
LastUsedScriptID = GetCreatureTemplate()->ScriptID;
LastUsedScriptID = GetScriptId();
if (IsSpiritHealer() || IsSpiritGuide() || (GetCreatureTemplate()->flags_extra & CREATURE_FLAG_EXTRA_GHOST_VISIBILITY))
{
@@ -2769,6 +2769,9 @@ std::string Creature::GetScriptName() const
uint32 Creature::GetScriptId() const
{
if (CreatureData const* creatureData = GetCreatureData())
return creatureData->ScriptId;
return sObjectMgr->GetCreatureTemplate(GetEntry())->ScriptID;
}
@@ -285,6 +285,7 @@ struct CreatureData
uint32 npcflag{0};
uint32 unit_flags{0}; // enum UnitFlags mask values
uint32 dynamicflags{0};
uint32 ScriptId;
bool dbData{true};
bool overwrittenZ{false};
};