As a Shadow Priest, I use a macro to announce to those nearby who I'm casting Power Infusion on. I do this for clarity in a raid and Mythic+ setting. It works fairly well.

The problem I'm encountering is that I'm sometimes pressing this macro before Power Infusion's cooldown timer is over. This causes the /yell message to send regardless of whether I actually cast Power Infusion or not, leading to me awkwardly mentioning in voice chat that I've not, actually, cast Power Infusion.

Here's my current macro:

#showtooltip Power Infusion
/target [@mouseover,help,nodead][help,nodead][@player]
/cast Power Infusion
/yell Casting Power Infusion on %t

I'm abusing /targetlasttarget to make this an easy-to-use mouseover macro.

Is there a way to make this macro not execute at all if Power Infusion is on cooldown?

  • 2
    No. With the help of WeakAuras or some macro addon you could probably do that though. I made a script announcing interrupts by text and sound only when successful, so it's certainly doable.
    – dly
    Jan 25, 2023 at 11:25
  • Can you check the time? Aren't cooldown lengths consistent?
    – Malady
    Jan 29, 2023 at 20:45
  • @Malady Yes, actually. Power Infusion is always a 2 minute cooldown.
    – Spevacus
    Jan 29, 2023 at 20:52

2 Answers 2


So Blizzard removed the ability for a macro to make a determination whether or not to cast a spell. People were abusing this and making automated combat macros that would always cast the most effective barrage of spells/attacks in combat, and it was a game-changer for people on both sides.

You can check that a spell is on cooldown in Lua with GetSpellCooldown, but you can't call that from a macro. (Calling Lua from a macro was the main part of what was removed from the macro abilities.)

  • 1
    Darn. Well, thanks for the explanation. Gotta love folks ruining a good thing.
    – Spevacus
    Jan 29, 2023 at 19:25

Since, as commented, "Power Infusion is always a 2 minute cooldown.", then why not just wait for 2 minutes before casting again?

Not sure if that's possible with this macro system, though.

  • What I'm trying to do is make the macro smart and not perform any action if I unwittingly press the macro before those 2 minutes elapse. This just unfortunately isn't possible with WoW's macro system. I do, of course, try to wait 2 minutes as to avoid the confusion that comes with yelling out that I've cast a spell when I haven't, but in the middle of a pull when I'm about to use everything I've got, it's easy to press the macro button a bit early, before Power Infusion is castable again.
    – Spevacus
    Jan 30, 2023 at 16:28
  • @Spevacus - And it can't check if itself is pressed before 2 min? ... I wonder if there's some program that can disable a button from registering.
    – Malady
    Jan 30, 2023 at 17:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .