Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- public struct TaskPair
- {
- public Task reference;
- public TargetTask targetTask;
- public object target;
- public TaskPair(Task _ref, TargetTask _task, object _target)
- {
- reference = _ref;
- targetTask = _task;
- target = _target;
- }
- }
- public delegate void TaskCompleted(TaskType type, object data);
- public class TaskHandler : MonoBehaviour {
- public List<TaskPair> makeItemTasks = new List<TaskPair>();
- public List<TaskPair> killTasks = new List<TaskPair>();
- public List<TaskPair> talkTasks = new List<TaskPair>();
- public List<TaskPair> goToTasks = new List<TaskPair>();
- public List<TaskPair> useTasks = new List<TaskPair>();
- public void registerTask(TaskType _type,Task _ref, TargetTask _task, object _target)
- {
- TaskPair newTaskPair = new TaskPair(_ref, _task, _target);
- switch (_type)
- {
- case TaskType.MakeItem:
- makeItemTasks.Add(newTaskPair);
- break;
- case TaskType.Kill:
- killTasks.Add(newTaskPair);
- break;
- case TaskType.Talk:
- talkTasks.Add(newTaskPair);
- break;
- case TaskType.GoTo:
- goToTasks.Add(newTaskPair);
- break;
- case TaskType.UseItem:
- useTasks.Add(newTaskPair);
- break;
- default:
- break;
- }
- }
- void Update()
- {
- /*
- * IF DELEGATE IS UP THEN CHECK
- * IF THE TYPE AND CHECK THE RIGHT LIST FOR
- * STUFF THAT MATCHES AND IF SO NOTIFY THE DAMN
- * REFERENCE.
- */
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement