aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Handlers/SkillHandler.cpp
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2017-07-26 00:53:25 +0200
committerShauren <shauren.trinity@gmail.com>2017-07-26 00:53:51 +0200
commit0cd5179726f91cc163910dd0806d622fe86d9a8c (patch)
treed2035ae43d01308dab4a00a262ee6c8c5b37fd90 /src/server/game/Handlers/SkillHandler.cpp
parent734fab01bb93c7b9e79e9f11e30a9782ddb31a77 (diff)
Core/Creatures: Rewrite trainer handling to properly support multiple trainers on the same creature
* Trainers are now defined as templates (sniffable), assigned by gossip options
Diffstat (limited to 'src/server/game/Handlers/SkillHandler.cpp')
-rw-r--r--src/server/game/Handlers/SkillHandler.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/game/Handlers/SkillHandler.cpp b/src/server/game/Handlers/SkillHandler.cpp
index b3dc78e3484..cbc49c50c22 100644
--- a/src/server/game/Handlers/SkillHandler.cpp
+++ b/src/server/game/Handlers/SkillHandler.cpp
@@ -19,6 +19,7 @@
#include "WorldSession.h"
#include "Common.h"
#include "DB2Stores.h"
+#include "GossipDef.h"
#include "Log.h"
#include "ObjectAccessor.h"
#include "Pet.h"
@@ -65,7 +66,10 @@ void WorldSession::HandleConfirmRespecWipeOpcode(WorldPackets::Talent::ConfirmRe
return;
}
- if (!unit->isCanTrainingAndResetTalentsOf(_player))
+ if (!unit->CanResetTalents(_player))
+ return;
+
+ if (!_player->PlayerTalkClass->GetGossipMenu().HasMenuItemType(GOSSIP_OPTION_UNLEARNTALENTS))
return;
// remove fake death