Delay node isn't delaying flow control

Hello!

I created a simple button. And I added a delay so that when player presses button, it will take certain amount of time before door will start opening. problem is that delay won’t delay anything. When I run game, I press button and door will open (or close) immediately! I added one delay before I unlock button again (To prevent button from being pressed multiple times, and that one does work properly. Here is Blueprint code I am using. highlighted node is one that doesn’t do anything.

http://puu.sh/fnBXL/2485eb4dec.jpg

Thanks!

Well, this was a quickie one.

There seems to be a problem if delay isn’t connected to anything. I simply added delay in ‘then 1’ output node of sequence.

http://puu.sh/fnD3D/7ecf4e6a31.jpg

Hey

As far as I understand Sequence Node, is that all will be called in order but without any delay. Meaning if you have your delay in Then 0 it will consequently not Delay Then 1 Sequence but just follow-ups in Then 0 if there was one.

https://docs.unrealengine.com/latest/INT/Engine/Blueprints/UserGuide/FlowControl/index.html#sequence

Best

Hi Motanum,

As Martin correctly mentioned, a Sequence node will run through each event without delay. Your solution will work for you in this case, but be aware when using a Sequence that a delay will only delay what follows it in event, but will not delay next event from firing. So in example above, you have a delay at beginning of your second event, which will delay door opening nodes, but Play node in third event will fire before delay has finished and thus before door opening begins. Generally, if you need events to follow each other with any sort of passage of time, you should link them all together in same event. Sequence will fire each event virtually simultaneously.

Yup, I think that is what’s happening. Which is good in my case. Unfortunately with preview 5 no sound bug, I cant do many test. Thanks!

how is this not a bug? i often use sequence to split up large chains of code, for sake of readability. i expect sequence to, as name suggests, execute code in sequence, and not just hit and run. you should really consider fixing this, and introduce a NoWaitSequence or whatever, for those who actually need this very specific behavior. or leave Sequence as is, and give us a Then that waits.

i think sequence is an async function. So, every pin is executed at same time.