Hi Folks i am trying to learn more about the Action Delegates in C# but i dont understand it so good. So below i have a Code Example from a Unity C# Project. My Question is. What is the purpose of this "Action doneCallback" parameter and what does do the "doneCallback.Invoke()" code exactly. Thanks in Advance!
public static IEnumerator StartWaiting(
float time, Action doneCallback,
float increment, Action<float> incrementCallback,
bool countUp = true)
{
float timeElapsed = 0f;
float timeRemaining = time;
while (timeRemaining > 0f)
{
yield return new WaitForSeconds(increment);
timeRemaining -= increment;
timeElapsed += increment;
incrementCallback.Invoke(countUp ? timeElapsed : timeRemaining);
}
doneCallback.Invoke();
}
public static IEnumerator StartWaiting(float time,
Action doneCallback)
{
yield return new WaitForSeconds(time);
doneCallback.Invoke();
}
}