diff options
author | megamage <none@none> | 2008-12-26 17:08:59 -0600 |
---|---|---|
committer | megamage <none@none> | 2008-12-26 17:08:59 -0600 |
commit | 8b209a441dba87ac0a80b6cf51a8643fca5c9738 (patch) | |
tree | 6dd136aaa5a91f02468c3842a6ac6600ce48ff24 /src/game/SpellMgr.cpp | |
parent | 7346ed5951822d5b8f61817ff1ad95d2c4e2cd73 (diff) |
*Update to Mangos 6949.
--HG--
branch : trunk
Diffstat (limited to 'src/game/SpellMgr.cpp')
-rw-r--r-- | src/game/SpellMgr.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 641a08f9e60..3a0f776352a 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -1789,7 +1789,13 @@ void SpellMgr::LoadSpellLearnSpells() { SpellLearnSpellNode dbc_node; dbc_node.spell = entry->EffectTriggerSpell[i]; - dbc_node.autoLearned = true; + + // ignore learning not existed spells (broken/outdated/or generic learnig spell 483 + if(!sSpellStore.LookupEntry(dbc_node.spell)) + continue; + + // talent or passive spells or skill-step spells auto-casted, other required explicit dependent learning + dbc_node.autoLearned = GetTalentSpellCost(spell) > 0 || IsPassiveSpell(spell) || IsSpellHaveEffect(entry,SPELL_EFFECT_SKILL_STEP); SpellLearnSpellMap::const_iterator db_node_begin = GetBeginSpellLearnSpell(spell); SpellLearnSpellMap::const_iterator db_node_end = GetEndSpellLearnSpell(spell); |