= Condensed main shapsnot
This commit is contained in:
+32
-51
@@ -47,6 +47,26 @@ import utils.GlobalLog;
|
|||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
public class Main extends ListenerAdapter
|
public class Main extends ListenerAdapter
|
||||||
{
|
{
|
||||||
|
public class SmallAudio implements AudioLoadResultHandler
|
||||||
|
{
|
||||||
|
private TextChannel channel;
|
||||||
|
private GuildMusicManager manager;
|
||||||
|
|
||||||
|
private SmallAudio(TextChannel channel, GuildMusicManager manager) {
|
||||||
|
this.channel = channel;
|
||||||
|
this.manager = manager;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override public void loadFailed(FriendlyException arg0) { }
|
||||||
|
@Override public void noMatches() { }
|
||||||
|
@Override public void playlistLoaded(AudioPlaylist arg0) { }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void trackLoaded(AudioTrack track) {
|
||||||
|
play(channel.getGuild(), manager, track);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Variables and bot specific objects
|
// Variables and bot specific objects
|
||||||
private static KittyCore kittyCore;
|
private static KittyCore kittyCore;
|
||||||
private static DatabaseManager databaseManager;
|
private static DatabaseManager databaseManager;
|
||||||
@@ -66,7 +86,7 @@ public class Main extends ListenerAdapter
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private final AudioPlayerManager playerManager;
|
public final AudioPlayerManager playerManager;
|
||||||
private final Map<Long, GuildMusicManager> musicManagers;
|
private final Map<Long, GuildMusicManager> musicManagers;
|
||||||
|
|
||||||
public Main() {
|
public Main() {
|
||||||
@@ -92,68 +112,29 @@ public class Main extends ListenerAdapter
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onGuildMessageReceived(GuildMessageReceivedEvent event) {
|
public void onGuildMessageReceived(GuildMessageReceivedEvent event)
|
||||||
String[] command = event.getMessage().getContentRaw().split(" ", 2);
|
{
|
||||||
|
if (event.getMessage().getContentRaw().contains("!play"))
|
||||||
|
{
|
||||||
|
final TextChannel channel = event.getChannel();
|
||||||
|
final Guild guild = channel.getGuild();
|
||||||
|
|
||||||
if ("!play".equals(command[0]) && command.length == 2) {
|
channel.sendMessage("Doing something...");
|
||||||
loadAndPlay(event.getChannel(), command[1]);
|
|
||||||
} else if ("!skip".equals(command[0])) {
|
GuildMusicManager musicManager = getGuildAudioPlayer(guild);
|
||||||
skipTrack(event.getChannel());
|
connectToFirstVoiceChannel(guild.getAudioManager());
|
||||||
|
playerManager.loadItemOrdered(musicManager, "https://www.youtube.com/watch?v=qL-JCVA22Lo", new SmallAudio(channel, musicManager));
|
||||||
}
|
}
|
||||||
|
|
||||||
super.onGuildMessageReceived(event);
|
super.onGuildMessageReceived(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadAndPlay(final TextChannel channel, final String trackUrl) {
|
|
||||||
GuildMusicManager musicManager = getGuildAudioPlayer(channel.getGuild());
|
|
||||||
|
|
||||||
playerManager.loadItemOrdered(musicManager, trackUrl, new AudioLoadResultHandler() {
|
|
||||||
@Override
|
|
||||||
public void trackLoaded(AudioTrack track) {
|
|
||||||
channel.sendMessage("Adding to queue " + track.getInfo().title).queue();
|
|
||||||
|
|
||||||
play(channel.getGuild(), musicManager, track);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void playlistLoaded(AudioPlaylist playlist) {
|
|
||||||
AudioTrack firstTrack = playlist.getSelectedTrack();
|
|
||||||
|
|
||||||
if (firstTrack == null) {
|
|
||||||
firstTrack = playlist.getTracks().get(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
channel.sendMessage("Adding to queue " + firstTrack.getInfo().title + " (first track of playlist " + playlist.getName() + ")").queue();
|
|
||||||
|
|
||||||
play(channel.getGuild(), musicManager, firstTrack);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void noMatches() {
|
|
||||||
channel.sendMessage("Nothing found by " + trackUrl).queue();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void loadFailed(FriendlyException exception) {
|
|
||||||
System.out.println(exception.getCause());
|
|
||||||
channel.sendMessage("Could not play: " + exception.getMessage()).queue();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
private void play(Guild guild, GuildMusicManager musicManager, AudioTrack track) {
|
private void play(Guild guild, GuildMusicManager musicManager, AudioTrack track) {
|
||||||
connectToFirstVoiceChannel(guild.getAudioManager());
|
connectToFirstVoiceChannel(guild.getAudioManager());
|
||||||
|
|
||||||
musicManager.scheduler.queue(track);
|
musicManager.scheduler.queue(track);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void skipTrack(TextChannel channel) {
|
|
||||||
GuildMusicManager musicManager = getGuildAudioPlayer(channel.getGuild());
|
|
||||||
musicManager.scheduler.nextTrack();
|
|
||||||
|
|
||||||
channel.sendMessage("Skipped to next track.").queue();
|
|
||||||
}
|
|
||||||
|
|
||||||
private static void connectToFirstVoiceChannel(AudioManager audioManager) {
|
private static void connectToFirstVoiceChannel(AudioManager audioManager) {
|
||||||
if (!audioManager.isConnected() && !audioManager.isAttemptingToConnect()) {
|
if (!audioManager.isConnected() && !audioManager.isAttemptingToConnect()) {
|
||||||
for (VoiceChannel voiceChannel : audioManager.getGuild().getVoiceChannels()) {
|
for (VoiceChannel voiceChannel : audioManager.getGuild().getVoiceChannels()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user