How to execute a function after another function has finished its execution?
Hi everyone
I've been trying to build a "event system" for a project that I'm working on . Here is how I'm doing it : I populate a list with reference to a gameObject and the functions that I need to execute from that gameObject . Then , when the "event" is triggered (in this case , when the player steps into a trigger collider) I just loop over the list and Invoke the functions inside it.
The problem with this is that every single function inside the list gets executed at the same time. This works fine in some cases but if I want to create a more cinematic event I need to have the ability to execute a function after the previous one has finished it's execution .Sadly I have no idea how to do that.
I've been reading a lot of the documentation of both Unity and C# about coroutines and delegates but I can't seem to wrap my head around all those things and find a way to do implement them on code .So I need your help with that :How can I achieve this?
TL;Dr version : I need your help in coming up with a way to execute a function after the previous function has ended it's execution .These functions would be stored in an array or list.
Your answer
Follow this Question
Related Questions
Nothing after coroutine gets executed 1 Answer
[C#] How to write a generic yield return WaitForCondition with an expression as argument ? 3 Answers
Coroutine doesn't continue after yield another coroutine 0 Answers
IEnumerator skips remaining function after yield 1 Answer
Listening keypresses out of Update? 1 Answer