Merge pull request #11300 from peppy/rename-multiplayer-timeshift-etc

This commit is contained in:
Bartłomiej Dach 2020-12-25 16:39:51 +01:00 committed by GitHub
commit b448fd1b8b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
138 changed files with 380 additions and 383 deletions

View File

@ -4,14 +4,14 @@
using System; using System;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Screens.Multi; using osu.Game.Screens.Multi;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public abstract class RoomManagerTestScene : MultiplayerTestScene public abstract class RoomManagerTestScene : RoomTestScene
{ {
[Cached(Type = typeof(IRoomManager))] [Cached(Type = typeof(IRoomManager))]
protected TestRoomManager RoomManager { get; } = new TestRoomManager(); protected TestRoomManager RoomManager { get; } = new TestRoomManager();

View File

@ -3,7 +3,7 @@
using System; using System;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Multi; using osu.Game.Screens.Multi;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer

View File

@ -13,7 +13,7 @@ using osu.Framework.Testing;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;

View File

@ -4,13 +4,13 @@
using System; using System;
using NUnit.Framework; using NUnit.Framework;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Online.Multiplayer.RoomStatuses; using osu.Game.Online.Rooms.RoomStatuses;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneLoungeRoomInfo : MultiplayerTestScene public class TestSceneLoungeRoomInfo : RoomTestScene
{ {
[SetUp] [SetUp]
public new void Setup() => Schedule(() => public new void Setup() => Schedule(() =>

View File

@ -6,7 +6,7 @@ using NUnit.Framework;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets.Catch; using osu.Game.Rulesets.Catch;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;

View File

@ -5,7 +5,7 @@ using NUnit.Framework;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Rulesets.Osu.Mods; using osu.Game.Rulesets.Osu.Mods;
@ -15,7 +15,7 @@ using osuTK;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneMatchBeatmapDetailArea : MultiplayerTestScene public class TestSceneMatchBeatmapDetailArea : RoomTestScene
{ {
[Resolved] [Resolved]
private BeatmapManager beatmapManager { get; set; } private BeatmapManager beatmapManager { get; set; }

View File

@ -3,7 +3,7 @@
using NUnit.Framework; using NUnit.Framework;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Rulesets.Osu.Mods; using osu.Game.Rulesets.Osu.Mods;
using osu.Game.Screens.Multi.Match.Components; using osu.Game.Screens.Multi.Match.Components;
@ -11,7 +11,7 @@ using osu.Game.Users;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneMatchHeader : MultiplayerTestScene public class TestSceneMatchHeader : RoomTestScene
{ {
public TestSceneMatchHeader() public TestSceneMatchHeader()
{ {

View File

@ -13,7 +13,7 @@ using osuTK;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneMatchLeaderboard : MultiplayerTestScene public class TestSceneMatchLeaderboard : RoomTestScene
{ {
protected override bool UseOnlineAPI => true; protected override bool UseOnlineAPI => true;

View File

@ -23,7 +23,7 @@ using osu.Game.Screens.Select;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneMatchSongSelect : MultiplayerTestScene public class TestSceneMatchSongSelect : RoomTestScene
{ {
[Resolved] [Resolved]
private BeatmapManager beatmapManager { get; set; } private BeatmapManager beatmapManager { get; set; }

View File

@ -5,13 +5,13 @@ using NUnit.Framework;
using osu.Game.Screens.Multi.Components; using osu.Game.Screens.Multi.Components;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Tests.Visual.RealtimeMultiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneRealtimeMultiplayer : RealtimeMultiplayerTestScene public class TestSceneMultiplayer : MultiplayerTestScene
{ {
public TestSceneRealtimeMultiplayer() public TestSceneMultiplayer()
{ {
var multi = new TestRealtimeMultiplayer(); var multi = new TestMultiplayer();
AddStep("show", () => LoadScreen(multi)); AddStep("show", () => LoadScreen(multi));
AddUntilStep("wait for loaded", () => multi.IsLoaded); AddUntilStep("wait for loaded", () => multi.IsLoaded);
@ -39,9 +39,9 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
AddAssert("room has 1 user", () => Client.Room?.Users.Count == 1); AddAssert("room has 1 user", () => Client.Room?.Users.Count == 1);
} }
private class TestRealtimeMultiplayer : Screens.Multi.RealtimeMultiplayer.RealtimeMultiplayer private class TestMultiplayer : Screens.Multi.Multiplayer.Multiplayer
{ {
protected override RoomManager CreateRoomManager() => new TestRealtimeRoomManager(); protected override RoomManager CreateRoomManager() => new TestMultiplayerRoomManager();
} }
} }
} }

View File

@ -5,20 +5,20 @@ using System.Linq;
using NUnit.Framework; using NUnit.Framework;
using osu.Framework.Screens; using osu.Framework.Screens;
using osu.Framework.Testing; using osu.Framework.Testing;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Screens.Multi.RealtimeMultiplayer; using osu.Game.Screens.Multi.Multiplayer;
using osu.Game.Screens.Multi.RealtimeMultiplayer.Match; using osu.Game.Screens.Multi.Multiplayer.Match;
using osu.Game.Tests.Beatmaps; using osu.Game.Tests.Beatmaps;
using osuTK.Input; using osuTK.Input;
namespace osu.Game.Tests.Visual.RealtimeMultiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneRealtimeMatchSubScreen : RealtimeMultiplayerTestScene public class TestSceneMultiplayerMatchSubScreen : MultiplayerTestScene
{ {
private RealtimeMatchSubScreen screen; private MultiplayerMatchSubScreen screen;
public TestSceneRealtimeMatchSubScreen() public TestSceneMultiplayerMatchSubScreen()
: base(false) : base(false)
{ {
} }
@ -32,14 +32,14 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
[SetUpSteps] [SetUpSteps]
public void SetupSteps() public void SetupSteps()
{ {
AddStep("load match", () => LoadScreen(screen = new RealtimeMatchSubScreen(Room))); AddStep("load match", () => LoadScreen(screen = new MultiplayerMatchSubScreen(Room)));
AddUntilStep("wait for load", () => screen.IsCurrentScreen()); AddUntilStep("wait for load", () => screen.IsCurrentScreen());
} }
[Test] [Test]
public void TestSettingValidity() public void TestSettingValidity()
{ {
AddAssert("create button not enabled", () => !this.ChildrenOfType<RealtimeMatchSettingsOverlay.CreateOrUpdateButton>().Single().Enabled.Value); AddAssert("create button not enabled", () => !this.ChildrenOfType<MultiplayerMatchSettingsOverlay.CreateOrUpdateButton>().Single().Enabled.Value);
AddStep("set playlist", () => AddStep("set playlist", () =>
{ {
@ -50,7 +50,7 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
}); });
}); });
AddAssert("create button enabled", () => this.ChildrenOfType<RealtimeMatchSettingsOverlay.CreateOrUpdateButton>().Single().Enabled.Value); AddAssert("create button enabled", () => this.ChildrenOfType<MultiplayerMatchSettingsOverlay.CreateOrUpdateButton>().Single().Enabled.Value);
} }
[Test] [Test]
@ -67,7 +67,7 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
AddStep("click create button", () => AddStep("click create button", () =>
{ {
InputManager.MoveMouseTo(this.ChildrenOfType<RealtimeMatchSettingsOverlay.CreateOrUpdateButton>().Single()); InputManager.MoveMouseTo(this.ChildrenOfType<MultiplayerMatchSettingsOverlay.CreateOrUpdateButton>().Single());
InputManager.Click(MouseButton.Left); InputManager.Click(MouseButton.Left);
}); });

View File

@ -7,14 +7,14 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Sprites; using osu.Framework.Graphics.Sprites;
using osu.Framework.Testing; using osu.Framework.Testing;
using osu.Framework.Utils; using osu.Framework.Utils;
using osu.Game.Online.RealtimeMultiplayer; using osu.Game.Online.Multiplayer;
using osu.Game.Screens.Multi.RealtimeMultiplayer.Participants; using osu.Game.Screens.Multi.Multiplayer.Participants;
using osu.Game.Users; using osu.Game.Users;
using osuTK; using osuTK;
namespace osu.Game.Tests.Visual.RealtimeMultiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneRealtimeMultiplayerParticipantsList : RealtimeMultiplayerTestScene public class TestSceneMultiplayerParticipantsList : MultiplayerTestScene
{ {
[SetUp] [SetUp]
public new void Setup() => Schedule(() => public new void Setup() => Schedule(() =>

View File

@ -10,19 +10,19 @@ using osu.Framework.Platform;
using osu.Framework.Utils; using osu.Framework.Utils;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Multiplayer;
using osu.Game.Online.RealtimeMultiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Screens.Multi.RealtimeMultiplayer.Match; using osu.Game.Screens.Multi.Multiplayer.Match;
using osu.Game.Tests.Resources; using osu.Game.Tests.Resources;
using osu.Game.Users; using osu.Game.Users;
using osuTK; using osuTK;
using osuTK.Input; using osuTK.Input;
namespace osu.Game.Tests.Visual.RealtimeMultiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneRealtimeReadyButton : RealtimeMultiplayerTestScene public class TestSceneMultiplayerReadyButton : MultiplayerTestScene
{ {
private RealtimeReadyButton button; private MultiplayerReadyButton button;
private BeatmapManager beatmaps; private BeatmapManager beatmaps;
private RulesetStore rulesets; private RulesetStore rulesets;
@ -42,7 +42,7 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
Beatmap.Value = beatmaps.GetWorkingBeatmap(beatmap); Beatmap.Value = beatmaps.GetWorkingBeatmap(beatmap);
Child = button = new RealtimeReadyButton Child = button = new MultiplayerReadyButton
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,

View File

@ -4,15 +4,15 @@
using NUnit.Framework; using NUnit.Framework;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Testing; using osu.Framework.Testing;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Tests.Visual.RealtimeMultiplayer namespace osu.Game.Tests.Visual.Multiplayer
{ {
[HeadlessTest] [HeadlessTest]
public class TestSceneRealtimeRoomManager : MultiplayerTestScene public class TestSceneMultiplayerRoomManager : RoomTestScene
{ {
private TestRealtimeRoomContainer roomContainer; private TestMultiplayerRoomContainer roomContainer;
private TestRealtimeRoomManager roomManager => roomContainer.RoomManager; private TestMultiplayerRoomManager roomManager => roomContainer.RoomManager;
[Test] [Test]
public void TestPollsInitially() public void TestPollsInitially()
@ -136,9 +136,9 @@ namespace osu.Game.Tests.Visual.RealtimeMultiplayer
AddAssert("multiplayer room joined", () => roomContainer.Client.Room != null); AddAssert("multiplayer room joined", () => roomContainer.Client.Room != null);
} }
private TestRealtimeRoomManager createRoomManager() private TestMultiplayerRoomManager createRoomManager()
{ {
Child = roomContainer = new TestRealtimeRoomContainer Child = roomContainer = new TestMultiplayerRoomContainer
{ {
RoomManager = RoomManager =
{ {

View File

@ -4,8 +4,8 @@
using System; using System;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Online.Multiplayer.RoomStatuses; using osu.Game.Online.Rooms.RoomStatuses;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Multiplayer
@ -40,7 +40,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
}) { MatchingFilter = true }, }) { MatchingFilter = true },
new DrawableRoom(new Room new DrawableRoom(new Room
{ {
Name = { Value = "Open (realtime)" }, Name = { Value = "Open" },
Status = { Value = new RoomStatusOpen() }, Status = { Value = new RoomStatusOpen() },
Category = { Value = RoomCategory.Realtime } Category = { Value = RoomCategory.Realtime }
}) { MatchingFilter = true }, }) { MatchingFilter = true },

View File

@ -11,7 +11,6 @@ using osu.Game.Beatmaps;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Overlays.Mods; using osu.Game.Overlays.Mods;
using osu.Game.Overlays.Toolbar; using osu.Game.Overlays.Toolbar;
using osu.Game.Screens.Multi.Timeshift;
using osu.Game.Screens.Play; using osu.Game.Screens.Play;
using osu.Game.Screens.Select; using osu.Game.Screens.Select;
using osu.Game.Screens.Select.Options; using osu.Game.Screens.Select.Options;
@ -108,14 +107,14 @@ namespace osu.Game.Tests.Visual.Navigation
[Test] [Test]
public void TestExitMultiWithEscape() public void TestExitMultiWithEscape()
{ {
PushAndConfirm(() => new TimeshiftMultiplayer()); PushAndConfirm(() => new Screens.Multi.Playlists.Playlists());
exitViaEscapeAndConfirm(); exitViaEscapeAndConfirm();
} }
[Test] [Test]
public void TestExitMultiWithBackButton() public void TestExitMultiWithBackButton()
{ {
PushAndConfirm(() => new TimeshiftMultiplayer()); PushAndConfirm(() => new Screens.Multi.Playlists.Playlists());
exitViaBackButtonAndConfirm(); exitViaBackButtonAndConfirm();
} }

View File

@ -4,13 +4,13 @@
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneTimeshiftFilterControl : OsuTestScene public class TestScenePlaylistsFilterControl : OsuTestScene
{ {
public TestSceneTimeshiftFilterControl() public TestScenePlaylistsFilterControl()
{ {
Child = new TimeshiftFilterControl Child = new PlaylistsFilterControl
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,

View File

@ -10,11 +10,12 @@ using osu.Framework.Testing;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Screens.Multi.Lounge; using osu.Game.Screens.Multi.Lounge;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
using osu.Game.Screens.Multi.Timeshift; using osu.Game.Screens.Multi.Playlists;
using osu.Game.Tests.Visual.Multiplayer;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneTimeshiftLoungeSubScreen : RoomManagerTestScene public class TestScenePlaylistsLoungeSubScreen : RoomManagerTestScene
{ {
private LoungeSubScreen loungeScreen; private LoungeSubScreen loungeScreen;
@ -27,7 +28,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
{ {
base.SetUpSteps(); base.SetUpSteps();
AddStep("push screen", () => LoadScreen(loungeScreen = new TimeshiftLoungeSubScreen AddStep("push screen", () => LoadScreen(loungeScreen = new PlaylistsLoungeSubScreen
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,

View File

@ -9,13 +9,13 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Graphics.Sprites; using osu.Game.Graphics.Sprites;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Multi; using osu.Game.Screens.Multi;
using osu.Game.Screens.Multi.Timeshift; using osu.Game.Screens.Multi.Playlists;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneMatchSettingsOverlay : MultiplayerTestScene public class TestScenePlaylistsMatchSettingsOverlay : RoomTestScene
{ {
[Cached(Type = typeof(IRoomManager))] [Cached(Type = typeof(IRoomManager))]
private TestRoomManager roomManager = new TestRoomManager(); private TestRoomManager roomManager = new TestRoomManager();
@ -109,7 +109,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
AddUntilStep("error not displayed", () => !settings.ErrorText.IsPresent); AddUntilStep("error not displayed", () => !settings.ErrorText.IsPresent);
} }
private class TestRoomSettings : TimeshiftMatchSettingsOverlay private class TestRoomSettings : PlaylistsMatchSettingsOverlay
{ {
public TriangleButton ApplyButton => ((MatchSettings)Settings).ApplyButton; public TriangleButton ApplyButton => ((MatchSettings)Settings).ApplyButton;

View File

@ -6,9 +6,9 @@ using osu.Framework.Graphics;
using osu.Game.Screens.Multi.Components; using osu.Game.Screens.Multi.Components;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneTimeshiftParticipantsList : MultiplayerTestScene public class TestScenePlaylistsParticipantsList : RoomTestScene
{ {
[SetUp] [SetUp]
public new void Setup() => Schedule(() => public new void Setup() => Schedule(() =>

View File

@ -15,18 +15,18 @@ using osu.Game.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.API.Requests; using osu.Game.Online.API.Requests;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Rulesets.Scoring; using osu.Game.Rulesets.Scoring;
using osu.Game.Scoring; using osu.Game.Scoring;
using osu.Game.Screens.Multi.Ranking; using osu.Game.Screens.Multi.Playlists;
using osu.Game.Screens.Ranking; using osu.Game.Screens.Ranking;
using osu.Game.Tests.Beatmaps; using osu.Game.Tests.Beatmaps;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneTimeshiftResultsScreen : ScreenTestScene public class TestScenePlaylistsResultsScreen : ScreenTestScene
{ {
private const int scores_per_result = 10; private const int scores_per_result = 10;
@ -360,7 +360,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
}; };
} }
private class TestResultsScreen : TimeshiftResultsScreen private class TestResultsScreen : PlaylistsResultsScreen
{ {
public new LoadingSpinner LeftSpinner => base.LeftSpinner; public new LoadingSpinner LeftSpinner => base.LeftSpinner;
public new LoadingSpinner CentreSpinner => base.CentreSpinner; public new LoadingSpinner CentreSpinner => base.CentreSpinner;

View File

@ -12,19 +12,19 @@ using osu.Framework.Screens;
using osu.Framework.Testing; using osu.Framework.Testing;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Osu; using osu.Game.Rulesets.Osu;
using osu.Game.Screens.Multi; using osu.Game.Screens.Multi;
using osu.Game.Screens.Multi.Match.Components; using osu.Game.Screens.Multi.Match.Components;
using osu.Game.Screens.Multi.Timeshift; using osu.Game.Screens.Multi.Playlists;
using osu.Game.Tests.Beatmaps; using osu.Game.Tests.Beatmaps;
using osu.Game.Users; using osu.Game.Users;
using osuTK.Input; using osuTK.Input;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
public class TestSceneTimeshiftRoomSubScreen : MultiplayerTestScene public class TestScenePlaylistsRoomSubScreen : RoomTestScene
{ {
protected override bool UseOnlineAPI => true; protected override bool UseOnlineAPI => true;
@ -34,7 +34,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
private BeatmapManager manager; private BeatmapManager manager;
private RulesetStore rulesets; private RulesetStore rulesets;
private TestTimeshiftRoomSubScreen match; private TestPlaylistsRoomSubScreen match;
[BackgroundDependencyLoader] [BackgroundDependencyLoader]
private void load(GameHost host, AudioManager audio) private void load(GameHost host, AudioManager audio)
@ -48,7 +48,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
[SetUpSteps] [SetUpSteps]
public void SetupSteps() public void SetupSteps()
{ {
AddStep("load match", () => LoadScreen(match = new TestTimeshiftRoomSubScreen(Room))); AddStep("load match", () => LoadScreen(match = new TestPlaylistsRoomSubScreen(Room)));
AddUntilStep("wait for load", () => match.IsCurrentScreen()); AddUntilStep("wait for load", () => match.IsCurrentScreen());
} }
@ -120,7 +120,7 @@ namespace osu.Game.Tests.Visual.Multiplayer
AddStep("create room", () => AddStep("create room", () =>
{ {
InputManager.MoveMouseTo(match.ChildrenOfType<TimeshiftMatchSettingsOverlay.CreateRoomButton>().Single()); InputManager.MoveMouseTo(match.ChildrenOfType<PlaylistsMatchSettingsOverlay.CreateRoomButton>().Single());
InputManager.Click(MouseButton.Left); InputManager.Click(MouseButton.Left);
}); });
@ -131,13 +131,13 @@ namespace osu.Game.Tests.Visual.Multiplayer
AddAssert("match has original beatmap", () => match.Beatmap.Value.Beatmap.BeatmapInfo.BaseDifficulty.CircleSize != 1); AddAssert("match has original beatmap", () => match.Beatmap.Value.Beatmap.BeatmapInfo.BaseDifficulty.CircleSize != 1);
} }
private class TestTimeshiftRoomSubScreen : TimeshiftRoomSubScreen private class TestPlaylistsRoomSubScreen : PlaylistsRoomSubScreen
{ {
public new Bindable<PlaylistItem> SelectedItem => base.SelectedItem; public new Bindable<PlaylistItem> SelectedItem => base.SelectedItem;
public new Bindable<WorkingBeatmap> Beatmap => base.Beatmap; public new Bindable<WorkingBeatmap> Beatmap => base.Beatmap;
public TestTimeshiftRoomSubScreen(Room room) public TestPlaylistsRoomSubScreen(Room room)
: base(room) : base(room)
{ {
} }

View File

@ -4,21 +4,20 @@
using NUnit.Framework; using NUnit.Framework;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Screens.Multi.Timeshift;
namespace osu.Game.Tests.Visual.Multiplayer namespace osu.Game.Tests.Visual.Playlists
{ {
[TestFixture] [TestFixture]
public class TestSceneMultiScreen : ScreenTestScene public class TestScenePlaylistsScreen : ScreenTestScene
{ {
protected override bool UseOnlineAPI => true; protected override bool UseOnlineAPI => true;
[Cached] [Cached]
private MusicController musicController { get; set; } = new MusicController(); private MusicController musicController { get; set; } = new MusicController();
public TestSceneMultiScreen() public TestScenePlaylistsScreen()
{ {
var multi = new TimeshiftMultiplayer(); var multi = new Screens.Multi.Playlists.Playlists();
AddStep("show", () => LoadScreen(multi)); AddStep("show", () => LoadScreen(multi));
AddUntilStep("wait for loaded", () => multi.IsLoaded); AddUntilStep("wait for loaded", () => multi.IsLoaded);

View File

@ -3,7 +3,7 @@
using System.Threading.Tasks; using System.Threading.Tasks;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// An interface defining a multiplayer client instance. /// An interface defining a multiplayer client instance.

View File

@ -3,7 +3,7 @@
using System.Threading.Tasks; using System.Threading.Tasks;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// Interface for an out-of-room multiplayer server. /// Interface for an out-of-room multiplayer server.

View File

@ -3,7 +3,7 @@
using System.Threading.Tasks; using System.Threading.Tasks;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// Interface for an in-room multiplayer server. /// Interface for an in-room multiplayer server.

View File

@ -1,7 +1,7 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// An interface defining the multiplayer server instance. /// An interface defining the multiplayer server instance.

View File

@ -5,7 +5,7 @@ using System;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class InvalidStateChangeException : HubException public class InvalidStateChangeException : HubException

View File

@ -5,7 +5,7 @@ using System;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class InvalidStateException : HubException public class InvalidStateException : HubException

View File

@ -15,9 +15,9 @@ using osu.Framework.Bindables;
using osu.Framework.Logging; using osu.Framework.Logging;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
public class RealtimeMultiplayerClient : StatefulMultiplayerClient public class MultiplayerClient : StatefulMultiplayerClient
{ {
public override IBindable<bool> IsConnected => isConnected; public override IBindable<bool> IsConnected => isConnected;
@ -31,7 +31,7 @@ namespace osu.Game.Online.RealtimeMultiplayer
private readonly string endpoint; private readonly string endpoint;
public RealtimeMultiplayerClient(EndpointConfiguration endpoints) public MultiplayerClient(EndpointConfiguration endpoints)
{ {
endpoint = endpoints.MultiplayerEndpointUrl; endpoint = endpoints.MultiplayerEndpointUrl;
} }

View File

@ -9,7 +9,7 @@ using System.Threading;
using Newtonsoft.Json; using Newtonsoft.Json;
using osu.Framework.Allocation; using osu.Framework.Allocation;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// A multiplayer room. /// A multiplayer room.

View File

@ -9,7 +9,7 @@ using System.Linq;
using JetBrains.Annotations; using JetBrains.Annotations;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class MultiplayerRoomSettings : IEquatable<MultiplayerRoomSettings> public class MultiplayerRoomSettings : IEquatable<MultiplayerRoomSettings>

View File

@ -3,10 +3,10 @@
#nullable enable #nullable enable
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
/// <summary> /// <summary>
/// The current overall state of a realtime multiplayer room. /// The current overall state of a multiplayer room.
/// </summary> /// </summary>
public enum MultiplayerRoomState public enum MultiplayerRoomState
{ {

View File

@ -7,7 +7,7 @@ using System;
using Newtonsoft.Json; using Newtonsoft.Json;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class MultiplayerRoomUser : IEquatable<MultiplayerRoomUser> public class MultiplayerRoomUser : IEquatable<MultiplayerRoomUser>

View File

@ -1,7 +1,7 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
public enum MultiplayerUserState public enum MultiplayerUserState
{ {

View File

@ -5,7 +5,7 @@ using System;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class NotHostException : HubException public class NotHostException : HubException

View File

@ -5,7 +5,7 @@ using System;
using System.Runtime.Serialization; using System.Runtime.Serialization;
using Microsoft.AspNetCore.SignalR; using Microsoft.AspNetCore.SignalR;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
[Serializable] [Serializable]
public class NotJoinedRoomException : HubException public class NotJoinedRoomException : HubException

View File

@ -18,13 +18,13 @@ using osu.Game.Extensions;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.API.Requests; using osu.Game.Online.API.Requests;
using osu.Game.Online.API.Requests.Responses; using osu.Game.Online.API.Requests.Responses;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Online.Multiplayer.RoomStatuses; using osu.Game.Online.Rooms.RoomStatuses;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Users; using osu.Game.Users;
using osu.Game.Utils; using osu.Game.Utils;
namespace osu.Game.Online.RealtimeMultiplayer namespace osu.Game.Online.Multiplayer
{ {
public abstract class StatefulMultiplayerClient : Component, IMultiplayerClient, IMultiplayerRoomServer public abstract class StatefulMultiplayerClient : Component, IMultiplayerClient, IMultiplayerRoomServer
{ {

View File

@ -3,7 +3,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class APICreatedRoom : Room public class APICreatedRoom : Room
{ {

View File

@ -5,7 +5,7 @@ using System.Collections.Generic;
using Newtonsoft.Json; using Newtonsoft.Json;
using osu.Game.Online.API.Requests.Responses; using osu.Game.Online.API.Requests.Responses;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class APILeaderboard public class APILeaderboard
{ {

View File

@ -6,7 +6,7 @@ using osu.Game.Beatmaps;
using osu.Game.Online.API.Requests.Responses; using osu.Game.Online.API.Requests.Responses;
using osu.Game.Rulesets; using osu.Game.Rulesets;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class APIPlaylistBeatmap : APIBeatmap public class APIPlaylistBeatmap : APIBeatmap
{ {

View File

@ -3,7 +3,7 @@
using Newtonsoft.Json; using Newtonsoft.Json;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class APIScoreToken public class APIScoreToken
{ {

View File

@ -6,7 +6,7 @@ using Newtonsoft.Json;
using osu.Framework.IO.Network; using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class CreateRoomRequest : APIRequest<APICreatedRoom> public class CreateRoomRequest : APIRequest<APICreatedRoom>
{ {

View File

@ -5,7 +5,7 @@ using System.Net.Http;
using osu.Framework.IO.Network; using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class CreateRoomScoreRequest : APIRequest<APIScoreToken> public class CreateRoomScoreRequest : APIRequest<APIScoreToken>
{ {

View File

@ -4,7 +4,7 @@
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Graphics; using osu.Game.Graphics;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public abstract class GameType public abstract class GameType
{ {

View File

@ -6,11 +6,11 @@ using osu.Framework.Graphics.Sprites;
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK; using osuTK;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class GameTypeTimeshift : GameType public class GameTypePlaylists : GameType
{ {
public override string Name => "Timeshift"; public override string Name => "Playlists";
public override Drawable GetIcon(OsuColour colours, float size) => new SpriteIcon public override Drawable GetIcon(OsuColour colours, float size) => new SpriteIcon
{ {

View File

@ -6,7 +6,7 @@ using osu.Framework.Graphics.Sprites;
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK; using osuTK;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class GameTypeTag : GameType public class GameTypeTag : GameType
{ {

View File

@ -7,7 +7,7 @@ using osu.Framework.Graphics.Sprites;
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK; using osuTK;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class GameTypeTagTeam : GameType public class GameTypeTagTeam : GameType
{ {

View File

@ -6,7 +6,7 @@ using osu.Framework.Graphics.Containers;
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK; using osuTK;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class GameTypeTeamVersus : GameType public class GameTypeTeamVersus : GameType
{ {

View File

@ -4,7 +4,7 @@
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Game.Graphics; using osu.Game.Graphics;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class GameTypeVersus : GameType public class GameTypeVersus : GameType
{ {

View File

@ -7,7 +7,7 @@ using osu.Framework.Graphics.Shapes;
using osuTK; using osuTK;
using osuTK.Graphics; using osuTK.Graphics;
namespace osu.Game.Online.Multiplayer.GameTypes namespace osu.Game.Online.Rooms.GameTypes
{ {
public class VersusRow : FillFlowContainer public class VersusRow : FillFlowContainer
{ {

View File

@ -3,7 +3,7 @@
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class GetRoomLeaderboardRequest : APIRequest<APILeaderboard> public class GetRoomLeaderboardRequest : APIRequest<APILeaderboard>
{ {

View File

@ -3,7 +3,7 @@
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class GetRoomRequest : APIRequest<Room> public class GetRoomRequest : APIRequest<Room>
{ {

View File

@ -7,7 +7,7 @@ using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class GetRoomsRequest : APIRequest<List<Room>> public class GetRoomsRequest : APIRequest<List<Room>>
{ {

View File

@ -8,7 +8,7 @@ using osu.Game.Extensions;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.API.Requests; using osu.Game.Online.API.Requests;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
/// <summary> /// <summary>
/// Returns a list of scores for the specified playlist item. /// Returns a list of scores for the specified playlist item.

View File

@ -6,7 +6,7 @@ using JetBrains.Annotations;
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
/// <summary> /// <summary>
/// A collection of parameters which should be passed to the index endpoint to fetch the next page. /// A collection of parameters which should be passed to the index endpoint to fetch the next page.

View File

@ -4,7 +4,7 @@
using JetBrains.Annotations; using JetBrains.Annotations;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
/// <summary> /// <summary>
/// A <see cref="MultiplayerScores"/> object returned via a <see cref="IndexPlaylistScoresRequest"/>. /// A <see cref="MultiplayerScores"/> object returned via a <see cref="IndexPlaylistScoresRequest"/>.

View File

@ -5,7 +5,7 @@ using System.Net.Http;
using osu.Framework.IO.Network; using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class JoinRoomRequest : APIRequest public class JoinRoomRequest : APIRequest
{ {

View File

@ -13,7 +13,7 @@ using osu.Game.Rulesets.Scoring;
using osu.Game.Scoring; using osu.Game.Scoring;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class MultiplayerScore public class MultiplayerScore
{ {

View File

@ -5,7 +5,7 @@ using System.Collections.Generic;
using Newtonsoft.Json; using Newtonsoft.Json;
using osu.Game.Online.API.Requests; using osu.Game.Online.API.Requests;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
/// <summary> /// <summary>
/// An object which contains scores and related data for fetching next pages. /// An object which contains scores and related data for fetching next pages.

View File

@ -4,7 +4,7 @@
using JetBrains.Annotations; using JetBrains.Annotations;
using Newtonsoft.Json; using Newtonsoft.Json;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
/// <summary> /// <summary>
/// An object which stores scores higher and lower than the user's score. /// An object which stores scores higher and lower than the user's score.

View File

@ -5,7 +5,7 @@ using System.Net.Http;
using osu.Framework.IO.Network; using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class PartRoomRequest : APIRequest public class PartRoomRequest : APIRequest
{ {

View File

@ -6,7 +6,7 @@ using Humanizer;
using Humanizer.Localisation; using Humanizer.Localisation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public static class PlaylistExtensions public static class PlaylistExtensions
{ {

View File

@ -10,7 +10,7 @@ using osu.Game.Online.API;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Mods; using osu.Game.Rulesets.Mods;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class PlaylistItem : IEquatable<PlaylistItem> public class PlaylistItem : IEquatable<PlaylistItem>
{ {

View File

@ -7,11 +7,11 @@ using Newtonsoft.Json;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.IO.Serialization.Converters; using osu.Game.IO.Serialization.Converters;
using osu.Game.Online.Multiplayer.GameTypes; using osu.Game.Online.Rooms.GameTypes;
using osu.Game.Online.Multiplayer.RoomStatuses; using osu.Game.Online.Rooms.RoomStatuses;
using osu.Game.Users; using osu.Game.Users;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class Room public class Room
{ {
@ -66,7 +66,7 @@ namespace osu.Game.Online.Multiplayer
[Cached] [Cached]
[JsonIgnore] [JsonIgnore]
public readonly Bindable<GameType> Type = new Bindable<GameType>(new GameTypeTimeshift()); public readonly Bindable<GameType> Type = new Bindable<GameType>(new GameTypePlaylists());
[Cached] [Cached]
[JsonIgnore] [JsonIgnore]

View File

@ -3,7 +3,7 @@
using System.ComponentModel; using System.ComponentModel;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public enum RoomAvailability public enum RoomAvailability
{ {

View File

@ -1,10 +1,11 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public enum RoomCategory public enum RoomCategory
{ {
// used for osu-web deserialization so names shouldn't be changed.
Normal, Normal,
Spotlight, Spotlight,
Realtime, Realtime,

View File

@ -1,10 +1,10 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
using osuTK.Graphics;
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK.Graphics;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public abstract class RoomStatus public abstract class RoomStatus
{ {

View File

@ -4,7 +4,7 @@
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK.Graphics; using osuTK.Graphics;
namespace osu.Game.Online.Multiplayer.RoomStatuses namespace osu.Game.Online.Rooms.RoomStatuses
{ {
public class RoomStatusEnded : RoomStatus public class RoomStatusEnded : RoomStatus
{ {

View File

@ -4,7 +4,7 @@
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK.Graphics; using osuTK.Graphics;
namespace osu.Game.Online.Multiplayer.RoomStatuses namespace osu.Game.Online.Rooms.RoomStatuses
{ {
public class RoomStatusOpen : RoomStatus public class RoomStatusOpen : RoomStatus
{ {

View File

@ -4,7 +4,7 @@
using osu.Game.Graphics; using osu.Game.Graphics;
using osuTK.Graphics; using osuTK.Graphics;
namespace osu.Game.Online.Multiplayer.RoomStatuses namespace osu.Game.Online.Rooms.RoomStatuses
{ {
public class RoomStatusPlaying : RoomStatus public class RoomStatusPlaying : RoomStatus
{ {

View File

@ -3,7 +3,7 @@
using osu.Game.Online.API; using osu.Game.Online.API;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class ShowPlaylistUserScoreRequest : APIRequest<MultiplayerScore> public class ShowPlaylistUserScoreRequest : APIRequest<MultiplayerScore>
{ {

View File

@ -7,7 +7,7 @@ using osu.Framework.IO.Network;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Scoring; using osu.Game.Scoring;
namespace osu.Game.Online.Multiplayer namespace osu.Game.Online.Rooms
{ {
public class SubmitRoomScoreRequest : APIRequest<MultiplayerScore> public class SubmitRoomScoreRequest : APIRequest<MultiplayerScore>
{ {

View File

@ -31,7 +31,7 @@ using osu.Game.Input;
using osu.Game.Input.Bindings; using osu.Game.Input.Bindings;
using osu.Game.IO; using osu.Game.IO;
using osu.Game.Online; using osu.Game.Online;
using osu.Game.Online.RealtimeMultiplayer; using osu.Game.Online.Multiplayer;
using osu.Game.Online.Spectator; using osu.Game.Online.Spectator;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Resources; using osu.Game.Resources;
@ -219,7 +219,7 @@ namespace osu.Game
dependencies.CacheAs(API ??= new APIAccess(LocalConfig, endpoints)); dependencies.CacheAs(API ??= new APIAccess(LocalConfig, endpoints));
dependencies.CacheAs(spectatorStreaming = new SpectatorStreamingClient(endpoints)); dependencies.CacheAs(spectatorStreaming = new SpectatorStreamingClient(endpoints));
dependencies.CacheAs(multiplayerClient = new RealtimeMultiplayerClient(endpoints)); dependencies.CacheAs(multiplayerClient = new MultiplayerClient(endpoints));
var defaultBeatmap = new DummyWorkingBeatmap(Audio, Textures); var defaultBeatmap = new DummyWorkingBeatmap(Audio, Textures);

View File

@ -43,7 +43,7 @@ namespace osu.Game.Screens.Menu
public Action OnSolo; public Action OnSolo;
public Action OnSettings; public Action OnSettings;
public Action OnMultiplayer; public Action OnMultiplayer;
public Action OnTimeshift; public Action OnPlaylists;
public const float BUTTON_WIDTH = 140f; public const float BUTTON_WIDTH = 140f;
public const float WEDGE_WIDTH = 20; public const float WEDGE_WIDTH = 20;
@ -125,7 +125,7 @@ namespace osu.Game.Screens.Menu
{ {
buttonsPlay.Add(new Button(@"solo", @"button-solo-select", FontAwesome.Solid.User, new Color4(102, 68, 204, 255), () => OnSolo?.Invoke(), WEDGE_WIDTH, Key.P)); buttonsPlay.Add(new Button(@"solo", @"button-solo-select", FontAwesome.Solid.User, new Color4(102, 68, 204, 255), () => OnSolo?.Invoke(), WEDGE_WIDTH, Key.P));
buttonsPlay.Add(new Button(@"multi", @"button-generic-select", FontAwesome.Solid.Users, new Color4(94, 63, 186, 255), onMultiplayer, 0, Key.M)); buttonsPlay.Add(new Button(@"multi", @"button-generic-select", FontAwesome.Solid.Users, new Color4(94, 63, 186, 255), onMultiplayer, 0, Key.M));
buttonsPlay.Add(new Button(@"playlists", @"button-generic-select", OsuIcon.Charts, new Color4(94, 63, 186, 255), onTimeshift, 0, Key.L)); buttonsPlay.Add(new Button(@"playlists", @"button-generic-select", OsuIcon.Charts, new Color4(94, 63, 186, 255), onPlaylists, 0, Key.L));
buttonsPlay.ForEach(b => b.VisibleState = ButtonSystemState.Play); buttonsPlay.ForEach(b => b.VisibleState = ButtonSystemState.Play);
buttonsTopLevel.Add(new Button(@"play", @"button-play-select", OsuIcon.Logo, new Color4(102, 68, 204, 255), () => State = ButtonSystemState.Play, WEDGE_WIDTH, Key.P)); buttonsTopLevel.Add(new Button(@"play", @"button-play-select", OsuIcon.Logo, new Color4(102, 68, 204, 255), () => State = ButtonSystemState.Play, WEDGE_WIDTH, Key.P));
@ -175,7 +175,7 @@ namespace osu.Game.Screens.Menu
OnMultiplayer?.Invoke(); OnMultiplayer?.Invoke();
} }
private void onTimeshift() private void onPlaylists()
{ {
if (!api.IsLoggedIn) if (!api.IsLoggedIn)
{ {
@ -193,7 +193,7 @@ namespace osu.Game.Screens.Menu
return; return;
} }
OnTimeshift?.Invoke(); OnPlaylists?.Invoke();
} }
private void updateIdleState(bool isIdle) private void updateIdleState(bool isIdle)

View File

@ -17,8 +17,8 @@ using osu.Game.Online.API;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Screens.Backgrounds; using osu.Game.Screens.Backgrounds;
using osu.Game.Screens.Edit; using osu.Game.Screens.Edit;
using osu.Game.Screens.Multi.RealtimeMultiplayer; using osu.Game.Screens.Multi.Multiplayer;
using osu.Game.Screens.Multi.Timeshift; using osu.Game.Screens.Multi.Playlists;
using osu.Game.Screens.Select; using osu.Game.Screens.Select;
namespace osu.Game.Screens.Menu namespace osu.Game.Screens.Menu
@ -105,8 +105,8 @@ namespace osu.Game.Screens.Menu
this.Push(new Editor()); this.Push(new Editor());
}, },
OnSolo = onSolo, OnSolo = onSolo,
OnMultiplayer = () => this.Push(new RealtimeMultiplayer()), OnMultiplayer = () => this.Push(new Multiplayer()),
OnTimeshift = () => this.Push(new TimeshiftMultiplayer()), OnPlaylists = () => this.Push(new Playlists()),
OnExit = confirmAndExit, OnExit = confirmAndExit,
} }
} }

View File

@ -8,7 +8,7 @@ using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Cursor; using osu.Framework.Graphics.Cursor;
using osu.Framework.Graphics.Shapes; using osu.Framework.Graphics.Shapes;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -4,7 +4,7 @@
using System.Threading.Tasks; using System.Threading.Tasks;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components

View File

@ -8,7 +8,7 @@ using osu.Framework.Bindables;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Select; using osu.Game.Screens.Select;
using osuTK; using osuTK;

View File

@ -1,7 +1,7 @@
// Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence. // Copyright (c) ppy Pty Ltd <contact@ppy.sh>. Licensed under the MIT Licence.
// See the LICENCE file in the repository root for full licence text. // See the LICENCE file in the repository root for full licence text.
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -9,7 +9,7 @@ using osu.Framework.Bindables;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -12,7 +12,7 @@ using osu.Framework.Graphics.Containers;
using osu.Framework.Logging; using osu.Framework.Logging;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Rulesets; using osu.Game.Rulesets;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components

View File

@ -6,7 +6,7 @@ using System.Collections.Generic;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Game.Online; using osu.Game.Online;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -8,8 +8,8 @@ using osu.Framework.Extensions;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Online.Multiplayer.RoomStatuses; using osu.Game.Online.Rooms.RoomStatuses;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -5,7 +5,7 @@ using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -6,7 +6,7 @@ using osu.Framework.Bindables;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Components namespace osu.Game.Screens.Multi.Components
{ {

View File

@ -7,7 +7,7 @@ using osu.Framework.Extensions.IEnumerableExtensions;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osuTK; using osuTK;
namespace osu.Game.Screens.Multi namespace osu.Game.Screens.Multi

View File

@ -21,7 +21,7 @@ using osu.Game.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online; using osu.Game.Online;
using osu.Game.Online.Chat; using osu.Game.Online.Chat;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Overlays.BeatmapListing.Panels; using osu.Game.Overlays.BeatmapListing.Panels;
using osu.Game.Rulesets; using osu.Game.Rulesets;
using osu.Game.Rulesets.Mods; using osu.Game.Rulesets.Mods;

View File

@ -11,7 +11,7 @@ using osu.Framework.Graphics.Sprites;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi namespace osu.Game.Screens.Multi
{ {

View File

@ -4,7 +4,7 @@
using System; using System;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi namespace osu.Game.Screens.Multi
{ {

View File

@ -17,12 +17,12 @@ using osu.Game.Graphics;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Graphics.Sprites; using osu.Game.Graphics.Sprites;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer;
using osu.Game.Screens.Multi.Components; using osu.Game.Screens.Multi.Components;
using osuTK; using osuTK;
using osuTK.Graphics; using osuTK.Graphics;
using osu.Framework.Graphics.Cursor; using osu.Framework.Graphics.Cursor;
using osu.Framework.Graphics.UserInterface; using osu.Framework.Graphics.UserInterface;
using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Lounge.Components namespace osu.Game.Screens.Multi.Lounge.Components
{ {
@ -42,7 +42,7 @@ namespace osu.Game.Screens.Multi.Lounge.Components
private CachedModelDependencyContainer<Room> dependencies; private CachedModelDependencyContainer<Room> dependencies;
[Resolved(canBeNull: true)] [Resolved(canBeNull: true)]
private Multiplayer multiplayer { get; set; } private MultiplayerScreen multiplayer { get; set; }
[Resolved] [Resolved]
private BeatmapManager beatmaps { get; set; } private BeatmapManager beatmaps { get; set; }
@ -228,7 +228,7 @@ namespace osu.Game.Screens.Multi.Lounge.Components
private class RoomName : OsuSpriteText private class RoomName : OsuSpriteText
{ {
[Resolved(typeof(Room), nameof(Online.Multiplayer.Room.Name))] [Resolved(typeof(Room), nameof(Online.Rooms.Room.Name))]
private Bindable<string> name { get; set; } private Bindable<string> name { get; set; }
[BackgroundDependencyLoader] [BackgroundDependencyLoader]

View File

@ -7,13 +7,13 @@ using osu.Game.Graphics.UserInterface;
namespace osu.Game.Screens.Multi.Lounge.Components namespace osu.Game.Screens.Multi.Lounge.Components
{ {
public class TimeshiftFilterControl : FilterControl public class PlaylistsFilterControl : FilterControl
{ {
private readonly Dropdown<TimeshiftCategory> dropdown; private readonly Dropdown<PlaylistsCategory> dropdown;
public TimeshiftFilterControl() public PlaylistsFilterControl()
{ {
AddInternal(dropdown = new SlimEnumDropdown<TimeshiftCategory> AddInternal(dropdown = new SlimEnumDropdown<PlaylistsCategory>
{ {
Anchor = Anchor.BottomRight, Anchor = Anchor.BottomRight,
Origin = Anchor.TopRight, Origin = Anchor.TopRight,
@ -37,11 +37,11 @@ namespace osu.Game.Screens.Multi.Lounge.Components
switch (dropdown.Current.Value) switch (dropdown.Current.Value)
{ {
case TimeshiftCategory.Normal: case PlaylistsCategory.Normal:
criteria.Category = "normal"; criteria.Category = "normal";
break; break;
case TimeshiftCategory.Spotlight: case PlaylistsCategory.Spotlight:
criteria.Category = "spotlight"; criteria.Category = "spotlight";
break; break;
} }
@ -49,7 +49,7 @@ namespace osu.Game.Screens.Multi.Lounge.Components
return criteria; return criteria;
} }
private enum TimeshiftCategory private enum PlaylistsCategory
{ {
Any, Any,
Normal, Normal,

View File

@ -15,9 +15,9 @@ using osu.Framework.Threading;
using osu.Game.Extensions; using osu.Game.Extensions;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Input.Bindings; using osu.Game.Input.Bindings;
using osu.Game.Online.Multiplayer;
using osuTK; using osuTK;
using osu.Game.Graphics.Cursor; using osu.Game.Graphics.Cursor;
using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Lounge.Components namespace osu.Game.Screens.Multi.Lounge.Components
{ {

View File

@ -10,7 +10,7 @@ using osu.Framework.Input.Events;
using osu.Framework.Screens; using osu.Framework.Screens;
using osu.Game.Graphics.Containers; using osu.Game.Graphics.Containers;
using osu.Game.Graphics.UserInterface; using osu.Game.Graphics.UserInterface;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Screens.Multi.Lounge.Components; using osu.Game.Screens.Multi.Lounge.Components;
using osu.Game.Screens.Multi.Match; using osu.Game.Screens.Multi.Match;

View File

@ -9,8 +9,8 @@ using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Framework.Graphics.Shapes; using osu.Framework.Graphics.Shapes;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Multi.Timeshift; using osu.Game.Screens.Multi.Playlists;
using osuTK; using osuTK;
namespace osu.Game.Screens.Multi.Match.Components namespace osu.Game.Screens.Multi.Match.Components
@ -32,7 +32,7 @@ namespace osu.Game.Screens.Multi.Match.Components
InternalChildren = new[] InternalChildren = new[]
{ {
background = new Box { RelativeSizeAxes = Axes.Both }, background = new Box { RelativeSizeAxes = Axes.Both },
new TimeshiftReadyButton new PlaylistsReadyButton
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,

View File

@ -8,8 +8,8 @@ using osu.Framework.Graphics.Shapes;
using osu.Framework.Graphics.UserInterface; using osu.Framework.Graphics.UserInterface;
using osu.Framework.Input.Events; using osu.Framework.Input.Events;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Online.Multiplayer.GameTypes; using osu.Game.Online.Rooms.GameTypes;
using osu.Game.Screens.Multi.Components; using osu.Game.Screens.Multi.Components;
using osuTK; using osuTK;
@ -33,7 +33,7 @@ namespace osu.Game.Screens.Multi.Match.Components
AddItem(new GameTypeVersus()); AddItem(new GameTypeVersus());
AddItem(new GameTypeTagTeam()); AddItem(new GameTypeTagTeam());
AddItem(new GameTypeTeamVersus()); AddItem(new GameTypeTeamVersus());
AddItem(new GameTypeTimeshift()); AddItem(new GameTypePlaylists());
} }
private class GameTypePickerItem : DisableableTabItem private class GameTypePickerItem : DisableableTabItem

View File

@ -4,7 +4,7 @@
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Bindables; using osu.Framework.Bindables;
using osu.Game.Online.Chat; using osu.Game.Online.Chat;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Match.Components namespace osu.Game.Screens.Multi.Match.Components
{ {

View File

@ -8,7 +8,7 @@ using osu.Framework.Bindables;
using osu.Game.Online.API; using osu.Game.Online.API;
using osu.Game.Online.API.Requests.Responses; using osu.Game.Online.API.Requests.Responses;
using osu.Game.Online.Leaderboards; using osu.Game.Online.Leaderboards;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
namespace osu.Game.Screens.Multi.Match.Components namespace osu.Game.Screens.Multi.Match.Components
{ {

View File

@ -10,7 +10,7 @@ using osu.Framework.Graphics.UserInterface;
using osu.Framework.Input.Events; using osu.Framework.Input.Events;
using osu.Game.Graphics; using osu.Game.Graphics;
using osu.Game.Graphics.Sprites; using osu.Game.Graphics.Sprites;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Screens.Multi.Components; using osu.Game.Screens.Multi.Components;
using osuTK; using osuTK;
using osuTK.Graphics; using osuTK.Graphics;

View File

@ -10,7 +10,7 @@ using osu.Framework.Bindables;
using osu.Framework.Screens; using osu.Framework.Screens;
using osu.Game.Audio; using osu.Game.Audio;
using osu.Game.Beatmaps; using osu.Game.Beatmaps;
using osu.Game.Online.Multiplayer; using osu.Game.Online.Rooms;
using osu.Game.Overlays; using osu.Game.Overlays;
using osu.Game.Rulesets.Mods; using osu.Game.Rulesets.Mods;
using osu.Game.Screens.Play; using osu.Game.Screens.Play;
@ -36,7 +36,7 @@ namespace osu.Game.Screens.Multi.Match
private BeatmapManager beatmapManager { get; set; } private BeatmapManager beatmapManager { get; set; }
[Resolved(canBeNull: true)] [Resolved(canBeNull: true)]
protected Multiplayer Multiplayer { get; private set; } protected MultiplayerScreen Multiplayer { get; private set; }
private IBindable<WeakReference<BeatmapSetInfo>> managerUpdated; private IBindable<WeakReference<BeatmapSetInfo>> managerUpdated;

Some files were not shown because too many files have changed in this diff Show More