示例#1
0
    void _activeObjectives_UserObjectiveRemoved(GameplayObjective objective)
    {
        Control toRemove = _objectiveListFrame.Controls.Find((c) => objective.Equals(c.Tag));

        _objectiveListFrame.Controls.Remove(toRemove);
        _objectiveListFrame.PerformLayout();
    }
示例#2
0
    void _activeObjectives_UserObjectiveTaskAdded(GameplayObjective objective, ObjectiveTask newTask)
    {
        Frame objectiveFrame = _objectiveListFrame.Controls.Find((c) => objective.Equals(c.Tag)) as Frame;

        if (objectiveFrame == null)
        {
            DebugFormatter.LogError(this, "Could not find frame for objective {0}. Failed to update objective interface", objective.Name);
            return;
        }
        Label newTaskLabel = CreateTaskLabel(newTask);

        objectiveFrame.Controls.Add(newTaskLabel);
        objectiveFrame.PerformLayout();
        _objectiveListFrame.PerformLayout();
        newTask.TaskCompleted += (t) => task_TaskCompleted(t, newTaskLabel);
    }