The "partial" leaderboard logic in `SoloGameplayLeaderboardProvider` always assumed the online fetch would request 50 scores, which is no longer the case after https://github.com/ppy/osu/pull/33100.
Which are: global and team leaderboards with mods, and friends and country leaderboards. Only attempting this because of https://github.com/ppy/osu/issues/31056#issuecomment-2719787189. Not sure if this addresses the concern 🤷
IEquatable
GetScoresRequest
GetScoreRequest
APIScoreInfo.Beatmap
APIBeatmap
LeaderboardModSelector
Modifies GetScoresRequest to build query string locally instead of using WebRequest.AddParameter since it doesn't support array parameters
They were previously breaking the two-class-per-file rule.
- Also set the ruleset when fetching scores in BeatmapSetOverlay
- Also update scores when game mode is changed