diff --git a/osu.Game/Screens/Play/InGameScoreContainer.cs b/osu.Game/Screens/Play/InGameScoreContainer.cs
index 985e867510..0ebf475e18 100644
--- a/osu.Game/Screens/Play/InGameScoreContainer.cs
+++ b/osu.Game/Screens/Play/InGameScoreContainer.cs
@@ -40,20 +40,30 @@ namespace osu.Game.Screens.Play
LayoutEasing = Easing.OutQuint;
}
- public void AddRealTimePlayer(BindableDouble currentScore, User user = null)
+ ///
+ /// Adds a real-time player score item whose score is updated via a .
+ ///
+ /// The bindable current score of the player.
+ /// The player user.
+ /// Returns the drawable score item of that player.
+ public InGameScoreItem AddRealTimePlayer(BindableDouble currentScore, User user = null)
{
if (currentScore == null)
- return;
+ return null;
var scoreItem = addScore(currentScore.Value, user);
currentScore.ValueChanged += s => scoreItem.TotalScore = s.NewValue;
+
+ return scoreItem;
}
- public void AddScore(ScoreInfo score, int? position = null)
- {
- if (score != null)
- addScore(score.TotalScore, score.User, position);
- }
+ ///
+ /// Adds a score item based off a with an initial position.
+ ///
+ /// The score info to use for this item.
+ /// The initial position of this item.
+ /// Returns the drawable score item of that player.
+ public InGameScoreItem AddScore(ScoreInfo score, int? position = null) => score != null ? addScore(score.TotalScore, score.User, position) : null;
private int maxPosition => this.Where(i => i.ScorePosition.HasValue).Max(i => i.ScorePosition) ?? 0;