0.5.0 embed, help, refractor

This commit is contained in:
2024-02-13 18:44:01 +01:00
parent d75c5bc9a2
commit 8fa86b0182
24 changed files with 341 additions and 94 deletions

View File

@@ -1,7 +1,15 @@
use crate::{Context, Error};
use crate::{commands::embeds::{error_embed, embed}, Context, Error};
use poise::CreateReply;
#[poise::command(prefix_command, slash_command)]
pub async fn skip(ctx: Context<'_>) -> Result<(), Error> {
/// Skips the currently playing song
#[poise::command(
prefix_command,
slash_command,
category = "Music"
)]
pub async fn skip(
ctx: Context<'_>
) -> Result<(), Error> {
let guild_id = ctx.guild_id().unwrap();
let manager = songbird::get(&ctx.serenity_context())
@@ -14,9 +22,14 @@ pub async fn skip(ctx: Context<'_>) -> Result<(), Error> {
let queue = handler.queue();
let _ = queue.skip();
ctx.say(format!("Song skipped: {} in queue.", queue.len())).await?;
ctx.send(
CreateReply::default().embed(embed(ctx, "Skipped!", "Next song: {song}", &format!("Songs left in queue: {}", queue.len())).await.unwrap())
).await?;
} else {
ctx.say("Not in a voice channel to play in").await?;
let msg = "I am not in a voice channel!";
ctx.send(
CreateReply::default().embed(error_embed(ctx, msg).await.unwrap())
).await?;
}
Ok(())