Skip to content

Update aura-backed secondary resources on UNIT_AURA#194

Open
KogasaPls wants to merge 1 commit into
Snsei987:mainfrom
KogasaPls:event-driven-aura-secondary-resource
Open

Update aura-backed secondary resources on UNIT_AURA#194
KogasaPls wants to merge 1 commit into
Snsei987:mainfrom
KogasaPls:event-driven-aura-secondary-resource

Conversation

@KogasaPls

Copy link
Copy Markdown

This makes the Secondary Resource Bar refresh when aura-backed custom resources change instead of waiting for a repaint. Visually, it eliminates the 100-250ms worst-case lag between the Cooldown Manager's tracker and the Secondary Resource Bar tracker if they're both enabled.

The resources covered here are:

  • Devourer Soul Fragments
  • Maelstrom Weapon
  • Tip of the Spear
  • Icicles

When one of these auras was added, updated, or removed, the bar would not typically be updated until the fixed-rate UpdateDisplay() polling caused a repaint every 0.25s (or 0.1s with fast updates enabled). Subscribe to UNIT_AURA instead of waiting for the UpdateDisplay() timer so that the custom resource updates instantly.

Polling is still appropriate for resources that change very frequently (health/energy/mana). For simplicity and safety, the polling tick will still update the secondary resource bars even though they're event-driven now. A future optimization direction would be to reduce the work done via polling.

Context

This follows the direction of commit 6011ce1, which moved Tip of the Spear away from manual spellcast tracking and toward direct aura reads for accuracy.

It is deliberately narrower than #86. That PR looks at broader OnUpdate optimization; this one only adds the missing event trigger for custom resources that are already aura-backed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant