diff options
Diffstat (limited to 'src/server/game/Handlers/QueryHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/QueryHandler.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/server/game/Handlers/QueryHandler.cpp b/src/server/game/Handlers/QueryHandler.cpp index e92fdab9409..eec80888559 100644 --- a/src/server/game/Handlers/QueryHandler.cpp +++ b/src/server/game/Handlers/QueryHandler.cpp @@ -414,3 +414,22 @@ void WorldSession::HandleDBQueryBulk(WorldPackets::Query::DBQueryBulk& packet) SendPacket(response.Write()); } } + +/** +* Handles the packet sent by the client when requesting information about item text. +* +* This function is called when player clicks on item which has some flag set +*/ +void WorldSession::HandleItemTextQuery(WorldPackets::Query::ItemTextQuery& itemTextQuery) +{ + WorldPackets::Query::QueryItemTextResponse queryItemTextResponse; + queryItemTextResponse.Id = itemTextQuery.Id; + + if (Item* item = _player->GetItemByGuid(itemTextQuery.Id)) + { + queryItemTextResponse.Valid = true; + queryItemTextResponse.Item.Text = item->GetText(); + } + + SendPacket(queryItemTextResponse.Write()); +} |