private IEnumerator CorotLoopExecuteInterval(float loops, float interval, voidDlg dlg) { for (int iii = 0; iii < loops; iii++) { dlg?.Invoke(); yield return(new WaitForSeconds(interval)); } }
public void LoopExecuteInterval(float loops, float interval, voidDlg dlg) { StartCoroutine(CorotLoopExecuteInterval(loops, interval, dlg)); }
public void WaitThenExecute(float t, voidDlg dlg) { StartCoroutine(CorotWaitThenExecute(t, dlg)); }
private IEnumerator CorotWaitThenExecute(float t, voidDlg dlg) { yield return(new WaitForSeconds(t)); dlg?.Invoke(); }
// Added after I leanred what Actions are public void WaitThenExecuteAction(float t, Action act) { voidDlg vdlg = () => act?.Invoke(); WaitThenExecute(t, vdlg); }