//--------------------------------------------------------------------- public FTasker whenAll(Dictionary <byte, object> map_param, AllTaskDoneCallBack alltask_done_callback, params FTask[] task) { FTasker f_tasker = new FTasker(map_param, alltask_done_callback, task); ListTaskerAll.Add(f_tasker); return(f_tasker); }
//--------------------------------------------------------------------- public void Update(float tm) { ListTaskerCopy.Clear(); ListTaskerCopy.AddRange(ListTaskerAll); foreach (var i in ListTaskerCopy) { if (i == null) { continue; } if (i.isAllDone()) { ListTaskerDone.Add(i); } else { i.update(tm); } } foreach (var i in ListTaskerDone) { ListTaskerAll.Remove(i); } ListTaskerDone.Clear(); }
//--------------------------------------------------------------------- public void startTask(FTasker f_tasker) { ListTaskerAll.Add(f_tasker); }