void GoalCompleted(Goal goal) { completed = goals.All(g => g.completed); if (completed && !broadcastCompletion) { broadcastCompletion = true; QuestEvents.QuestCompleted(this); } }