There is language in some coroutines (like in the AIController class) that specifically state:
// This coroutine never finishes by itself and can only be terminated externally.
I checked the primer, and I did not find any instances of the language ‘terminate’ or ‘externally’ nearby mentions of coroutines, so my assumption is that ‘terminated externally’ means ‘this coroutine waits for a particular message from UE4’s runtime that signals its own termination’, instead of there existing a language feature that enables the programmer the ability to terminate a coroutine.
Does such a language feature exist? If so, how does it work?
More generally, I noticed the kill switch “abort_coroutines_on_this”, but I’m wondering if SK provides more granular control.
Some kind of API like:
active_coroutines(object) -> Returns a list of references to active coroutines operating on object
abort_coroutine(object, acr[x]) -> aborts active coroutine x on object.
stop_coroutine(object, acr[x]) -> stalls active coroutine x on object.
stopped_coroutines(object) -> Returns a list of references to stopped coroutines operating on object
start_coroutine(object, scr[x]) -> starts a stopped coroutine x on object.
I’m not suggesting a feature request. I just want to know if this kind of handling of coroutines exists in SK, and how to achieve it.
I know SK allows us to bind coroutines as return objects. But the documentation states the new object is only bound after the coroutine has completed, so I stopped investigating that approach.
To be clear, this is more a SK language question than a “I have a particular need to accomplish in UE4 with SK.” one.