1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 10:47:25 +08:00

Check if selected scope requires API

This commit is contained in:
iiSaLMaN 2019-07-21 03:07:27 +03:00
parent 2ff7979d29
commit 842417cf42
3 changed files with 9 additions and 1 deletions

View File

@ -194,13 +194,17 @@ namespace osu.Game.Online.Leaderboards
private APIRequest getScoresRequest; private APIRequest getScoresRequest;
protected abstract bool IsOnlineScope();
public void APIStateChanged(IAPIProvider api, APIState state) public void APIStateChanged(IAPIProvider api, APIState state)
{ {
switch (state) switch (state)
{ {
case APIState.Online: case APIState.Online:
case APIState.Offline: case APIState.Offline:
UpdateScores(); if (IsOnlineScope())
UpdateScores();
break; break;
} }
} }

View File

@ -33,6 +33,8 @@ namespace osu.Game.Screens.Multi.Match.Components
}, true); }, true);
} }
protected override bool IsOnlineScope() => true;
protected override APIRequest FetchScores(Action<IEnumerable<APIRoomScoreInfo>> scoresCallback) protected override APIRequest FetchScores(Action<IEnumerable<APIRoomScoreInfo>> scoresCallback)
{ {
if (roomId.Value == null) if (roomId.Value == null)

View File

@ -79,6 +79,8 @@ namespace osu.Game.Screens.Select.Leaderboards
}; };
} }
protected override bool IsOnlineScope() => Scope != BeatmapLeaderboardScope.Local;
protected override APIRequest FetchScores(Action<IEnumerable<ScoreInfo>> scoresCallback) protected override APIRequest FetchScores(Action<IEnumerable<ScoreInfo>> scoresCallback)
{ {
if (Scope == BeatmapLeaderboardScope.Local) if (Scope == BeatmapLeaderboardScope.Local)