我正在尝试使用jimp制作一个可操纵的图像来欢迎人们在我的骰bo上玩

问题描述

我正在使用它,但是没有用。我不知道为什么请帮助我。

const discord = require("discord.js");
const jimp = require("jimp");
const client = new discord.Client();
const config = require("./config.json");

client.on("ready",() => {
    console.log(`Bot foi iniciado`)
});

client.on("guildMemberAdd",async member => {

    let canal = client.channels.get("750795877089804309")
    let fonte = await jimp.loadFont(jimp.FONT_SANS_32_BLACK)
    let mask = await jimp.read('mascara.png')
    let fundo = await jimp.read('fundo.png')

    jimp.read(member.user.defaultAvatarURL).then(avatar => {
            avatar.resize(400,400)
            mask.resize(400,400)
            fundo.resize(270,190)
            avatar.mask(mask)
            fundo.print(fonte,05,120,member.user.username)
            avatar.composite(fundo,80,170).write('resultado.png')
            canal.send(``,{
                files: ["resultado.png"]
            })

            console.log('imagem enviada')
        })
        .catch(err => {
            console.log('Deu erro aqui porra')
        });

});

client.on("message",async message => {

    if (message.author.bot) return;
    if (message.channel.type === "dm") return;
    if (!message.content.startsWith(config.prefix)) return;

    const args = message.content.slice(config.prefix.length).trim().split(/ +/g);
    const comando = args.shift().toLowerCase();

    if (comando === "ping") {
        const m = await message.channel.send("Sifude");
        m.edit(`A Latência é ${m.createdTimestamp - message.createdTimestamp}ms. A Latencia da API é ${Math.round(client.ping)}ms`);
    }

});

client.login(config.token);

解决方法

您需要使用:

let canal = client.channels.cache.get("750795877089804309")

作为client.channels返回ChannelManager对象而不是集合。