Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.eddiemenard.jdabot.command.commands.music;
- import com.sedmelluq.discord.lavaplayer.player.AudioPlayer;
- import com.sedmelluq.discord.lavaplayer.track.AudioTrack;
- import me.eddiemenard.jdabot.command.CommandContext;
- import me.eddiemenard.jdabot.command.ICommand;
- import me.eddiemenard.jdabot.music.GuildMusicManager;
- import me.eddiemenard.jdabot.music.PlayerManager;
- import me.eddiemenard.jdabot.music.TrackScheduler;
- import net.dv8tion.jda.api.Permission;
- import net.dv8tion.jda.api.entities.Member;
- import net.dv8tion.jda.api.entities.TextChannel;
- import java.util.concurrent.BlockingQueue;
- public class SkipCommand implements ICommand
- {
- @Override
- public void handle(CommandContext ctx)
- {
- TextChannel channel = ctx.getChannel();
- Member author = ctx.getMessage().getMember();
- PlayerManager playerManager = PlayerManager.getInstance();
- GuildMusicManager musicManager = playerManager.getGuildMusicManager(ctx.getGuild());
- TrackScheduler scheduler = musicManager.scheduler;
- AudioPlayer player = musicManager.player;
- BlockingQueue<AudioTrack> queue = musicManager.scheduler.getQueue();
- if (player.getPlayingTrack() == null)
- {
- channel.sendMessage("There is no song playing").queue();
- return;
- }
- if (!author.hasPermission(Permission.ADMINISTRATOR))
- {
- channel.sendMessage("You are not an administrator").queue();
- return;
- }
- else
- {
- queue.remove(player.getPlayingTrack().getPosition());
- scheduler.nextTrack();
- channel.sendMessage("Skipping song").queue();
- }
- }
- @Override
- public String getName()
- {
- return "skip";
- }
- @Override
- public String getHelp()
- {
- return "Skips the current song (Must be an admin)";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement