From 7f0d9fe4329a40e5fe1b78760131030fe62dfe4d Mon Sep 17 00:00:00 2001 From: Kelsi Date: Sat, 21 Mar 2026 05:17:40 -0700 Subject: [PATCH] feat: fire PLAYER_GUILD_UPDATE event on guild join/disband Fire PLAYER_GUILD_UPDATE when the player's guild membership changes: - When guild name is first resolved (player joins guild/logs in) - When guild is disbanded Used by guild frame addons and guild info display to update when guild status changes. --- src/game/game_handler.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/game/game_handler.cpp b/src/game/game_handler.cpp index 9068ac34..41c2f665 100644 --- a/src/game/game_handler.cpp +++ b/src/game/game_handler.cpp @@ -20629,8 +20629,10 @@ void GameHandler::handleGuildQueryResponse(network::Packet& packet) { guildRankNames_.push_back(data.rankNames[i]); } LOG_INFO("Guild name set to: ", guildName_); - if (wasUnknown && !guildName_.empty()) + if (wasUnknown && !guildName_.empty()) { addSystemChatMessage("Guild: <" + guildName_ + ">"); + if (addonEventCallback_) addonEventCallback_("PLAYER_GUILD_UPDATE", {}); + } } else { LOG_INFO("Cached guild name: id=", data.guildId, " name=", data.guildName); } @@ -20680,6 +20682,7 @@ void GameHandler::handleGuildEvent(network::Packet& packet) { guildRankNames_.clear(); guildRoster_ = GuildRosterData{}; hasGuildRoster_ = false; + if (addonEventCallback_) addonEventCallback_("PLAYER_GUILD_UPDATE", {}); break; case GuildEvent::SIGNED_ON: if (data.numStrings >= 1)