From 78dfaa6f7b34f942178f19cee6894d032e1379f1 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 5 Jan 2020 01:36:16 +0100 Subject: [PATCH] Pause Command --- src/main/java/com/bbn/hadder/Hadder.java | 3 +- .../hadder/commands/music/PauseCommand.java | 61 +++++++++++++++++++ 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/bbn/hadder/commands/music/PauseCommand.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index 30e53a0..f257042 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -101,7 +101,8 @@ public class Hadder { new EditRulesCommand(), new VolumeCommand(), new StopCommand(), - new BlacklistCommand()), config, helpCommand); + new BlacklistCommand(), + new PauseCommand()), config, helpCommand); builder.addEventListeners( new MentionListener(rethink), diff --git a/src/main/java/com/bbn/hadder/commands/music/PauseCommand.java b/src/main/java/com/bbn/hadder/commands/music/PauseCommand.java new file mode 100644 index 0000000..f67a099 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/music/PauseCommand.java @@ -0,0 +1,61 @@ +package com.bbn.hadder.commands.music; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; + +public class PauseCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (event.getAudioManager().hasPlayer(event.getGuild()) && event.getAudioManager().getPlayer(event.getGuild()).getPlayingTrack() != null) { + if (event.getMember().getVoiceState().inVoiceChannel() && event.getGuild().getSelfMember().getVoiceState().inVoiceChannel() && event.getGuild().getSelfMember().getVoiceState().getChannel().equals(event.getMember().getVoiceState().getChannel())) { + if (!event.getAudioManager().getPlayer(event.getGuild()).isPaused()) { + event.getAudioManager().getPlayer(event.getGuild()).setPaused(true); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, + "commands.music.pause.success.title", + "commands.music.pause.success.description") + .build()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, + "commands.music.pause.error.paused.title", + "commands.music.pause.error.paused.description") + .build()).queue(); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, + "commands.music.pause.error.connected.title", + "commands.music.pause.error.connected.description") + .build()).queue(); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, + "commands.music.info.error.title", + "commands.music.info.error.description").build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"pause"}; + } + + @Override + public String description() { + return "commands.music.pause.help.description"; + } + + @Override + public String usage() { + return null; + } + + @Override + public String example() { + return null; + } +}