const Command = require("../../base/Command.js"), Canvas = require("canvas"), Discord = require("discord.js"); class Facepalm extends Command { constructor (client) { super(client, { name: "facepalm", dirname: __dirname, enabled: true, guildOnly: false, aliases: [ "palm" ], memberPermissions: [], botPermissions: [ "SEND_MESSAGES", "EMBED_LINKS", "ATTACH_FILES" ], nsfw: false, ownerOnly: false, cooldown: 5000 }); } async run (message, args) { const user = await this.client.resolveUser(args[0]) || message.author, m = await message.sendT("misc:PLEASE_WAIT", null, { prefixEmoji: "loading" }); const canvas = Canvas.createCanvas(632, 357), ctx = canvas.getContext("2d"); // Draw background for transparent avatar ctx.fillStyle = "black"; ctx.fillRect(0, 0, 632, 357); // Draw avatar const avatar = await Canvas.loadImage(user.displayAvatarURL({ format: "png", size: 512 })); ctx.drawImage(avatar, 199, 112, 235, 235); // Draw layer const layer = await Canvas.loadImage("./assets/img/facepalm.png"); ctx.drawImage(layer, 0, 0, 632, 357); const attachment = new Discord.MessageAttachment(canvas.toBuffer(), "facepalm.png"); m.delete(); message.channel.send(attachment); } } module.exports = Facepalm;