This snippet allows you to generate a custom Minecraft achievement image using a slash command! Make sure to register a slash command named "mc-achievement" via the [command builder](https://autocode.com/tools/discord/command-builder/) with two required string options, `title` & `description`. Credits to minecraftskinstealer.com.
const lib = require('lib')({token: process.env.STDLIB_SECRET_TOKEN});
let event = context.params.event;
let aTitle = `${event.data.options[0].value}`.split(' ').join('%20');
let aDescription = `${event.data.options[1].value}`.split(' ').join('%20');
let botMessage = await lib.discord.channels['@0.3.0'].messages.create({
channel_id: event.channel_id,
content: `Here's your Minecraft Achievement image, <@${event.member.user.id}>!`,
embeds: [
{
image: {
url: `https://minecraftskinstealer.com/achievement/${
Math.floor(Math.random() * 39) + 1
}/${aTitle}/${aDescription}`,
},
color: 0x55ff55,
},
],
});
await lib.discord.channels['@0.3.0'].messages.update({
message_id: botMessage.id,
channel_id: botMessage.channel_id,
content: botMessage.content,
embeds: [
{
description: `[**Image URL**](${botMessage.embeds[0].image.url})`,
image: {url: botMessage.embeds[0].image.url},
color: botMessage.embeds[0].color,
},
],
});