Removed SuperWoW dependency from castbar and nameplate cast detection. Cast interrupts (sidestep, spell failed) now correctly stop the castbar by setting event = "FAIL" / event = "CAST" on the libdebuff cache entry instead of nil-ing it — preventing stale local references from keeping the castbar alive. UnitCastingInfo fallback is retained for non-Nampower environments but no longer overrides Nampower cast state.
Performance optimizations ported from experimental:
- libdebuff: replace 5s startup timer with next-frame defer
- libdebuff: use arg6 auraSlot directly (Nampower 2.29+) instead of GetDebuffSlotMap lookup
- libdebuff: invalidate slotMapCache on PLAYER_TARGET_CHANGED
- nameplates: detect Nampower 2.27.2+ for GUID-based nameplate lookup
Raidmarkers module ported from experimental:
- added raidmarkers.lua
- added config defaults and GUI section
- registered in modules.xml
focus.lua rework:
- removed CastSpellByNameNoQueue (Nampower's CastSpellByName now supports unit tokens/GUIDs natively)
- /focus Name: TargetByName with correct previous target restore + ClearTarget() fallback
- /focus Name: prefix match via SlashCmdList.TARGET when exact match fails
- suppress UI_ERROR_MESSAGE during targeting attempts
swingtimer fixes:
- non-Hunter ranged bar now fills left->right like MH/OH
- fix 1px artifact on Hunter bar center by using Hide() instead of SetWidth(0.1)
- Fixed swing timer hiding when you switched the target or had no target. Timer now always runs out showing you when the next swing is available even if you swap targets.
- Fixed swing timer hiding when you switched the target or had no target. Timer now always runs out showing you when the next swing is available even if you swap targets.
* fixed offhand timer incorrectly showing for 2H weapon users
* fixed sw_texture resolving pfUI.media key correctly instead of passing raw file path
* added proper offhand weapon detection via GetEquippedItem + GetItemStatsField (Nampower), with vanilla API fallback
* added UNIT_DIED event to reset timer when target dies
* added ACTIONBAR_SLOT_CHANGED event to keep HS/Cleave slot cache up to date
* added immediate offhand bar hide when OH weapon is unequipped mid-combat
* added player GUID caching for UNIT_DIED comparison
* added GUI options: texture, font size, show/hide timer text, MH/OH labels, offhand bar, HS/Cleave queue color
* added HS/Cleave queue color coding for Warriors (green = Cleave, yellow = Heroic Strike)
* added unit frame text options: attack speed, min/max damage, unit string, HP/mana display variants, pet name
* removed unreliable dual-wield heuristic guard (mhAge < 0.1)
Co-authored-by: Zedris