JaBa/commands/Images/facepalm.js

53 lines
1.3 KiB
JavaScript
Raw Normal View History

2021-12-10 21:39:54 +05:00
const Command = require("../../base/Command.js"),
Canvas = require("canvas"),
Discord = require("discord.js");
class Facepalm extends Command {
2021-12-26 19:29:37 +05:00
constructor(client) {
2021-12-10 21:39:54 +05:00
super(client, {
name: "facepalm",
dirname: __dirname,
enabled: true,
guildOnly: false,
2021-12-26 19:29:37 +05:00
aliases: ["palm"],
2021-12-10 21:39:54 +05:00
memberPermissions: [],
2021-12-26 19:29:37 +05:00
botPermissions: ["SEND_MESSAGES", "EMBED_LINKS", "ATTACH_FILES"],
2021-12-10 21:39:54 +05:00
nsfw: false,
ownerOnly: false,
cooldown: 5000
});
}
2021-12-26 19:29:37 +05:00
async run(message, args) {
2021-12-10 21:39:54 +05:00
const user = await this.client.resolveUser(args[0]) || message.author,
2021-12-26 19:29:37 +05:00
m = await message.sendT("misc:PLEASE_WAIT", null, {
prefixEmoji: "loading"
});
2021-12-10 21:39:54 +05:00
const canvas = Canvas.createCanvas(632, 357),
ctx = canvas.getContext("2d");
2021-12-11 01:11:50 +05:00
2021-12-10 21:39:54 +05:00
// Draw background for transparent avatar
ctx.fillStyle = "black";
ctx.fillRect(0, 0, 632, 357);
// Draw avatar
2021-12-26 19:29:37 +05:00
const avatar = await Canvas.loadImage(user.displayAvatarURL({
format: "png",
size: 512
}));
2021-12-10 21:39:54 +05:00
ctx.drawImage(avatar, 199, 112, 235, 235);
2021-12-11 01:11:50 +05:00
2021-12-10 21:39:54 +05:00
// 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();
2021-12-26 19:29:37 +05:00
2021-12-10 21:39:54 +05:00
message.channel.send(attachment);
}
2021-12-11 01:11:50 +05:00
};
2021-12-10 21:39:54 +05:00
2021-12-11 01:11:50 +05:00
module.exports = Facepalm;