AdiButtonAuras

AdiButtonAuras

404k Downloads

Warrior: Execute Rule - (*temporary) = nil

IngeniousDox opened this issue ยท 4 comments

commented

Target any unit, with the Execute rule enabled, stack the errors.

AdiButtonAuras\rules\Warrior.lua:40: Usage: UnitHealthMax("unit")
[C]: in function UnitHealthMax' AdiButtonAuras\rules\Warrior.lua:40: in function handler'
AdiButtonAuras\core\Overlays.lua:479: in function <AdiButtonAuras\core\Overlays.lua:469>

Locals:
(*temporary) = nil

(I'm following Github master btw.)

commented

This is strange. The enemy unit token failed to map to an actual unit token. Do you use a macro for Execute? If so, could you please post it?

commented

Aight, you pointed me in the right direction. I macro everything. But never had issues with it. And my normal macros with /click ActionButton etc weren't actually the culprit here. However, I added very simple macro for mouseover executes, that turned out to be it.

/cast [@mouseOver] Execute

This starts throwing the errors, since ofc I don't hover over an enemy unit all the time, and I didn't condtional it. Changing it to:

/cast [@mouseOver,exists] Execute

Doesn't throw an error. So, basically a nil check in your code to shortcircuit the execute rule (perhaps other rules) would protect against unconditional mouseover macros.

commented

I'll see into it once I'm back from vacation. The dynamic units system currently in place has some undesired side effects and I'll have to look deeper into it. I'm glad it is fixed for you for now

commented

Fixed by 7ddac0b.