aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/server/game/Entities/Player/Player.cpp18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 9c63c2f73c8..3470e55b8cd 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -3536,6 +3536,15 @@ void Player::learnSpell(uint32 spell_id, bool dependent)
bool learning = addSpell(spell_id,active,true,dependent,false);
+ // prevent duplicated entires in spell book, also not send if not in world (loading)
+ if (learning || IsInWorld())
+ {
+ WorldPacket data(SMSG_LEARNED_SPELL, 6);
+ data << uint32(spell_id);
+ data << uint16(0);
+ GetSession()->SendPacket(&data);
+ }
+
// learn all disabled higher ranks and required spells (recursive)
if (disabled)
{
@@ -3555,15 +3564,6 @@ void Player::learnSpell(uint32 spell_id, bool dependent)
learnSpell(itr2->second, false);
}
}
-
- // prevent duplicated entires in spell book, also not send if not in world (loading)
- if (!learning || !IsInWorld())
- return;
-
- WorldPacket data(SMSG_LEARNED_SPELL, 6);
- data << uint32(spell_id);
- data << uint16(0);
- GetSession()->SendPacket(&data);
}
void Player::removeSpell(uint32 spell_id, bool disabled, bool learn_low_rank)