Get an Epic Experience with Premium

AdiButtonAuras

Buffs & Debuffs Login to Add Favorites
  • 0 Likes
  • World of Warcraft
  • 436 Monthly Downloads
  • Supports: 5.4.7
  • 2,640 Total Downloads
  • Updated 04/19/2014
  • Created 11/03/2013
  • 12 Favorites
  • Project Site
  • Release Type: Release
  • License: GNU General Public License version 3 (GPLv3)
  • Newest File: 1.5
or

About AdiButtonAuras

AdiButtonAuras

Display auras, and more, on action buttons.

AdiButtonAuras is a rewrite of Inline Aura, but with different design decisions based on my experience on the latter.

AdiButtonAuras uses a set of rules that apply to one or more spells. Each rule can track an aura on one or more unit and changes the display of the spell accordingly.

Options

Global options

  • do not flash actions on cooldown (do not affect Blizzard flash),
  • do not flash actions out of combat (do not affect Blizzard flash),
  • change the colors of “good” and “bad” borders,
  • tweak the format of the countdown text,
  • change colors of the countdown text.

Spell/item options

  • disable the spell,
  • “promote to flash”: replace any border with the flashing animation,
  • inverted highlight: highlight the spell when it is missing,
  • select which rules should apply.

Supported classes and specializations

Most of the simple buffs are supported through the librarires:

Special cases and hints are handled using customized rules, see below.

There is also a default rule for items not supported by LibItemBuffs-1.0.

Design decisions

Separate button overlays

A separate button overlay is created for each button, with border texture, texts and glowing animation.

Pro: avoid tainting the action buttons, which could cause ADDON_BLOCKED errors. This also reduces complexity, i.e. possibility of bugs.

Con: this does not support skinning (Masque) or custom third-party action buttons (ElvUI). However, AdiButtonAuras fully support Dominos and Bartender4, and should support any addon using the stock action buttons (like Dominos) or LibActionButton-1.0 (like Bartender4).

Hard-coded rules

The rules are hard-coded using a pretty simple Domain Specific Language built on top of Lua.

Each rules specifies the spells to modify, the units and events to watch and one or more handlers. Several rules about the same spell are merged together, or thrown if the character doesn’t know the spell.

Each time one of the event is triggered for one of the unit, the handlers are called to update the state of the associated button.

A set of convenient functions are provided to easily configure most spells. If a more specific task is needed, Lua can be used (see interrupt spells).

Pro: far more powerful than the Inline Aura engine. This allows to show data from one unit merged with the stat of another one, if need be.

Con: there is no way to configure this using a GUI.

No spell auto-discovery

AdiButtonAuras only shows data for existing rules. It does not try to guess what to show.

Pro: avoid showing wrong data.

Con: all spells for all class should be listed.

Using spell ids instead of spell names

AdiButtonAuras uses the spell numerical identifiers, instead of its name, to search for the applicable rules.

Pro: avoid showing information on a wrong spell that as the same name as the intended one.

Con: spells ids are sometimes different depending on shapeshift forms, glyphs or talents. All of them should be listed.

Embedded BugGrabber

BugGrabber is shipped with AdiButtonAuras. You can install BugSack to have a more user-friendly display of errors.

Acknowledgment

Thanks to ckaotik and Rainrider for testing and contributons to class rules.

License

AdiButtonAuras is licensed using the GPL v3.

tag 1.5
de2cdb8537a17bc1565e819c83697794229337eb
Adirelle <adirelle@gmail.com>
2014-04-19 12:59:37 +0200

Some warlock fixes.

--------------------

No changelog

Login to Curse

Don't have an account? Create One.

Get an epic experience with Curse Premium
  • Faster addon downloads
  • Premium-Only Beta Giveaways
  • Ad-Free Curse experience
  • Premium Curse Client
  • and many More Features
  • Learn More »

Leaguepedia PAX Skin Giveaway