Without some sort of verification that a mouseover target exists, it will be attempting to cast at mouseover regardless of whether or not there is one.
So, are you implying that the failure “target does not exist” does not cause the macro to move to the second statement, but failing the “help” condition check does?
This makes sense assuming that the underlying code doesn’t return a status condition to the macro after attempting to execute it, but I guess I expected it to do that.
Focus, mouseover, target, etc all assign a target that the macro command will act upon and are not boolean conditionals like most other conditionals. Thus the macro has no conditionals to mark the clause as false, leaving the conditional satisfied even if the target specified isn’t valid for the spell being cast.
I think what’s making this more confusing for me is that the mouseover macro with two conditions only works when mousing over a unit but a mouseover macro without a second condition works when mousing over the unit frame as well.
So, is there a way to get this to work while mousing over a unit frame?
Objective:
When mousing over a friendly unit or unit frame, cast the spell on them. Otherwise, cast it on me.
P.S. maybe it has to do with the fact that the spell says “party or raid member” and not “target”?
This won’t let you cast on your target while targeting them, only mouseover. If you want it to also do target use the following and make sure your Self Cast setting is set to Auto.
Blessing of Freedom can be cast on people not in your group, so that’s not the problem.
You didn’t answer the other 2 questions so one of them is likely the cause…
If you have it bound to a mouse button that’s why it’s not working. Unit Frames eat mouse clicks and you’ll either need to use Blizz’s Click Casting option or an addon like Clique to get around it.
If you have it on a keybind that matches your Self Cast Key then that’s the problem. There’s a bug that was introduced in 9.2.5 that makes macros that share modifiers with your Self Cast Key to only cast on yourself, regardless of how the macro is coded. Change the Self Cast option to Auto rather than one of the key options to correct the issue.