[8752] Changes in mail template related server load checks.

* Allow loot for not used in quest mail templates.
  This let use mail template based mails from scripts for example.
* Not allow use same mail template id in more ine quests.
This commit is contained in:
VladimirMangos 2009-10-29 13:25:34 +03:00
parent 6901325e68
commit ddd51cca6d
3 changed files with 23 additions and 11 deletions

View file

@ -1262,11 +1262,10 @@ void LoadLootTemplates_Mail()
LootTemplates_Mail.LoadAndCollectLootIds(ids_set);
// remove real entries and check existence loot
ObjectMgr::QuestMap const& questMap = objmgr.GetQuestTemplates();
for(ObjectMgr::QuestMap::const_iterator itr = questMap.begin(); itr != questMap.end(); ++itr )
if(uint32 mail_template_id = itr->second->GetRewMailTemplateId())
if(ids_set.count(mail_template_id))
ids_set.erase(mail_template_id);
for(uint32 i = 1; i < sMailTemplateStore.GetNumRows(); ++i )
if(sMailTemplateStore.LookupEntry(i))
if(ids_set.count(i))
ids_set.erase(i);
// output error for any still listed (not referenced from appropriate table) ids
LootTemplates_Mail.ReportUnusedIds(ids_set);