protected bool CompleteMetaDataTasks(int metaDataIndex, PowerTaskList.CompleteCallback completeCallback, object callbackData)
    {
        List <PowerTask> taskList = this.m_taskList.GetTaskList();
        int count = 1;

        for (int i = metaDataIndex + 1; i < taskList.Count; i++)
        {
            Network.PowerHistory power = taskList[i].GetPower();
            if (power.Type == Network.PowerType.META_DATA)
            {
                Network.HistMetaData data = (Network.HistMetaData)power;
                if (data.MetaType == HistoryMeta.Type.TARGET)
                {
                    break;
                }
            }
            count++;
        }
        if (count == 0)
        {
            UnityEngine.Debug.LogError(string.Format("{0}.CompleteMetaDataTasks() - there are no tasks to complete for meta data {1}", this, metaDataIndex));
            return(false);
        }
        this.m_taskList.DoTasks(metaDataIndex, count, completeCallback, callbackData);
        return(true);
    }
 protected bool CompleteMetaDataTasks(int metaDataIndex, PowerTaskList.CompleteCallback completeCallback)
 {
     return(this.CompleteMetaDataTasks(metaDataIndex, completeCallback, null));
 }
 private void DoTasksUntilSpawn()
 {
     PowerTaskList.CompleteCallback callback = (taskList, startIndex, count, userData) => base.StartCoroutine(this.WaitThenFinish());
     base.m_taskList.DoTasks(0, this.m_spawnTaskIndex, callback);
 }