/// <summary> /// 核心功能,所有任务靠这个推进度 /// 执行下个任务 /// </summary> void DoNextTask() { if (this.allTaskGroupList.Count == 0) { return; } //当前任务组执行完毕,执行下一个 if ((curDoTask == null || curDoTask.IsComplete) && this.allTaskGroupList.Count > 0) { curDoTask = this.allTaskGroupList[0]; this.allTaskGroupList.RemoveAt(0); var item = config.Manifest.GetManifestItemByHash(curDoTask.MainAsset); BDebug.LogFormat(">>>>任务组|id:{0} 任务数:{1} - {2}", curDoTask.Id, curDoTask.TaskQueueNum, item.Name); //开始task curDoTask.DoNextTask(); //注册完成回调 curDoTask.onTaskCompleteCallback += (a, b) => { DoNextTask(); }; } }
/// <summary> /// 核心功能,所有任务靠这个推进度 /// 执行下个任务 /// </summary> void DoNextTask() { if (this.allTaskGroupList.Count == 0) { return; } //当前任务组执行完毕,执行下一个 if ((curDoTask == null || curDoTask.IsComplete) && this.allTaskGroupList.Count > 0) { curDoTask = this.allTaskGroupList[0]; this.allTaskGroupList.RemoveAt(0); BDebug.LogFormat(">>>>任务组|id:{1} count:{0} mainasset:{2}", curDoTask.TaskQueueNum, curDoTask.Id, curDoTask.MainAsset); //开始task curDoTask.DoNextTask(); //注册完成回调 curDoTask.onTaskCompleteCallback += (a, b) => { DoNextTask(); }; } }