There are no aliases with their own delays. I'm afraid I still don't understand how that will work. You're leaving out the ELSE.
If I do:
IF SYS PWR=FALSE -----3.0sec delay ELSE var system power =true alias TV-HDMI2 delay 0.1 ALIAS receiver-dvd if(system mem, false) -----delay 0.1 -----alias audio 3-left jump media center
The macro stops after the 3.0 second delay because SYS PWR=False. If the system is already on and SYS PWR=True then it will complete as usual.
I have never programmed a clients system to be so complex but this is my personal setup and I have added a lot of little tweaks for myself.
I kept accidentally turning off my projector so the very first step in the macro takes me to an "Are you sure you want to turn off the projector" screen if the projector is powered on.
The System MEM variable has to do with loading system memories in my Yamaha receiver. If I manually load a system memory (seating position calibration) I don't want it to load the default position (Left) every time a source is switched until the system is shut down.