private void OnConditionComplete(AchievementCondition condition) { _completedCount++; if (_completedCount == _conditions.Count) { OnCompleted?.Invoke(this); } }
public void AddCondition(AchievementCondition condition) { _maxValue++; condition.OnComplete += OnConditionCompleted; _conditions.Add(condition); }
public void AddCondition(AchievementCondition condition) { _conditions[condition.Name] = condition; condition.OnComplete += OnConditionComplete; }
private void OnConditionCompleted(AchievementCondition condition) => SetValue(Math.Min(_value + 1, _maxValue));