import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; import { MessageEmbed } from 'discord.js'; module.exports = class GetMiniMeMinecraft extends Command { constructor(client: CommandoClient) { super(client, { name: 'getminime', aliases: [ 'get-mini-me', 'getmcminime', 'get-mc-mini-me', 'gmcmm' ], group: 'minecraft', memberName: 'getminime', description: 'Grabs a specified player\'s skin from Minecraft.', examples: [ 'uwu!getminime notch', 'uwu!gmcmm sin false' ], userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], throttling: { usages: 5, duration: 30 }, args: [ { key: 'uUsername', prompt: 'What is the account name of the user?', type: 'string' }, { key: 'uTrans', prompt: 'Would you like the background to be transparant? (yes or no)', type: 'string', default: true } ] }); } async run(msg: CommandoMessage, { uUsername, uTrans }: any) { console.debug('Transparency value:', uTrans) let emb = new MessageEmbed() .setColor(0xFFCC4D) .setAuthor(uUsername, `http://minecraftskinavatar.com/customize?id=${encodeURIComponent(uUsername)}&source=minecraft`, `https://minotar.net/helm/${encodeURIComponent(uUsername)}`) .setFooter('[Provided by minecraftskinavatar.com](Provided by minecraftskinavatar.com)') if (uTrans) { emb.setImage(`http://avatar.yourminecraftservers.com/avatar/trnsp/steve/tall/128/${encodeURIComponent(uUsername)}.png`) } else { emb.setImage(`http://avatar.yourminecraftservers.com/avatar/rad/steve/tall/128/${encodeURIComponent(uUsername)}.png`) } console.debug(`Image URL for ${uUsername}: ${emb.image?.url}`) return msg.reply(emb) } };