From 36cefcb9561c8b5d73c757e07c0de26840d1c315 Mon Sep 17 00:00:00 2001
From: Huo Yaoyuan <huoyaoyuan@hotmail.com>
Date: Fri, 28 Oct 2016 20:34:22 +0800
Subject: [PATCH] Fix to work individually.

---
 osu.Game/Overlays/MusicController.cs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/osu.Game/Overlays/MusicController.cs b/osu.Game/Overlays/MusicController.cs
index 21d9415019..73f59f3d4e 100644
--- a/osu.Game/Overlays/MusicController.cs
+++ b/osu.Game/Overlays/MusicController.cs
@@ -29,6 +29,7 @@ namespace osu.Game.Overlays
         private SpriteText title, artist;
 
         private OsuGameBase osuGame;
+        private TrackManager trackManager;
         private List<BeatmapSetInfo> playList;
         private BeatmapDatabase database;
         private Bindable<WorkingBeatmap> beatmapSource;
@@ -47,7 +48,8 @@ namespace osu.Game.Overlays
             beatmapSource = osuGame.Beatmap ?? new Bindable<WorkingBeatmap>();
             current = beatmapSource.Value;
             if (database == null) database = osuGame.Beatmaps;
-            playList = database.Query<BeatmapSetInfo>().ToList();
+            trackManager = osuGame.Audio.Track;
+            playList = database.GetAllWithChildren<BeatmapSetInfo>();
 
             Width = 400;
             Height = 130;
@@ -229,6 +231,8 @@ namespace osu.Game.Overlays
         private void play(BeatmapInfo info, bool? isNext)
         {
             current = database.GetWorkingBeatmap(info, current);
+            trackManager.SetExclusive(current.Track);
+            current.Track.Start();
             beatmapSource.Value = current;
             updateCurrent(current, isNext);
         }