So I made two actions run in parallel, but at some point I have a situation where I want the two paths to "sync up" after they reach their end, and it's not always the same path that finishes first so I can't just put the rest into
one of the paths. So I tried this:
But that caused quite a mess, because what I think ended up happening is the creation of this situation:
Would it be feasible, when connecting the nodes as in the first image, that the system waits for both paths to finish, and then continues once again down a single path (as picture 1 would suggest)? I could do this with variables, I think, but this might be an easier solution?
Comments
Doing what you suggest isn't so simple, however, because there's a number of scenarios in which it couldn't work (e.g. if the right-branch had a Check action that failed, so any "waiting" would be indefinite.
It's for this reason that I also added the Engine: Check ActionList Action along with this one. Rather than have the two branches link up again, cut one off (the one you expect to take longer), and have the other run a new Cutscene. Then begin that new Cutscene with a looping Engine: Check ActionList Action, that checks the first Cutscene, so that it'll only run the rest of it once the other branch has finished running as well.
You could also think about moving this Action (+ a Engine: Run ActionList Action) into a separate ActionList asset, and giving it parameters. You could then use it as a "stop gap" to ensure one ActionList has run before beginning another.
You might run into problems if you have both branches call this asset, because it'd get run twice. Luckily, 1.43 will come with a new ActionList: Kill Action that can be used to end any other instances of the same asset. (Some lists are being renamed)
An example asset, then, could look something like: