Title. I tested ordering a unit to blink and then queueing orders for attacking units/attack moving after the blink, the unit starts casting blink and then immediately attack-moves, thus canceling the blink. Would be nice to get these natives working like shift+click, which does actually queue the orders.
EDIT: Adding a 0s wait between the blink order and the queueing of the attack order does allow time for the blink to finish before issuing the attack order, so that’s good for now, but should not be required for this to work properly.
1 Like
I’ve had the same problem, fix please.
Bumping this with more info, as I was incorrect on the edit. I did finally get it to work under very specific circumstances which I am not able to use in my map. With a cast backswing and cast point of 0 on the casting unit, and 0 casting time and 0 duration - hero on the blink spell, the following code will actually let the blink cast finish before issuing the queued order:
local location p = GetRandomLocInRect(GetPlayableMapRect())
local location p2 = GetRandomLocInRect(GetPlayableMapRect())
call IssuePointOrderLocBJ( gg_unit_Ewar_0000, "blink", p )
call TriggerSleepAction(0)
call BlzQueuePointOrderById(gg_unit_Ewar_0000, 851986, GetLocationX(p2), GetLocationY(p2))
however, this is a lot of hoops to jump through and doesn’t allow for any casting time on blink which is not very good
also worth noting that under the same circumstances that the above code works, the following code does not work (the blink does not finish casting):
local location p = GetRandomLocInRect(GetPlayableMapRect())
local location p2 = GetRandomLocInRect(GetPlayableMapRect())
call BlzQueuePointOrderById( gg_unit_Ewar_0000, 852525, GetLocationX(p), GetLocationY(p) )
call TriggerSleepAction(0)
call BlzQueuePointOrderById(gg_unit_Ewar_0000, 851986, GetLocationX(p2), GetLocationY(p2))
it would definitely be great to have this fixed