public void AssignTask(TaskType taskType) { if (tasksQueue.IsQueued(gameObject)) { return; } Task task; switch (taskType) { case TaskType.PlantTask: if (PlantGO || !IsPlowed) { return; } PlantItem plantItem = buildManager.PlantItem; task = new TaskPlant(gameObject, plantItem); break; case TaskType.PlowTask: if (PlantGO || IsPlowed) { return; } task = new TaskPlow(gameObject); break; default: return; } tasksQueue.AddTask(task); }
public void AssignTask(TaskType taskType) { if (tasksQueue.IsQueued(gameObject)) { return; } Task task; switch (taskType) { case TaskType.CollectTask: if (!IsCollectable) { return; } task = new TaskCollect(gameObject, PlantItem); break; default: return; } tasksQueue.AddTask(task); }