This commit is contained in:
GregTCLTK 2020-01-19 11:47:11 +01:00
parent b9767b0839
commit 6ef8fdfd9b
No known key found for this signature in database
GPG key ID: A91BADE5C070FF67
2 changed files with 7 additions and 2 deletions

View file

@ -53,7 +53,7 @@ public class AudioManager {
public AudioPlayer createPlayer(Guild guild) {
AudioPlayer nPlayer = myManager.createPlayer();
TrackManager manager = new TrackManager(nPlayer);
TrackManager manager = new TrackManager(nPlayer, this);
nPlayer.addListener(manager);
guild.getAudioManager().setSendingHandler(new AudioPlayerSendHandler(nPlayer));
players.put(guild.getId(), new AbstractMap.SimpleEntry<>(nPlayer, manager));

View file

@ -18,10 +18,12 @@ import java.util.concurrent.LinkedBlockingQueue;
public class TrackManager extends AudioEventAdapter {
private final AudioPlayer player;
private final AudioManager manager;
private final Queue<AudioInfo> queue;
private boolean loop = false;
public TrackManager(AudioPlayer player) {
public TrackManager(AudioPlayer player, AudioManager manager) {
this.manager = manager;
this.player = player;
this.queue = new LinkedBlockingQueue<>();
}
@ -52,6 +54,9 @@ public class TrackManager extends AudioEventAdapter {
if (loop) {
player.playTrack(track.makeClone());
} else if (queue.isEmpty()) {
manager.players.remove(g.getId());
manager.getPlayer(g).destroy();
manager.getTrackManager(g).purgeQueue();
g.getAudioManager().closeAudioConnection();
} else {
player.playTrack(queue.element().getTrack());