diff options
author | jackpoz <giacomopoz@gmail.com> | 2014-06-05 22:19:02 +0200 |
---|---|---|
committer | jackpoz <giacomopoz@gmail.com> | 2014-06-05 22:19:02 +0200 |
commit | 7d623eed180ea3d35d356e6defb0511480404c67 (patch) | |
tree | d3b105650aeef2321d1bac0b78bef5f6c49e7330 /src | |
parent | 36102bea64d536b6ac04ac728c64321cfc5e55f2 (diff) |
Core/Talents: Align server checks to Client limits
Set the max amount of talents to process in CMSG_LEARN_PREVIEW_TALENTS to 150 ( 44 talents for 3 trees rounded up ).
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Handlers/SkillHandler.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Handlers/SkillHandler.cpp b/src/server/game/Handlers/SkillHandler.cpp index fe893314b87..b7e918ee05b 100644 --- a/src/server/game/Handlers/SkillHandler.cpp +++ b/src/server/game/Handlers/SkillHandler.cpp @@ -45,7 +45,10 @@ void WorldSession::HandleLearnPreviewTalents(WorldPacket& recvPacket) uint32 talentId, talentRank; - for (uint32 i = 0; i < talentsCount; ++i) + // Client has max 44 talents for tree for 3 trees, rounded up : 150 + const int MaxTalentsCount = 150; + + for (uint32 i = 0; i < talentsCount && i < MaxTalentsCount; ++i) { recvPacket >> talentId >> talentRank; @@ -53,6 +56,8 @@ void WorldSession::HandleLearnPreviewTalents(WorldPacket& recvPacket) } _player->SendTalentsInfoData(false); + + recvPacket.rfinish(); } void WorldSession::HandleTalentWipeConfirmOpcode(WorldPacket& recvData) |