mirror of
https://github.com/brues-code/pfUI.git
synced 2026-09-25 09:06:03 +00:00
703d7770ca
ClassicAPI's remote-cast cache is stamped from SMSG_SPELL_START and only expires by computed end time — 1.12 keeps no per-unit interrupt record, so an interrupted cast kept animating on the plate until its would-be finish (BG flag caps being the loudest repro). Nampower does surface the missing signal in Lua: SPELL_FAILED_OTHER (casterGuid, spellId; fired from the SMSG_SPELL_FAILED_OTHER handler) and UNIT_DIED (guid). Stamp a guid-keyed suppression time on either event and have GetCastInfo drop any cast that started before the stamp; a newer cast clears its unit's entry. Both castbar paths (dedicated target frame + central loop) already funnel through GetCastInfo, so one check covers them. The handler only stamps when the unit actually has a tracked cast, and flags the plate via castUpdate for a same-tick hide.