diff --git a/osu.Game/Screens/Play/Player.cs b/osu.Game/Screens/Play/Player.cs
index 4306d13ac2..05133fba35 100644
--- a/osu.Game/Screens/Play/Player.cs
+++ b/osu.Game/Screens/Play/Player.cs
@@ -1159,7 +1159,10 @@ namespace osu.Game.Screens.Play
///
/// The to be displayed in the results screen.
/// The .
- protected virtual ResultsScreen CreateResults(ScoreInfo score) => new SoloResultsScreen(score, true);
+ protected virtual ResultsScreen CreateResults(ScoreInfo score) => new SoloResultsScreen(score, true)
+ {
+ ShowUserStatistics = true
+ };
private void fadeOut(bool instant = false)
{
diff --git a/osu.Game/Screens/Ranking/SoloResultsScreen.cs b/osu.Game/Screens/Ranking/SoloResultsScreen.cs
index 6d4feeb0db..110e813e04 100644
--- a/osu.Game/Screens/Ranking/SoloResultsScreen.cs
+++ b/osu.Game/Screens/Ranking/SoloResultsScreen.cs
@@ -20,6 +20,12 @@ namespace osu.Game.Screens.Ranking
{
public partial class SoloResultsScreen : ResultsScreen
{
+ ///
+ /// Whether the user's personal statistics should be shown on the extended statistics panel
+ /// after clicking the score panel associated with the being presented.
+ ///
+ public bool ShowUserStatistics { get; init; }
+
private GetScoresRequest getScoreRequest;
[Resolved]
@@ -39,13 +45,22 @@ namespace osu.Game.Screens.Ranking
{
base.LoadComplete();
- soloStatisticsWatcher.RegisterForStatisticsUpdateAfter(Score, update => statisticsUpdate.Value = update);
+ if (ShowUserStatistics)
+ soloStatisticsWatcher.RegisterForStatisticsUpdateAfter(Score, update => statisticsUpdate.Value = update);
}
- protected override StatisticsPanel CreateStatisticsPanel() => new SoloStatisticsPanel(Score)
+ protected override StatisticsPanel CreateStatisticsPanel()
{
- StatisticsUpdate = { BindTarget = statisticsUpdate }
- };
+ if (ShowUserStatistics)
+ {
+ return new SoloStatisticsPanel(Score)
+ {
+ StatisticsUpdate = { BindTarget = statisticsUpdate }
+ };
+ }
+
+ return base.CreateStatisticsPanel();
+ }
protected override APIRequest FetchScores(Action> scoresCallback)
{