From 534cf4f50ce193da0363c89b49591918994ea0ce Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 17 Jan 2020 17:36:58 +0100 Subject: [PATCH] Some bass stuff --- .../com/bbn/hadder/audio/TrackManager.java | 2 +- .../hadder/commands/music/BassCommand.java | 29 ++++++++++++++----- .../Translations/Translations_en.properties | 3 ++ 3 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/bbn/hadder/audio/TrackManager.java b/src/main/java/com/bbn/hadder/audio/TrackManager.java index b1db573..5154b80 100644 --- a/src/main/java/com/bbn/hadder/audio/TrackManager.java +++ b/src/main/java/com/bbn/hadder/audio/TrackManager.java @@ -48,10 +48,10 @@ public class TrackManager extends AudioEventAdapter { @Override public void onTrackEnd(AudioPlayer player, AudioTrack track, AudioTrackEndReason endReason) { - Guild g = queue.poll().getAuthor().getGuild(); if (loop) { player.playTrack(track.makeClone()); } else if (queue.isEmpty()) { + Guild g = queue.poll().getAuthor().getGuild(); g.getAudioManager().closeAudioConnection(); } else { player.playTrack(queue.element().getTrack().makeClone()); diff --git a/src/main/java/com/bbn/hadder/commands/music/BassCommand.java b/src/main/java/com/bbn/hadder/commands/music/BassCommand.java index 70ce4b7..c227118 100644 --- a/src/main/java/com/bbn/hadder/commands/music/BassCommand.java +++ b/src/main/java/com/bbn/hadder/commands/music/BassCommand.java @@ -6,6 +6,7 @@ package com.bbn.hadder.commands.music; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; import com.sedmelluq.discord.lavaplayer.filter.equalizer.EqualizerFactory; public class BassCommand implements Command { @@ -15,15 +16,27 @@ public class BassCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length > 0) { - float value = Float.parseFloat(args[0]); - EqualizerFactory equalizer = new EqualizerFactory(); - for (int i = 0; i < BASS_BOOST.length; i++) { - equalizer.setGain(i, BASS_BOOST[i] + value); + 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())) { + float value = Float.parseFloat(args[0]); + EqualizerFactory equalizer = new EqualizerFactory(); + for (int i = 0; i < BASS_BOOST.length; i++) { + equalizer.setGain(i, BASS_BOOST[i] + value); + } + event.getAudioManager().getPlayer(event.getGuild()).setFrameBufferDuration(500); + event.getAudioManager().getPlayer(event.getGuild()).setFilterFactory(equalizer); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, + "commands.music.bass.error.connected.title", + "commands.music.bass.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(); } - event.getAudioManager().getPlayer(event.getGuild()).setFrameBufferDuration(500); - event.getAudioManager().getPlayer(event.getGuild()).setFilterFactory(equalizer); - event.getTextChannel().sendMessage("Bruh, set dae bass").queue(); - } + } else event.getHelpCommand().sendHelp(this, event); } @Override diff --git a/src/main/resources/Translations/Translations_en.properties b/src/main/resources/Translations/Translations_en.properties index 9167e2d..5ca0715 100644 --- a/src/main/resources/Translations/Translations_en.properties +++ b/src/main/resources/Translations/Translations_en.properties @@ -174,6 +174,9 @@ commands.moderation.editrules.success.title = Successfully changed commands.moderation.editrules.success.description = I successfully changed the rules commands.moderation.editrules.help.description = Edits the rules message. +commands.music.bass.error.connected.title = No channel +commands.music.bass.error.connected.description = You have to be in the same voice channel as the bot to change the bass level. +commands.music.bass.help.description = Change the bass for the song which is played at the moment. commands.music.join.success.title = Successfully connected commands.music.join.success.description = I successfully connected to %extra%. commands.music.join.error.connecting.already.title = Already connected