mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-04-17 09:33:51 +00:00
Implement mailbox interaction and expansion-aware mail system
Fix mailbox right-click (transposed CMSG_GAMEOBJECT_USE opcode, missing mail opcodes in Turtle WoW JSON, decorative GO type filtering). Add expansion-aware mail packet handling via PacketParsers: Classic format (single item, no msgSize prefix, Vanilla field order) vs WotLK format (attachment arrays, enchant slots). Fix CMSG_MAIL_TAKE_ITEM and CMSG_MAIL_DELETE for Vanilla (no trailing fields). Add pulsing "New Mail" indicator below minimap, SMSG_RECEIVED_MAIL and MSG_QUERY_NEXT_MAIL_TIME handlers, and async sender name backfill.
This commit is contained in:
parent
bbcc18aa22
commit
1cfe186c62
8 changed files with 421 additions and 126 deletions
|
|
@ -770,6 +770,7 @@ public:
|
|||
bool isMailComposeOpen() const { return showMailCompose_; }
|
||||
void openMailCompose() { showMailCompose_ = true; }
|
||||
void closeMailCompose() { showMailCompose_ = false; }
|
||||
bool hasNewMail() const { return hasNewMail_; }
|
||||
void closeMailbox();
|
||||
void sendMail(const std::string& recipient, const std::string& subject,
|
||||
const std::string& body, uint32_t money, uint32_t cod = 0);
|
||||
|
|
@ -1009,6 +1010,7 @@ private:
|
|||
void handleMailListResult(network::Packet& packet);
|
||||
void handleSendMailResult(network::Packet& packet);
|
||||
void handleReceivedMail(network::Packet& packet);
|
||||
void handleQueryNextMailTime(network::Packet& packet);
|
||||
|
||||
// ---- Taxi handlers ----
|
||||
void handleShowTaxiNodes(network::Packet& packet);
|
||||
|
|
@ -1351,6 +1353,7 @@ private:
|
|||
std::vector<MailMessage> mailInbox_;
|
||||
int selectedMailIndex_ = -1;
|
||||
bool showMailCompose_ = false;
|
||||
bool hasNewMail_ = false;
|
||||
|
||||
// Vendor
|
||||
bool vendorWindowOpen = false;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue