aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Loot/LootMgr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/Loot/LootMgr.cpp')
-rw-r--r--src/server/game/Loot/LootMgr.cpp71
1 files changed, 27 insertions, 44 deletions
diff --git a/src/server/game/Loot/LootMgr.cpp b/src/server/game/Loot/LootMgr.cpp
index c7e261f3755..6c4dcdba7d7 100644
--- a/src/server/game/Loot/LootMgr.cpp
+++ b/src/server/game/Loot/LootMgr.cpp
@@ -792,15 +792,12 @@ void LoadLootTemplates_Creature()
// Remove real entries and check loot existence
CreatureTemplateContainer const& ctc = sObjectMgr->GetCreatureTemplates();
- for (auto const& creatureTemplate : ctc)
+ for (auto const& creatureTemplatePair : ctc)
{
- if (!creatureTemplate)
- continue;
-
- if (uint32 lootid = creatureTemplate->lootid)
+ if (uint32 lootid = creatureTemplatePair.second.lootid)
{
- if (lootIdSet.find(lootid) == lootIdSet.end())
- LootTemplates_Creature.ReportNonExistingId(lootid, "Creature", creatureTemplate->Entry);
+ if (!lootIdSet.count(lootid))
+ LootTemplates_Creature.ReportNonExistingId(lootid, "Creature", creatureTemplatePair.first);
else
lootIdSetUsed.insert(lootid);
}
@@ -885,15 +882,12 @@ void LoadLootTemplates_Gameobject()
// remove real entries and check existence loot
GameObjectTemplateContainer const& gotc = sObjectMgr->GetGameObjectTemplates();
- for (auto const& gameObjectTemplate : gotc)
+ for (auto const& gameObjectTemplatePair : gotc)
{
- if (!gameObjectTemplate)
- continue;
-
- if (uint32 lootid = gameObjectTemplate->GetLootId())
+ if (uint32 lootid = gameObjectTemplatePair.second.GetLootId())
{
- if (lootIdSet.find(lootid) == lootIdSet.end())
- LootTemplates_Gameobject.ReportNonExistingId(lootid, "Gameobject", gameObjectTemplate->entry);
+ if (!lootIdSet.count(lootid))
+ LootTemplates_Gameobject.ReportNonExistingId(lootid, "Gameobject", gameObjectTemplatePair.first);
else
lootIdSetUsed.insert(lootid);
}
@@ -922,14 +916,9 @@ void LoadLootTemplates_Item()
// remove real entries and check existence loot
ItemTemplateContainer const& its = sObjectMgr->GetItemTemplateStore();
- for (auto const& itemTemplate : its)
- {
- if (!itemTemplate)
- continue;
-
- if (lootIdSet.find(itemTemplate->GetId()) != lootIdSet.end() && (itemTemplate->GetFlags() & ITEM_FLAG_HAS_LOOT))
- lootIdSet.erase(itemTemplate->GetId());
- }
+ for (auto const& itemTemplatePair : its)
+ if (lootIdSet.count(itemTemplatePair.first) > 0 && (itemTemplatePair.second.GetFlags() & ITEM_FLAG_HAS_LOOT))
+ lootIdSet.erase(itemTemplatePair.first);
// output error for any still listed (not referenced from appropriate table) ids
LootTemplates_Item.ReportUnusedIds(lootIdSet);
@@ -951,13 +940,13 @@ void LoadLootTemplates_Milling()
// remove real entries and check existence loot
ItemTemplateContainer const& its = sObjectMgr->GetItemTemplateStore();
- for (auto const& itemTemplate : its)
+ for (auto const& itemTemplatePair : its)
{
- if (!itemTemplate || !(itemTemplate->GetFlags() & ITEM_FLAG_IS_MILLABLE))
+ if (!(itemTemplatePair.second.GetFlags() & ITEM_FLAG_IS_MILLABLE))
continue;
- if (lootIdSet.find(itemTemplate->GetId()) != lootIdSet.end())
- lootIdSet.erase(itemTemplate->GetId());
+ if (lootIdSet.count(itemTemplatePair.first) > 0)
+ lootIdSet.erase(itemTemplatePair.first);
}
// output error for any still listed (not referenced from appropriate table) ids
@@ -980,15 +969,12 @@ void LoadLootTemplates_Pickpocketing()
// Remove real entries and check loot existence
CreatureTemplateContainer const& ctc = sObjectMgr->GetCreatureTemplates();
- for (auto const& creatureTemplate : ctc)
+ for (auto const& creatureTemplatePair : ctc)
{
- if (!creatureTemplate)
- continue;
-
- if (uint32 lootid = creatureTemplate->pickpocketLootId)
+ if (uint32 lootid = creatureTemplatePair.second.pickpocketLootId)
{
- if (lootIdSet.find(lootid) == lootIdSet.end())
- LootTemplates_Pickpocketing.ReportNonExistingId(lootid, "Creature", creatureTemplate->Entry);
+ if (!lootIdSet.count(lootid))
+ LootTemplates_Pickpocketing.ReportNonExistingId(lootid, "Creature", creatureTemplatePair.first);
else
lootIdSetUsed.insert(lootid);
}
@@ -1017,13 +1003,13 @@ void LoadLootTemplates_Prospecting()
// remove real entries and check existence loot
ItemTemplateContainer const& its = sObjectMgr->GetItemTemplateStore();
- for (auto const& itemTemplate : its)
+ for (auto const& itemTemplatePair : its)
{
- if (!itemTemplate || !(itemTemplate->GetFlags() & ITEM_FLAG_IS_PROSPECTABLE))
+ if (!(itemTemplatePair.second.GetFlags() & ITEM_FLAG_IS_PROSPECTABLE))
continue;
- if (lootIdSet.find(itemTemplate->GetId()) != lootIdSet.end())
- lootIdSet.erase(itemTemplate->GetId());
+ if (lootIdSet.count(itemTemplatePair.first) > 0)
+ lootIdSet.erase(itemTemplatePair.first);
}
// output error for any still listed (not referenced from appropriate table) ids
@@ -1070,15 +1056,12 @@ void LoadLootTemplates_Skinning()
// remove real entries and check existence loot
CreatureTemplateContainer const& ctc = sObjectMgr->GetCreatureTemplates();
- for (auto const& creatureTemplate : ctc)
+ for (auto const& creatureTemplatePair : ctc)
{
- if (!creatureTemplate)
- continue;
-
- if (uint32 lootid = creatureTemplate->SkinLootId)
+ if (uint32 lootid = creatureTemplatePair.second.SkinLootId)
{
- if (lootIdSet.find(lootid) == lootIdSet.end())
- LootTemplates_Skinning.ReportNonExistingId(lootid, "Creature", creatureTemplate->Entry);
+ if (!lootIdSet.count(lootid))
+ LootTemplates_Skinning.ReportNonExistingId(lootid, "Creature", creatureTemplatePair.first);
else
lootIdSetUsed.insert(lootid);
}