This commit is contained in:
Alex
2019-10-18 03:11:01 -04:00
parent 8cfa25a51b
commit 6a84f3759a
4 changed files with 44 additions and 44 deletions
+6 -3
View File
@@ -25,8 +25,11 @@ public class SubCommandAddTrack extends SubCommand
//Get track from Youtube //Get track from Youtube
String video = YT.getYT(input.args); String video = YT.getYT(input.args);
ac.loadAndPlay(video, guild); ac.loadAndPlay(video, guild);
try {
System.out.println(ac.response); Thread.sleep(2000);
return new SubCommandFormattable(video); } catch (InterruptedException e) {
e.printStackTrace();
}
return new SubCommandFormattable(ac.response);
} }
} }
+1 -1
View File
@@ -58,7 +58,7 @@ public class KittyGuild extends DatabaseTrackedObject
roleList = new KittyTrackedVector(roleListName, uniqueID); roleList = new KittyTrackedVector(roleListName, uniqueID);
beans = new KittyTrackedLong(beansName, uniqueID); beans = new KittyTrackedLong(beansName, uniqueID);
registerTrackedObjects(); registerTrackedObjects();
musicManager = new GuildMusicManager(playerManager); musicManager = new GuildMusicManager(playerManager, this);
control = adminControl; control = adminControl;
this.contentRating = KittyRating.Safe; this.contentRating = KittyRating.Safe;
+32 -39
View File
@@ -25,56 +25,49 @@ public class AudioController
public void loadAndPlay(final String trackUrl, KittyGuild guild) public void loadAndPlay(final String trackUrl, KittyGuild guild)
{ {
synchronized(response) GuildMusicManager musicManager = guild.musicManager;
{
GuildMusicManager musicManager = guild.musicManager;
playerManager.loadItemOrdered(musicManager, trackUrl, new AudioLoadResultHandler() playerManager.loadItemOrdered(musicManager, trackUrl, new AudioLoadResultHandler()
{ {
@Override @Override
public void trackLoaded(AudioTrack track) public void trackLoaded(AudioTrack track)
{ {
response = "Adding to queue " + track.getInfo().title; response = "Adding to queue " + track.getInfo().title;
System.out.println("QUEUED"); play(musicManager, track);
play(musicManager, track); }
}
@Override @Override
public void playlistLoaded(AudioPlaylist playlist) public void playlistLoaded(AudioPlaylist playlist)
{ {
AudioTrack firstTrack = playlist.getSelectedTrack(); AudioTrack firstTrack = playlist.getSelectedTrack();
if (firstTrack == null) if (firstTrack == null)
{ {
firstTrack = playlist.getTracks().get(0); firstTrack = playlist.getTracks().get(0);
} }
response = "Adding to queue " + firstTrack.getInfo().title + " (first track of playlist " + playlist.getName() + ")"; response = "Adding to queue " + firstTrack.getInfo().title + " (first track of playlist " + playlist.getName() + ")";
play(musicManager, firstTrack); play(musicManager, firstTrack);
} }
@Override @Override
public void noMatches() public void noMatches()
{ {
System.out.println("NOT QUEUED"); response = "Nothing found by " + trackUrl;
response = "Nothing found by " + trackUrl; }
}
@Override
public void loadFailed(FriendlyException exception)
{
System.out.println("EXCEPTION");
System.out.println(exception.getCause());
}
});
}
@Override
public void loadFailed(FriendlyException exception)
{
System.out.println(exception.getCause());
}
});
} }
private void play(GuildMusicManager musicManager, AudioTrack track) private void play(GuildMusicManager musicManager, AudioTrack track)
{ {
System.out.println(musicManager.guildName);
musicManager.scheduler.queue(track); musicManager.scheduler.queue(track);
} }
+5 -1
View File
@@ -3,6 +3,8 @@ package utils.audio;
import com.sedmelluq.discord.lavaplayer.player.AudioPlayer; import com.sedmelluq.discord.lavaplayer.player.AudioPlayer;
import com.sedmelluq.discord.lavaplayer.player.AudioPlayerManager; import com.sedmelluq.discord.lavaplayer.player.AudioPlayerManager;
import dataStructures.KittyGuild;
/** /**
* Holder for both the player and a track scheduler for one guild. * Holder for both the player and a track scheduler for one guild.
*/ */
@@ -15,16 +17,18 @@ public class GuildMusicManager {
* Track scheduler for the player. * Track scheduler for the player.
*/ */
public final TrackScheduler scheduler; public final TrackScheduler scheduler;
public final String guildName;
/** /**
* Creates a player and a track scheduler. * Creates a player and a track scheduler.
* @param manager Audio player manager to use for creating the player. * @param manager Audio player manager to use for creating the player.
*/ */
public GuildMusicManager(AudioPlayerManager manager) public GuildMusicManager(AudioPlayerManager manager, KittyGuild guild)
{ {
player = manager.createPlayer(); player = manager.createPlayer();
scheduler = new TrackScheduler(player); scheduler = new TrackScheduler(player);
player.addListener(scheduler); player.addListener(scheduler);
guildName = guild.uniqueID;
} }
/** /**