mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 13:37:05 +00:00
[8101] Prevent use talents as quest rewards or spell_learn_spell learned spells.
This commit is contained in:
parent
a7cbc7d8ec
commit
91f26272ec
3 changed files with 26 additions and 6 deletions
|
|
@ -3595,13 +3595,20 @@ void ObjectMgr::LoadQuests()
|
|||
qinfo->RewSpell = 0; // no spell reward will display for this quest
|
||||
}
|
||||
|
||||
else if(!SpellMgr::IsSpellValid(spellInfo))
|
||||
if(!SpellMgr::IsSpellValid(spellInfo))
|
||||
{
|
||||
sLog.outErrorDb("Quest %u has `RewSpell` = %u but spell %u is broken, quest can't be done.",
|
||||
sLog.outErrorDb("Quest %u has `RewSpell` = %u but spell %u is broken, quest will not have a spell reward.",
|
||||
qinfo->GetQuestId(),qinfo->RewSpell,qinfo->RewSpell);
|
||||
qinfo->RewSpell = 0; // no spell reward will display for this quest
|
||||
}
|
||||
|
||||
if(GetTalentSpellCost(qinfo->RewSpell))
|
||||
{
|
||||
sLog.outErrorDb("Quest %u has `RewSpell` = %u but spell %u is talent, quest will not have a spell reward.",
|
||||
qinfo->GetQuestId(),qinfo->RewSpell,qinfo->RewSpell);
|
||||
qinfo->RewSpell = 0; // no spell reward will display for this quest
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if(qinfo->RewSpellCast)
|
||||
|
|
@ -3615,13 +3622,20 @@ void ObjectMgr::LoadQuests()
|
|||
qinfo->RewSpellCast = 0; // no spell will be casted on player
|
||||
}
|
||||
|
||||
else if(!SpellMgr::IsSpellValid(spellInfo))
|
||||
if(!SpellMgr::IsSpellValid(spellInfo))
|
||||
{
|
||||
sLog.outErrorDb("Quest %u has `RewSpellCast` = %u but spell %u is broken, quest can't be done.",
|
||||
sLog.outErrorDb("Quest %u has `RewSpellCast` = %u but spell %u is broken, quest will not have a spell reward.",
|
||||
qinfo->GetQuestId(),qinfo->RewSpellCast,qinfo->RewSpellCast);
|
||||
qinfo->RewSpellCast = 0; // no spell will be casted on player
|
||||
}
|
||||
|
||||
if(GetTalentSpellCost(qinfo->RewSpellCast))
|
||||
{
|
||||
sLog.outErrorDb("Quest %u has `RewSpell` = %u but spell %u is talent, quest will not have a spell reward.",
|
||||
qinfo->GetQuestId(),qinfo->RewSpellCast,qinfo->RewSpellCast);
|
||||
qinfo->RewSpellCast = 0; // no spell will be casted on player
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if(qinfo->RewMailTemplateId)
|
||||
|
|
|
|||
|
|
@ -1859,7 +1859,13 @@ void SpellMgr::LoadSpellLearnSpells()
|
|||
|
||||
if(!sSpellStore.LookupEntry(node.spell))
|
||||
{
|
||||
sLog.outErrorDb("Spell %u listed in `spell_learn_spell` does not exist",node.spell);
|
||||
sLog.outErrorDb("Spell %u listed in `spell_learn_spell` learning not existed spell %u",spell_id,node.spell);
|
||||
continue;
|
||||
}
|
||||
|
||||
if(GetTalentSpellCost(node.spell))
|
||||
{
|
||||
sLog.outErrorDb("Spell %u listed in `spell_learn_spell` attempt learning talent spell %u, skipped",spell_id,node.spell);
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "8100"
|
||||
#define REVISION_NR "8101"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue