mirror of
https://github.com/Kelsidavis/WoWee.git
synced 2026-03-22 23:30:14 +00:00
Previously the target cast bar tracked a single target using 4 private fields. This replaces that with unitCastStates_ (unordered_map<uint64_t, UnitCastState>), tracking cast state for every non-player unit whose SMSG_SPELL_START we receive. Changes: - GameHandler::UnitCastState struct: casting, spellId, timeRemaining, timeTotal - getUnitCastState(guid) → returns cast state for any tracked unit - isTargetCasting(), getTargetCastSpellId(), getTargetCastProgress(), getTargetCastTimeRemaining() now delegate to getUnitCastState(targetGuid) - handleSpellStart: tracks all non-player casters (not just the target) - handleSpellGo: erases caster from map when spell lands - update loop: ticks down all unit cast states, erasing expired entries - unitCastStates_ cleared on world reset - renderBossFrames: shows red cast progress bar per boss slot with spell name + remaining seconds — critical for instance interrupt play |
||
|---|---|---|
| .. | ||
| audio | ||
| auth | ||
| core | ||
| game | ||
| network | ||
| pipeline | ||
| platform | ||
| rendering | ||
| third_party | ||
| ui | ||