diff options
author | Shauren <shauren.trinity@gmail.com> | 2017-07-26 00:53:25 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2017-07-26 00:53:51 +0200 |
commit | 0cd5179726f91cc163910dd0806d622fe86d9a8c (patch) | |
tree | d2035ae43d01308dab4a00a262ee6c8c5b37fd90 /src/server/game/Handlers/SkillHandler.cpp | |
parent | 734fab01bb93c7b9e79e9f11e30a9782ddb31a77 (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.cpp | 6 |
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 |