use serenity::prelude::*; use serenity::{ framework::standard::{macros::command, Args, CommandError, CommandResult}, model::channel::Message, }; #[command] #[description = "displays your avatar"] pub fn avatar(ctx: &mut Context, msg: &Message, _args: Args) -> CommandResult { let guild = &msg.guild_id.ok_or(CommandError("no guild".to_owned()))?; let member = guild.member(&ctx, &msg.author)?; let name = member.display_name(); if let Some(user_avatar) = &msg.author.avatar_url() { msg.channel_id .send_message(&ctx.http, |m| { m.embed(|e| { e.title(format!("Heres {}'s avatar", name)) .image(user_avatar) }) }) .ok(); }; Ok(()) }