Core/Gameobject: Add WorldEffectID to Gameobject (#20785)

This commit is contained in:
funjoker
2017-11-05 20:24:45 +01:00
committed by joschiwald
parent 983b0a5fcf
commit c77e76fa61
14 changed files with 129 additions and 19 deletions
@@ -55,7 +55,7 @@ QuaternionData QuaternionData::fromEulerAnglesZYX(float Z, float Y, float X)
}
GameObject::GameObject() : WorldObject(false), MapObject(),
m_model(nullptr), m_goValue(), m_AI(nullptr), _animKitId(0)
m_model(nullptr), m_goValue(), m_AI(nullptr), _animKitId(0), _worldEffectID(0)
{
m_objectType |= TYPEMASK_GAMEOBJECT;
m_objectTypeId = TYPEID_GAMEOBJECT;
@@ -267,6 +267,12 @@ bool GameObject::Create(uint32 name_id, Map* map, uint32 /*phaseMask*/, Position
{
SetUInt32Value(GAMEOBJECT_FACTION, m_goTemplateAddon->faction);
SetUInt32Value(GAMEOBJECT_FLAGS, m_goTemplateAddon->flags);
if (m_goTemplateAddon->WorldEffectID)
{
m_updateFlag |= UPDATEFLAG_GAMEOBJECT;
SetWorldEffectID(m_goTemplateAddon->WorldEffectID);
}
}
SetEntry(goinfo->entry);
@@ -359,6 +365,12 @@ bool GameObject::Create(uint32 name_id, Map* map, uint32 /*phaseMask*/, Position
m_invisibility.AddValue(gameObjectAddon->invisibilityType, gameObjectAddon->InvisibilityValue);
}
if (gameObjectAddon && gameObjectAddon->WorldEffectID)
{
m_updateFlag |= UPDATEFLAG_GAMEOBJECT;
SetWorldEffectID(gameObjectAddon->WorldEffectID);
}
LastUsedScriptID = GetGOInfo()->ScriptId;
AIM_Initialize();