示例#1
0
 public static void FinishTask(Task task)
 {
     if (task.TaskType == TaskType.CombatTask)
         _combatTasksInProgress.Remove(task);
     else
         _tasksInProgress[task.TaskType].Remove(task);
 }
示例#2
0
        public static void AddTask(Task task)
        {
            //if (task.TaskType == TaskType.CollectingToDepot)
            //    return;
            if (_tasks.ContainsKey(task.TaskType) == false)
            {
                _tasks.Add(task.TaskType, new List<Task>());
                _tasksInProgress.Add(task.TaskType, new List<Task>());
                _numberOfRequestsInProgress.Add(task.TaskType, 0);
            }

            _tasks[task.TaskType].Add(task);
        }
示例#3
0
 private static void TakeTask(Task task)
 {
     _tasks[task.TaskType].Remove(task);
     _tasksInProgress[task.TaskType].Add(task);
 }
示例#4
0
 private static void TakeCombatTask(Task task)
 {
     _combatTasks.Remove(task);
     _combatTasksInProgress.Add(task);
 }
示例#5
0
 private static void AddCombatTask(Task t)
 {
     _combatTasks.Add(t);
 }
示例#6
0
 public static void TaskSmallFail(Task task)
 {
     _tasksInProgress[task.TaskType].Remove(task);
     AddTask(task);
 }
示例#7
0
 public static void TaskFailed(Task task)
 {
     AddTask(task);
     _tasksInProgress[task.TaskType].Remove(task);
     task.HasFailed = true;
 }
示例#8
0
 public static void TaskAbsolete(Task task)
 {
     if (task.TaskType == TaskType.CombatTask)
     {
         _combatTasksInProgress.Remove(task);
     }
     else
         _tasksInProgress[task.TaskType].Remove(task);
 }