コード例 #1
0
    public void TestMatching(ITaskPerformer performer, ITaskAcceptor acceptor)
    {
        List <PerformerTask> matches = TaskMatcher.GetEnabled(performer, acceptor);

        foreach (PerformerTask m in matches)
        {
            Debug.Log(m);
        }
    }
コード例 #2
0
 void OnEnterPoint(GridPoint point)
 {
     if (point.Unit is Flower)
     {
         flowerMatch = TaskMatcher.GetPerformable(this, point.Unit as ITaskAcceptor);
         if (flowerMatch != null)
         {
             flowerMatch.Start(true);
         }
     }
 }
コード例 #3
0
    protected override void OnUpdateSelection(List <ISelectable> selected)
    {
        this.selected = selected;

        if (selected.Count == 0)
        {
            menu.gameObject.SetActive(false);
            // SetButtons (Player.Instance.PerformableTasks.ActiveTasks.Values.ToList ());
            return;
        }
        menu.gameObject.SetActive(true);

        List <ITaskPerformer> performers = selected
                                           .FindAll(x => x is ITaskPerformer)
                                           .ConvertAll(x => x as ITaskPerformer);

        List <PerformerTask> tasks = TaskMatcher.GetTasksInCommon(performers, true);

        SetButtons(tasks);
    }