diff options
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 005985b4d1d..9d026296724 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -2781,7 +2781,12 @@ void ObjectMgr::LoadItemTemplates() if ((1 << (specialization->ClassID - 1)) & sparse->AllowableClass) { itemTemplate.ItemSpecClassMask |= 1 << (specialization->ClassID - 1); - itemTemplate.Specializations[itemSpec->MaxLevel > 40].set(ItemTemplate::CalculateItemSpecBit(specialization)); + std::size_t specBit = ItemTemplate::CalculateItemSpecBit(specialization); + itemTemplate.Specializations[0].set(specBit); + if (itemSpec->MaxLevel > 40) + itemTemplate.Specializations[1].set(specBit); + if (itemSpec->MaxLevel >= 110) + itemTemplate.Specializations[2].set(specBit); } } } |