mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-23 07:40:14 +00:00
feat: fire FRIENDLIST_UPDATE and IGNORELIST_UPDATE events
Fire FRIENDLIST_UPDATE from all three friend list packet handlers: - SMSG_FRIEND_LIST (Classic format) - SMSG_CONTACT_LIST (WotLK format) - SMSG_FRIEND_STATUS (add/remove/online/offline updates) Fire IGNORELIST_UPDATE when SMSG_CONTACT_LIST includes ignore entries. These events are used by social addons to refresh their UI when the friend/ignore list changes.
This commit is contained in:
parent
8f2a2dfbb4
commit
b8d92b5ff2
1 changed files with 7 additions and 0 deletions
|
|
@ -24215,6 +24215,7 @@ void GameHandler::handleFriendList(network::Packet& packet) {
|
|||
entry.classId = classId;
|
||||
contacts_.push_back(std::move(entry));
|
||||
}
|
||||
if (addonEventCallback_) addonEventCallback_("FRIENDLIST_UPDATE", {});
|
||||
}
|
||||
|
||||
void GameHandler::handleContactList(network::Packet& packet) {
|
||||
|
|
@ -24278,6 +24279,11 @@ void GameHandler::handleContactList(network::Packet& packet) {
|
|||
}
|
||||
LOG_INFO("SMSG_CONTACT_LIST: mask=", lastContactListMask_,
|
||||
" count=", lastContactListCount_);
|
||||
if (addonEventCallback_) {
|
||||
addonEventCallback_("FRIENDLIST_UPDATE", {});
|
||||
if (lastContactListMask_ & 0x2) // ignore list
|
||||
addonEventCallback_("IGNORELIST_UPDATE", {});
|
||||
}
|
||||
}
|
||||
|
||||
void GameHandler::handleFriendStatus(network::Packet& packet) {
|
||||
|
|
@ -24361,6 +24367,7 @@ void GameHandler::handleFriendStatus(network::Packet& packet) {
|
|||
}
|
||||
|
||||
LOG_INFO("Friend status update: ", playerName, " status=", (int)data.status);
|
||||
if (addonEventCallback_) addonEventCallback_("FRIENDLIST_UPDATE", {});
|
||||
}
|
||||
|
||||
void GameHandler::handleRandomRoll(network::Packet& packet) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue