Files
SethDiscordBot/Plugins/MusicPlayer/SlashCommands/Queue.cs

50 lines
1.4 KiB
C#

using Discord;
using Discord.WebSocket;
using DiscordBotCore.Interfaces;
namespace MusicPlayer.SlashCommands;
public class Queue: IDbSlashCommand
{
public string Name => "queue";
public string Description => "Queue a melody to play";
public bool CanUseDm => false;
public bool HasInteraction => false;
public List<SlashCommandOptionBuilder> Options => null;
public async void ExecuteServer(SocketSlashCommand context)
{
if (Variables._MusicPlayer is null)
{
await context.RespondAsync("No music is currently playing.");
return;
}
if (Variables._MusicPlayer.MusicQueue.Count == 0 && Variables._MusicPlayer.CurrentlyPlaying == null)
{
await context.RespondAsync("No music is currently playing");
return;
}
var builder = new EmbedBuilder()
{
Title = "Music Queue",
Description = "Here is the current music queue",
Color = Color.Blue
};
if (Variables._MusicPlayer.CurrentlyPlaying != null)
builder.AddField("Current music", Variables._MusicPlayer.CurrentlyPlaying.Title);
var i = 1;
foreach (var melody in Variables._MusicPlayer.MusicQueue)
{
builder.AddField($"#{i}", melody.Title);
i++;
}
await context.RespondAsync(embed: builder.Build());
}
}