diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index ded80406b7..0e4f733a95 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -3332,12 +3332,14 @@ void ObjectMgr::LoadItemTemplates() itemTemplate.ContainerSlots = uint32(fields[26].Get()); uint8 statsCount = 0; - while (statsCount < MAX_ITEM_PROTO_STATS) + uint8 statsIterator = 0; + while (statsIterator < MAX_ITEM_PROTO_STATS) { - uint32 statType = uint32(fields[27 + statsCount * 2].Get()); - int32 statValue = fields[28 + statsCount * 2].Get(); - if (statType == 0) - break; + uint32 statType = uint32(fields[27 + statsIterator * 2].Get()); + int32 statValue = fields[28 + statsIterator * 2].Get(); + statsIterator++; + if (statValue == 0) + continue; itemTemplate.ItemStat[statsCount].ItemStatType = statType; itemTemplate.ItemStat[statsCount].ItemStatValue = statValue;