diff options
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 0ea0f832405..d3d33a22ad3 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -43,7 +43,6 @@ #include "SpellAuras.h" #include "SpellMgr.h" #include "SpellScript.h" -#include "UpdateMask.h" #include "Util.h" #include "Vehicle.h" #include "World.h" @@ -2671,9 +2670,10 @@ void ObjectMgr::LoadItemTemplates() if (std::vector<ItemSpecOverrideEntry const*> const* itemSpecOverrides = sDB2Manager.GetItemSpecOverrides(sparse->ID)) { for (ItemSpecOverrideEntry const* itemSpecOverride : *itemSpecOverrides) - itemTemplate.Specializations[0].insert(itemSpecOverride->SpecID); + if (ChrSpecializationEntry const* specialization = sChrSpecializationStore.LookupEntry(itemSpecOverride->SpecID)) + itemTemplate.Specializations[0].set(ItemTemplate::CalculateItemSpecBit(specialization)); - itemTemplate.Specializations[1] = itemTemplate.Specializations[0]; + itemTemplate.Specializations[1] |= itemTemplate.Specializations[0]; } else { @@ -2704,7 +2704,7 @@ void ObjectMgr::LoadItemTemplates() if ((1 << (specialization->ClassID - 1)) & sparse->AllowableClass) { itemTemplate.ItemSpecClassMask |= 1 << (specialization->ClassID - 1); - itemTemplate.Specializations[itemSpec->MaxLevel > 40].insert(itemSpec->SpecID); + itemTemplate.Specializations[itemSpec->MaxLevel > 40].set(ItemTemplate::CalculateItemSpecBit(specialization)); } } } |