Stop delay node blueprint

So I’ll try and explain my problem as clear as possible,

In my test blueprint (smaller version of my original) I have variable boolean (TestVar) which is by default set to 0. When it is checked in the branch node it will go into the lower “false” track. Here it is set to 1. Then it is checked again by branch and if true it may continue. It then enters a delay. After the delay it is checked again and if still true it may print a string. Then it execution wire can join the upper track again to be set back to 0 and print stop.

Now if I press F 2 times the TestVar is set to 0 so as soon as the execution leaves the delay it will not continue any more. However if I press F 3 times the boolean is set back to 1 and the execution will exit the delay.

In my original blueprint there are more delays and more checks. However I can’t seem to dodge the fact that it is possible to have more executions in serial.

What I would like to have is a way to stop/reset my delay as soon as the boolean is set back to 0 to avoid getting uncontrolled executions.

I hope I made my question a bit clearer, any help would be appreciated.


i think you still have the same problem as i do. if you press f 3 times within 5 seconds (delay time) there is a possibility of multiple executions running along a single wire.

ooohh ok is easy i dont read the 3 time ok wait a moment

I did not understand very well what you want you.

  1. but you wanna press f 3 time and set delay or reset delay?
  2. press f3 to set stop or continue ?
  3. pres f one time set stop and pres f 2 time set var off and set delay if you pres f 3 time close the delay and you can pres again and sai stop ?

While I can’t be much of help, I want you to know that delay may not be the one you want to use here. Because no matter what, the delay will stop all the actions that’s going out of it before it finishes.

You either need a different more detailed approach, or use Retriggerable Delays to an extend. Good luck.

Okay so let me try again.

This time I took apart my own network to make it more clear. What you see here is only a portion, but it is pretty much the same trough out the network.

Its Matinee start, delay , Matinee start, delay, etc. etc. there are some nodes here and there to reset the matinee so it is not disturbing the scene.

After every delay there is a branch checking if the Boolean is set to 0 or 1 so that if the player pressed the start button again (space this time) the delay will not continue the execution. for everything will be reset once the player presses the start button again.

Here comes the problem. if the execution is inside a delay once the spacebar is pressed again(reset). it will not be reset like the rest of the scene. Now these delays are as long as up to 30 seconds, so if the player decides to restart within these 30 seconds and presses the space bar again(restart) to restart the process, the Boolean is set back to 1 and the execution will start again. But if there was still an execution somewhere inside a delay this one will be able to continue as well which results in a double execution on a single wire.

So my question here is how to stop/reset these delay’s

Now is it perfectly possible that I am building this in the wrong way so if any of you has a better view on this problem, please feel free to share it :slight_smile: