diff options
Diffstat (limited to 'src/main/java/soundchan/TrackScheduler.java')
-rw-r--r-- | src/main/java/soundchan/TrackScheduler.java | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/main/java/soundchan/TrackScheduler.java b/src/main/java/soundchan/TrackScheduler.java index cc68335..cf7b1f8 100644 --- a/src/main/java/soundchan/TrackScheduler.java +++ b/src/main/java/soundchan/TrackScheduler.java @@ -46,14 +46,16 @@ public class TrackScheduler extends AudioEventAdapter { public void playNow(AudioTrack track) { AudioTrack currenlyPlaying = player.getPlayingTrack(); - AudioTrack cloned = currenlyPlaying.makeClone(); - cloned.setPosition(currenlyPlaying.getPosition()); - - // Don't re-enqueue if its just a soundclip - if(!(currenlyPlaying.getInfo().uri.contains(".mp3") || currenlyPlaying.getInfo().uri.contains(".wav"))) - // Re-enqueue the track - queue.addFirst(cloned); + // If something is currently playing, pause it and put it back in the queue + if(currenlyPlaying != null) { + AudioTrack cloned = currenlyPlaying.makeClone(); + cloned.setPosition(currenlyPlaying.getPosition()); + // Don't re-enqueue if its just a soundclip + if (!(currenlyPlaying.getInfo().uri.contains(".mp3") || currenlyPlaying.getInfo().uri.contains(".wav"))) + // Re-enqueue the track + queue.addFirst(cloned); + } player.startTrack(track, false); } |