private void UpdateObjectives(Objective o) { if (o.IsCompleted()) { ClearedObjectives.Add(o); } if (o.IsFailed()) { FailedObjectives.Add(o); } }
private void HandleCompleted() { for (int i = ClearedObjectives.Count - 1; i >= 0; i--) { var o = ClearedObjectives[i]; onObjectiveRemoved(o); o.Completed(); o.Cleanup(); Objectives.Remove(o); ClearedObjectives.Remove(o); if (o) { Destroy(o); } } }