diff options
Diffstat (limited to 'src/game/Player.cpp')
-rw-r--r-- | src/game/Player.cpp | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/src/game/Player.cpp b/src/game/Player.cpp index 8c12bd9d029..f96eff21012 100644 --- a/src/game/Player.cpp +++ b/src/game/Player.cpp @@ -20563,19 +20563,12 @@ bool Player::IsAllowUseFlyMountsHere() const return v_map == 530 || v_map == 571 && HasSpell(54197) && zoneId != 4197; } -struct DoPlayerLearnSpell -{ - DoPlayerLearnSpell(Player& _player) : player(_player) {} - void operator() (uint32 spell_id) { player.learnSpell(spell_id,false); } - Player& player; -}; - void Player::learnSpellHighRank(uint32 spellid) { learnSpell(spellid,false); - DoPlayerLearnSpell worker(*this); - spellmgr.doForHighRanks(spellid,worker); + if(uint32 next = spellmgr.GetNextSpellInChain(spellid)) + learnSpellHighRank(next); } void Player::_LoadSkills() |