Add inspect window showing talent summary and gear for inspected players

Store inspect results (talent points, dual-spec state, gear entries) in a
new InspectResult struct instead of discarding them as chat messages.
Open the inspect window automatically from all Inspect menu items and /inspect.
This commit is contained in:
Kelsi 2026-03-12 02:52:40 -07:00
parent 92db25038c
commit 43de2be1f2
4 changed files with 129 additions and 9 deletions

View file

@ -332,6 +332,19 @@ public:
// Inspection
void inspectTarget();
struct InspectResult {
uint64_t guid = 0;
std::string playerName;
uint32_t totalTalents = 0;
uint32_t unspentTalents = 0;
uint8_t talentGroups = 0;
uint8_t activeTalentGroup = 0;
std::array<uint32_t, 19> itemEntries{}; // 0=head…18=ranged
};
const InspectResult* getInspectResult() const {
return inspectResult_.guid ? &inspectResult_ : nullptr;
}
// Server info commands
void queryServerTime();
void requestPlayedTime();
@ -2019,6 +2032,7 @@ private:
// Inspect fallback (when visible item fields are missing/unreliable)
std::unordered_map<uint64_t, std::array<uint32_t, 19>> inspectedPlayerItemEntries_;
InspectResult inspectResult_; // most-recently received inspect response
std::unordered_set<uint64_t> pendingAutoInspect_;
float inspectRateLimit_ = 0.0f;