From 5bec31353d567c1e74f569a04491a72aa12d7e04 Mon Sep 17 00:00:00 2001 From: ZtereoHYPE <57519662+ZtereoHYPE@users.noreply.github.com> Date: Tue, 28 Dec 2021 01:40:05 +0100 Subject: [PATCH] change: move messages out of TrackManager --- .../ztereomusic/audio/TrackManager.java | 24 +++++++------------ .../ztereomusic/command/commands/Pause.java | 2 ++ .../ztereomusic/command/commands/Play.java | 13 +++++----- 3 files changed, 17 insertions(+), 22 deletions(-) diff --git a/src/main/java/codes/ztereohype/ztereomusic/audio/TrackManager.java b/src/main/java/codes/ztereohype/ztereomusic/audio/TrackManager.java index 5db0360..3fbee6d 100644 --- a/src/main/java/codes/ztereohype/ztereomusic/audio/TrackManager.java +++ b/src/main/java/codes/ztereohype/ztereomusic/audio/TrackManager.java @@ -8,7 +8,6 @@ import com.sedmelluq.discord.lavaplayer.track.AudioTrack; import com.sedmelluq.discord.lavaplayer.track.AudioTrackEndReason; import lombok.Getter; import lombok.Setter; -import lombok.SneakyThrows; import net.dv8tion.jda.api.entities.Guild; import net.dv8tion.jda.api.entities.MessageChannel; @@ -40,26 +39,23 @@ public class TrackManager extends AudioEventAdapter { infoChannel.sendMessage("Playing: " + track.getInfo().title).queue(); } else { trackQueue.add(track); - infoChannel.sendMessage("Queued " + track.getInfo().title).queue(); + infoChannel.sendMessage("Queued: " + track.getInfo().title).queue(); } } - public void clearQueue() { - trackQueue.clear(); + public void removeQueueItem(int index) { + trackQueue.remove(index); } public void pause() { - infoChannel.sendMessage("Pausing...").queue(); player.setPaused(true); } public void resume() { - infoChannel.sendMessage("Resuming...").queue(); player.setPaused(false); } public void skip() { - infoChannel.sendMessage("Skipping...").queue(); playNext(); } @@ -68,10 +64,7 @@ public class TrackManager extends AudioEventAdapter { } private void playNext() { - // if the player was playing a track (probably means it's a skip), stop it - if (player.getPlayingTrack() != null) { - player.stopTrack(); - } + if (trackQueue.isEmpty()) { infoChannel.sendMessage("The queue is empty!").queue(); @@ -99,9 +92,9 @@ public class TrackManager extends AudioEventAdapter { playNext(); } - if (endReason.equals(AudioTrackEndReason.CLEANUP)) { - TrackManagers.removeGuildTrackManager(guild); - } +// if (endReason.equals(AudioTrackEndReason.CLEANUP)) { +// TrackManagers.removeGuildTrackManager(guild); +// } // endReason == FINISHED: A track finished or died by an exception (mayStartNext = true). // endReason == LOAD_FAILED: Loading of a track failed (mayStartNext = true). @@ -110,11 +103,10 @@ public class TrackManager extends AudioEventAdapter { // endReason == CLEANUP: Player hasn't been queried for a while, if you want you can put a clone of this back to your queue } - @SneakyThrows @Override public void onTrackException(AudioPlayer player, AudioTrack track, FriendlyException exception) { infoChannel.sendMessage("Uh oh, a track did something strange. Ask the owner to check for errors in console. Skpping...").queue(); - throw exception.getCause(); + System.out.println(exception.getCause().getMessage()); } @Override diff --git a/src/main/java/codes/ztereohype/ztereomusic/command/commands/Pause.java b/src/main/java/codes/ztereohype/ztereomusic/command/commands/Pause.java index e0d78e0..82edd77 100644 --- a/src/main/java/codes/ztereohype/ztereomusic/command/commands/Pause.java +++ b/src/main/java/codes/ztereohype/ztereomusic/command/commands/Pause.java @@ -40,8 +40,10 @@ public class Pause implements Command { assert trackManager != null; // the command will not execute if it is anyway because of our VoiceChecks if (trackManager.getPlayer().isPaused()) { trackManager.resume(); + messageChannel.sendMessage("Resuming...").queue(); } else { trackManager.pause(); + messageChannel.sendMessage("Pausing...").queue(); } } } diff --git a/src/main/java/codes/ztereohype/ztereomusic/command/commands/Play.java b/src/main/java/codes/ztereohype/ztereomusic/command/commands/Play.java index 626b26d..bebf6be 100644 --- a/src/main/java/codes/ztereohype/ztereomusic/command/commands/Play.java +++ b/src/main/java/codes/ztereohype/ztereomusic/command/commands/Play.java @@ -9,9 +9,9 @@ import codes.ztereohype.ztereomusic.command.CommandMeta; import codes.ztereohype.ztereomusic.command.permissions.VoiceChecks; import codes.ztereohype.ztereomusic.networking.YoutubeSearch; import com.sedmelluq.discord.lavaplayer.player.AudioPlayerManager; +import lombok.Getter; import net.dv8tion.jda.api.entities.*; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; -import net.dv8tion.jda.api.managers.AudioManager; import java.util.Objects; import java.util.Optional; @@ -21,7 +21,7 @@ import java.util.regex.Pattern; public class Play implements Command { private static final Pattern URL_PATTERN = Pattern.compile("^(http|https)://([a-z]+\\.[a-z]+)+/\\S+$", Pattern.CASE_INSENSITIVE); - private final CommandMeta meta; + private @Getter final CommandMeta meta; public Play() { this.meta = CommandMeta.builder() @@ -35,10 +35,10 @@ public class Play implements Command { .build(); } - @Override - public CommandMeta getMeta() { - return this.meta; - } +// @Override +// public CommandMeta getMeta() { +// return this.meta; +// } public void execute(MessageReceivedEvent messageEvent, String[] args) { Member author = Objects.requireNonNull(messageEvent.getMember()); @@ -58,6 +58,7 @@ public class Play implements Command { } trackManager.resume(); + messageChannel.sendMessage("Resuming...").queue(); return; }