Fix NPC textures, bag item interactions, and Classic item query parsing

Rebuild creature display lookups after expansion-specific DBC layout loads
(was using WotLK defaults before turtle layout was available). Add full
drag-and-drop support for bag items with server-side CMSG_SWAP_ITEM packets.
Add Classic-specific SMSG_ITEM_QUERY_SINGLE_RESPONSE parser for Vanilla
format differences (fewer damage types, no scaling stats, no Flags2).
This commit is contained in:
Kelsi 2026-02-17 01:00:04 -08:00
parent 97ea390969
commit 5ea41df8b5
10 changed files with 384 additions and 62 deletions

View file

@ -122,6 +122,13 @@ public:
return NameQueryResponseParser::parse(packet, data);
}
// --- Item Query ---
/** Parse SMSG_ITEM_QUERY_SINGLE_RESPONSE */
virtual bool parseItemQueryResponse(network::Packet& packet, ItemQueryResponseData& data) {
return ItemQueryResponseParser::parse(packet, data);
}
// --- GameObject Query ---
/** Parse SMSG_GAMEOBJECT_QUERY_RESPONSE */
@ -280,6 +287,7 @@ public:
bool parseMailList(network::Packet& packet, std::vector<MailMessage>& inbox) override;
network::Packet buildMailTakeItem(uint64_t mailboxGuid, uint32_t mailId, uint32_t itemSlot) override;
network::Packet buildMailDelete(uint64_t mailboxGuid, uint32_t mailId, uint32_t mailTemplateId) override;
bool parseItemQueryResponse(network::Packet& packet, ItemQueryResponseData& data) override;
};
/**