Added leave command.

crossfading
Nekojimi 3 years ago
parent 0a8d526ff1
commit 17591cd6a7
  1. 29
      src/main/java/moe/nekojimi/chords/Main.java

@ -41,6 +41,8 @@ public class Main extends ListenerAdapter
private final Searcher searcher; private final Searcher searcher;
private JDA jda; private JDA jda;
private VoiceChannel currentVoiceChannel = null;
private List<Result> lastSearchResults; private List<Result> lastSearchResults;
private int trackNumber = 1; private int trackNumber = 1;
@ -127,6 +129,8 @@ public class Main extends ListenerAdapter
if (content.startsWith("!join ")) if (content.startsWith("!join "))
onJoinCommand(event, guild, arg); onJoinCommand(event, guild, arg);
else if (content.equals("!leave"))
onLeaveCommand(event);
else if (content.equals("!join")) else if (content.equals("!join"))
onJoinCommand(event); onJoinCommand(event);
else if (content.startsWith("!play ")) else if (content.startsWith("!play "))
@ -201,6 +205,15 @@ public class Main extends ListenerAdapter
onConnecting(channel, textChannel); // Let the user know, we were successful! onConnecting(channel, textChannel); // Let the user know, we were successful!
} }
private void onLeaveCommand(GuildMessageReceivedEvent event)
{
if (currentVoiceChannel != null)
{
disconnect();
}
}
private void onPlayCommand(GuildMessageReceivedEvent event, Guild guild, String arg) private void onPlayCommand(GuildMessageReceivedEvent event, Guild guild, String arg)
{ {
try try
@ -384,7 +397,9 @@ public class Main extends ListenerAdapter
{ {
String help = "Commands available:\n" String help = "Commands available:\n"
+ "!join <Channel> - Joins a voice channel\n" + "!join <Channel> - Joins a voice channel\n"
+ "!leave - Leaves the current voice channel\n"
+ "!play <URL> - Downloads the track at that URL and adds it to the queue.\n" + "!play <URL> - Downloads the track at that URL and adds it to the queue.\n"
+ "!play <Search> - Searches for a track and displays a selection menu.\n"
+ "!queue - Show the songs currently playing and the current queue.\n" + "!queue - Show the songs currently playing and the current queue.\n"
+ "!remove <Index> - Remove the song at position <Index> from the queue.\n" + "!remove <Index> - Remove the song at position <Index> from the queue.\n"
+ "!skip - Skip the current song and play the next one.\n" + "!skip - Skip the current song and play the next one.\n"
@ -442,6 +457,20 @@ public class Main extends ListenerAdapter
// audioManager.setReceivingHandler(handler); // audioManager.setReceivingHandler(handler);
// Connect to the voice channel // Connect to the voice channel
audioManager.openAudioConnection(channel); audioManager.openAudioConnection(channel);
currentVoiceChannel = channel;
}
private void disconnect()
{
if (currentVoiceChannel != null)
{
Guild guild = currentVoiceChannel.getGuild();
AudioManager audioManager = guild.getAudioManager();
audioManager.setSendingHandler(null);
audioManager.closeAudioConnection();
musicHandler = null;
currentVoiceChannel = null;
}
} }
} }

Loading…
Cancel
Save