Add Tier 4 commands: AFK/DND status and whisper reply

- AFK commands: /afk, /away to toggle AFK status with optional message
- DND commands: /dnd, /busy to toggle DND (Do Not Disturb) with optional message
- Reply command: /r, /reply to respond to the last received whisper
- Track last whisper sender automatically when receiving whispers
- AFK and DND are mutually exclusive (activating one clears the other)
This commit is contained in:
kelsi davis 2026-02-07 13:17:01 -08:00
parent 85a7d66c4e
commit 41844ecc69
3 changed files with 110 additions and 0 deletions

View file

@ -254,6 +254,13 @@ public:
// Duel
void forfeitDuel();
// AFK/DND status
void toggleAfk(const std::string& message = "");
void toggleDnd(const std::string& message = "");
void replyToLastWhisper(const std::string& message);
std::string getLastWhisperSender() const { return lastWhisperSender_; }
void setLastWhisperSender(const std::string& name) { lastWhisperSender_ = name; }
// ---- Phase 1: Name queries ----
void queryPlayerName(uint64_t guid);
void queryCreatureInfo(uint32_t entry, uint64_t guid);
@ -660,6 +667,13 @@ private:
// ---- Follow state ----
uint64_t followTargetGuid_ = 0;
// ---- AFK/DND status ----
bool afkStatus_ = false;
bool dndStatus_ = false;
std::string afkMessage_;
std::string dndMessage_;
std::string lastWhisperSender_;
// ---- Online item tracking ----
struct OnlineItemInfo {
uint32_t entry = 0;