JasonJonesLASM 4 years ago updated 2 years ago 4

I created a simple set of macros for creating your own Coroutine. Under the hood, I created 1 Custom Unit to allow the creation and execution of a macro coroutine. There were just too many bugs in Flow Control, and I figured making this, and being able to actually design stuff like a wait unit, to your own custom needs, would be much more viable, and expressive on everyone elses part if they could design how execution over time would work in your own cases. The custom unit itself outputs the CoroutineRunner instance and the instance of the last fired routine. This is Async like any coroutine, so it is up to you to determine if it should be canceled or not, depending on your needs.

Only thing left to figure out, is some way of yielding the current coroutine with another, so you can do sequences and waiting for something to occur or not. 

PLEASE FOLLOW THESE INSTRUCTION (Or else you'll probably break the connections in the macros). 

1) Add ONLY Coroutine.cs to the project.
2) Rebuild the unit options.
3) Extract/Add in the Macros once the previous is complete.

DOWNLOAD v1.0.2 (1.4.1)

DOWNLOAD v1.0.1 (1.4)

Bolt Version:
Unity Version:
Scripting Backend:
.NET Version (API Compatibility Level):

I got a request to update this to 1.4. Was tested in 1.4.0f11

Download v1.0.1 (1.4)


Updated to version 1.0.2 with a fix.

- Removed reference to FindInstances, which no longer exists. Now gets it directly from the flow stack.

DOWNLOAD v1.0.2 (1.4.1)

does these work in 1.4.2?

Not properly, there is something broken about it. I've been trying to pin it down for two weeks now. So, I've essentially rewrote the underlying custom unit to try and clean it up and get it going, but I've been hit with another error I've managed to fix in other add-ons, but not this. I'm thinking there is a reason a waitable while loops don't exist, but maybe I'm missing something. 

I'll keep trying, but Incase anyone's curious and understands why the error occurs, it's the old "Must be within a super unit" to invoke. Not sure what to do anymore, but I could post some code for anyone who may be able to help.