Add guild features, fix channel joining, and improve whisper reply

Guild: add disband, leader transfer, public/officer note commands with
roster context menu showing rank names and officer notes column. Auto-refresh
roster after guild events.

Channels: fix city/region channels not working by accepting SMSG_CHANNEL_NOTIFY
during ENTERING_WORLD state (server auto-joins before VERIFY_WORLD) and handling
PLAYER_ALREADY_MEMBER notification.

Whisper: /r now switches to whisper tab and sets target to last sender,
matching WoW behavior.

Camera: extend WMO collision raycasting to work outside WMOs too.
This commit is contained in:
Kelsi 2026-02-16 20:16:14 -08:00
parent ee5ab30826
commit 2ece1bf1cf
9 changed files with 271 additions and 9 deletions

View file

@ -1003,6 +1003,30 @@ public:
static network::Packet build(const std::string& playerName);
};
/** CMSG_GUILD_DISBAND packet builder (empty body) */
class GuildDisbandPacket {
public:
static network::Packet build();
};
/** CMSG_GUILD_LEADER packet builder */
class GuildLeaderPacket {
public:
static network::Packet build(const std::string& playerName);
};
/** CMSG_GUILD_SET_PUBLIC_NOTE packet builder */
class GuildSetPublicNotePacket {
public:
static network::Packet build(const std::string& playerName, const std::string& note);
};
/** CMSG_GUILD_SET_OFFICER_NOTE packet builder */
class GuildSetOfficerNotePacket {
public:
static network::Packet build(const std::string& playerName, const std::string& note);
};
/** CMSG_GUILD_ACCEPT packet builder (empty body) */
class GuildAcceptPacket {
public: