Coroutine alternative?

Unreal has Latent Actions though they are not as straightforward to use as Unity’s coroutines. To implement a latent action first create a class derived from FPendingLatentAction. The basic idea behind it is that it calls Update until you tell it that the action has finished. Second, after you create your action class, expose it to Blueprint by using specially decorated function.

To learn more details take a look at the implementation of the Delay node (search for FDelayAction) - this is the simplest possible latent action.

Also, while you will typically implement Latent Actions in C++, I strongly suggest using Blueprint to actually call them. It is quite clear and straightforward to create a sequence of actions in Blueprint. It might not be so in C++.