Пример #1
0
 public object AddTaskTarget([FromBody] TaskTarget tageTarget)
 {
     return(base.OperationToResult(() =>
     {
         return RedisBase.HashSet <TaskTarget>(TASK_TARGET, tageTarget.Guid, tageTarget);
     }));
 }
Пример #2
0
 public Task()
 {
     sortedTarget = SortMonster();
     targets      = SetTargets(sortedTarget);
     quantity     = SortQuantity();
     progress     = 0;
     reward       = calculateReward();
 }
Пример #3
0
        public TaskTarget SortMonster()
        {
            TaskTarget t = monsters[Main.rand.Next(monsters.Length)];

            while (t.Available() == false)
            {
                t = monsters[Main.rand.Next(monsters.Length)];
            }
            return(t);
        }
Пример #4
0
        public bool AddTaskTarget(TaskTarget taskTarget)
        {
            if (string.IsNullOrEmpty(taskTarget.Guid))
            {
                taskTarget.SetGuid();
            }
            taskTarget.CreateTime = DateTime.UtcNow.ToString();
            KeyValuePair <string, TaskTarget> model = new KeyValuePair <string, TaskTarget>(taskTarget.Guid, taskTarget);

            return(RedisBase.HashSet <KeyValuePair <string, TaskTarget> >(this._key, taskTarget.Guid, model));
        }
Пример #5
0
        private TaskTarget SortBoss()
        {
            Random     r    = new Random();
            TaskTarget boss = bosses[r.Next(maxValue: bosses.Length)];

            while (boss.Available() == false)
            {
                boss = bosses[r.Next(maxValue: bosses.Length)];
            }
            return(boss);
        }
 public static void AddTarget(TaskTarget target)
 {
     if (targets.ContainsKey(target.taskName))
     {
         targets[target.taskName].Add(target);
     }
     else
     {
         targets[target.taskName] = new List <TaskTarget>();
         targets[target.taskName].Add(target);
     }
 }
Пример #7
0
        private NPC[] SetTargets(TaskTarget sortedTarget)
        {
            NPC[] targets = new NPC[sortedTarget.names.Length];
            int   npctype;
            NPC   t;

            for (int i = 0; i < targets.Length; i++)
            {
                t       = new NPC();
                npctype = NPCID.Search.GetId(sortedTarget.names[i]);
                t.SetDefaults(npctype);
                targetIDs.Add(npctype);
                targets[i] = t;
            }
            return(targets);
        }
Пример #8
0
    public bool AddTask(TaskTarget taskTarget)
    {
        if (taskTarget.GetTaskType() != currentTaskType)
        {
            throw new PersonException("taskTarget.GetTaskType() != currentTaskType");
        }
        switch (taskTarget.GetTaskType())
        {
        case TaskType.GetResources:
            Task newTask = new Task(taskTarget.gameObject, taskTarget.transform.position, TaskType.GetResources);
            tasks.Add(newTask);
            if (CanFindFreeWorker())
            {
                BindTaskToWorker(WorkerManager.FindFreeHuman(), newTask);
                Debug.Log("Task " + newTask.GetTaskType() + " added");
            }
            else
            {
                freeTasks.Add(newTask);
                Debug.Log("Task " + newTask.GetTaskType() + " added to free task list");
            }
            return(true);

        case TaskType.BuildBuilding:
            Task newTaskBuildBuilding = new Task(taskTarget.gameObject, taskTarget.transform.position, TaskType.BuildBuilding);
            tasks.Add(newTaskBuildBuilding);
            if (CanFindFreeWorker())
            {
                BindTaskToWorker(WorkerManager.FindFreeHuman(), newTaskBuildBuilding);
                Debug.Log("Task " + newTaskBuildBuilding.GetTaskType() + " added");
            }
            else
            {
                freeTasks.Add(newTaskBuildBuilding);
                Debug.Log("Task " + newTaskBuildBuilding.GetTaskType() + " added to free task list");
            }
            currentTaskType = TaskType.None;
            return(true);
        }
        return(false);
    }
 public static void RemoveTarget(TaskTarget target)
 {
     targets[target.taskName].Remove(target);
 }
Пример #10
0
 public BossTask()
 {
     target  = SortBoss();
     targets = SetTargets(target);
     reward  = SetReward();
 }