Fix score results not populated

This commit is contained in:
smoogipoo 2018-12-28 00:24:02 +09:00
parent 5c1280c092
commit be86281c72
1 changed files with 5 additions and 3 deletions

View File

@ -163,8 +163,6 @@ protected void NotifyNewJudgement(JudgementResult result)
AllJudged?.Invoke();
}
private readonly Dictionary<HitResult, int> scoreResultCounts = new Dictionary<HitResult, int>();
/// <summary>
/// Retrieve a score populated with data for the current play this processor is responsible for.
/// </summary>
@ -180,9 +178,11 @@ public virtual void PopulateScore(ScoreInfo score)
var hitWindows = CreateHitWindows();
foreach (var result in Enum.GetValues(typeof(HitResult)).OfType<HitResult>().Where(r => r > HitResult.None && hitWindows.IsHitResultAllowed(r)))
score.Statistics[result] = scoreResultCounts.GetOrDefault(result);
score.Statistics[result] = GetStatistic(result);
}
protected abstract int GetStatistic(HitResult result);
public abstract double GetStandardisedScore();
}
@ -378,6 +378,8 @@ private double getScore(ScoringMode mode)
}
}
protected override int GetStatistic(HitResult result) => scoreResultCounts.GetOrDefault(result);
public override double GetStandardisedScore() => getScore(ScoringMode.Standardised);
protected override void Reset(bool storeResults)