Add GetDisplayScore() extension for SoloScoreInfo

To be used server-side for ppy/osu-queue-score-statistics#134.
This commit is contained in:
Bartłomiej Dach 2023-09-28 12:02:57 +02:00
parent fc38b2c024
commit fc4390884f
No known key found for this signature in database

View File

@ -4,6 +4,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using osu.Game.Online.API.Requests.Responses;
using osu.Game.Rulesets.Scoring; using osu.Game.Rulesets.Scoring;
namespace osu.Game.Scoring.Legacy namespace osu.Game.Scoring.Legacy
@ -16,6 +17,9 @@ namespace osu.Game.Scoring.Legacy
public static long GetDisplayScore(this ScoreInfo scoreInfo, ScoringMode mode) public static long GetDisplayScore(this ScoreInfo scoreInfo, ScoringMode mode)
=> getDisplayScore(scoreInfo.Ruleset.OnlineID, scoreInfo.TotalScore, mode, scoreInfo.MaximumStatistics); => getDisplayScore(scoreInfo.Ruleset.OnlineID, scoreInfo.TotalScore, mode, scoreInfo.MaximumStatistics);
public static long GetDisplayScore(this SoloScoreInfo soloScoreInfo, ScoringMode mode)
=> getDisplayScore(soloScoreInfo.RulesetID, soloScoreInfo.TotalScore, mode, soloScoreInfo.MaximumStatistics);
private static long getDisplayScore(int rulesetId, long score, ScoringMode mode, IReadOnlyDictionary<HitResult, int> maximumStatistics) private static long getDisplayScore(int rulesetId, long score, ScoringMode mode, IReadOnlyDictionary<HitResult, int> maximumStatistics)
{ {
if (mode == ScoringMode.Standardised) if (mode == ScoringMode.Standardised)