aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
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/Server
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/Server')
-rw-r--r--src/server/game/Server/Packets/NPCPackets.h4
-rw-r--r--src/server/game/Server/WorldSession.h4
2 files changed, 3 insertions, 5 deletions
diff --git a/src/server/game/Server/Packets/NPCPackets.h b/src/server/game/Server/Packets/NPCPackets.h
index d0d8a42beeb..f5affe0f484 100644
--- a/src/server/game/Server/Packets/NPCPackets.h
+++ b/src/server/game/Server/Packets/NPCPackets.h
@@ -145,11 +145,11 @@ namespace WorldPackets
WorldPacket const* Write() override;
- std::string Greeting;
- int32 TrainerType = 0;
ObjectGuid TrainerGUID;
+ int32 TrainerType = 0;
int32 TrainerID = 1;
std::vector<TrainerListSpell> Spells;
+ std::string Greeting;
};
class ShowBank final : public ServerPacket
diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h
index ae51478180e..6899bf97b95 100644
--- a/src/server/game/Server/WorldSession.h
+++ b/src/server/game/Server/WorldSession.h
@@ -971,8 +971,7 @@ class TC_GAME_API WorldSession
void SendNameQueryOpcode(ObjectGuid guid);
- void SendTrainerList(ObjectGuid guid, uint32 index = 0);
- void SendTrainerList(ObjectGuid guid, std::string const& strTitle, uint32 index = 0);
+ void SendTrainerList(ObjectGuid guid, uint32 trainerId);
void SendListInventory(ObjectGuid guid);
void SendShowBank(ObjectGuid guid);
bool CanOpenMailBox(ObjectGuid guid);
@@ -1342,7 +1341,6 @@ class TC_GAME_API WorldSession
void HandleStableRevivePet(WorldPacket& recvPacket);
void HandleStableSwapPet(WorldPacket& recvPacket);
void HandleStableSwapPetCallback(uint32 petId, PreparedQueryResult result);
- void SendTrainerBuyFailed(ObjectGuid trainerGUID, uint32 spellID, int32 trainerFailedReason);
void HandleCanDuel(WorldPackets::Duel::CanDuel& packet);
void HandleDuelResponseOpcode(WorldPackets::Duel::DuelResponse& duelResponse);