From 68b02ae2278461d3b89d997ae780ee10767b2254 Mon Sep 17 00:00:00 2001 From: QAston Date: Mon, 20 Apr 2009 23:37:47 +0200 Subject: [PATCH] *Fix bug that pets learn talents instantly - clear your pet_spell table to have changes applied. --HG-- branch : trunk --- src/game/Spell.cpp | 2 -- src/game/SpellMgr.cpp | 3 ++- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 8ba4df32e7..576c15643c 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -2627,7 +2627,6 @@ void Spell::update(uint32 difftime) // check if there are alive targets left if (!UpdateChanneledTargetList()) { - sLog.outError("Spell cancel"); SendChannelUpdate(0); finish(); } @@ -2698,7 +2697,6 @@ void Spell::finish(bool ok) // Unsummon summon as possessed creatures on spell cancel if(IsChanneledSpell(m_spellInfo) - && m_caster->m_currentSpells[CURRENT_CHANNELED_SPELL] == this && m_caster->GetTypeId() == TYPEID_PLAYER) { if (Unit * charm = m_caster->GetCharm()) diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index df5fa14541..b00e9c9564 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -2536,7 +2536,8 @@ void SpellMgr::LoadPetLevelupSpellMap() // not exist or triggered or talent if(!spell || !spell->spellLevel || GetTalentSpellPos(spell->Id)) continue; - if (!spell->SpellFamilyFlags && spell->SpellIconID!=2310 && (!spell->RecoveryTime || !spell->StartRecoveryCategory)) + // TODO: some spells have no spellfamilyflag but should be learned + if (!spell->SpellFamilyFlags) continue; mPetLevelupSpellMap.insert(PetLevelupSpellMap::value_type(creatureFamily->ID, std::make_pair(spell->spellLevel , spell->Id ))); count++;