From c0b07bc1c20e2b944451c3dd2d5451fccac1b7fa Mon Sep 17 00:00:00 2001 From: Anonymus Raccoon <32224410+AnonymusRaccoon@users.noreply.github.com> Date: Fri, 5 Jul 2019 22:20:13 +0200 Subject: [PATCH] Fixing a bug with the youtube playlist shuffle and releasing a new version. --- Opus/Assets/Version.txt | 4 ++-- Opus/Code/Api/PlaylistManager.cs | 20 +++++++++++++++++--- Opus/Properties/AndroidManifest.xml | 2 +- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/Opus/Assets/Version.txt b/Opus/Assets/Version.txt index f90312b..8ea91a8 100644 --- a/Opus/Assets/Version.txt +++ b/Opus/Assets/Version.txt @@ -1,3 +1,3 @@ -Version: 3.4.9 +Version: 3.5.0 Beta: False -Link: https://github.com/AnonymusRaccoon/Opus/releases/download/3.4.9/Opus.v3.4.9.apk +Link: https://github.com/AnonymusRaccoon/Opus/releases/download/3.5.0/Opus.v3.5.0.apk diff --git a/Opus/Code/Api/PlaylistManager.cs b/Opus/Code/Api/PlaylistManager.cs index cd7f4b5..43ff1a0 100644 --- a/Opus/Code/Api/PlaylistManager.cs +++ b/Opus/Code/Api/PlaylistManager.cs @@ -188,9 +188,23 @@ namespace Opus.Api if (tracks.Count == 0) return; - tracks.RemoveAt(playPos); - tracks = tracks.OrderBy(x => r.Next()).ToList(); - MusicPlayer.instance.AddToQueue(tracks); + if (tracks.Count >= playPos) + { + tracks.RemoveAt(playPos); + tracks = tracks.OrderBy(x => r.Next()).ToList(); + MusicPlayer.instance.AddToQueue(tracks); + } + else + { + playPos = r.Next(tracks.Count); + MusicPlayer.currentID = -1; + SongManager.Play(tracks[playPos]); + + tracks.RemoveAt(playPos); + tracks = tracks.OrderBy(x => r.Next()).ToList(); + MusicPlayer.instance.AddToQueue(tracks); + } + } #endregion diff --git a/Opus/Properties/AndroidManifest.xml b/Opus/Properties/AndroidManifest.xml index 37e09f6..170101d 100644 --- a/Opus/Properties/AndroidManifest.xml +++ b/Opus/Properties/AndroidManifest.xml @@ -1,5 +1,5 @@  - +