Distinguish channeled spells in cast bar with blue color and draining animation

Adds castIsChannel flag set on MSG_CHANNEL_START, cleared on all cast resets.
Cast bar now drains right-to-left in blue for channels vs gold fill for casts.
This commit is contained in:
Kelsi 2026-03-12 00:43:29 -07:00
parent c13e18cb55
commit c89dc50b6c
3 changed files with 29 additions and 4 deletions

View file

@ -553,6 +553,7 @@ public:
}
bool isCasting() const { return casting; }
bool isChanneling() const { return casting && castIsChannel; }
bool isGameObjectInteractionCasting() const {
return casting && currentCastSpellId == 0 && pendingGameObjectInteractGuid_ != 0;
}
@ -2046,6 +2047,7 @@ private:
std::vector<MinimapPing> minimapPings_;
uint8_t castCount = 0;
bool casting = false;
bool castIsChannel = false;
uint32_t currentCastSpellId = 0;
float castTimeRemaining = 0.0f;
// Per-unit cast state (keyed by GUID, populated from SMSG_SPELL_START)