首页 > 解决方案 > Discord bot:嵌入消息中的随机图像

问题描述

我开始编写一个不和谐的机器人,我做了我的第一个命令是拥抱另一个成员。答案是与动漫拥抱 gif 一起。但是现在,我想做的是,而不是只设置一个gif,而是放一些其他的随机选择的gif。但是,我不知道如何进行随机 gif。

const Discord = require("discord.js");
const { UserAgent } = require("discord.js/src/util/Constants");
const ytdl = require("ytdl-core");
const Client = new Discord.Client({
    intents : [
        Discord.Intents.FLAGS.GUILDS,
        Discord.Intents.FLAGS.GUILD_MESSAGES
    ]
});

const prefix ="<";

Client.on("ready", () => {
    console.log("bot opérationnel")

});

Client.on("message", message => {
    if (message.author.bot) return;
    if (message.content.startsWith (prefix + "hug")){
        let mention = message.mentions.members.first();

        if(mention === undefined){
            message.channel.send("u have to hug someone who actually exists");
        }
        else {
            const embed = new Discord.MessageEmbed()
            .setColor("DARK_RED")
            .setTitle(":hugging: " + mention.displayName + " recieved a hug from " + message.author.username + " !")
            .setImage("gif.gif");

        message.channel.send({embeds: [embed]});
        }
    }
});

Client.login("token");

标签: javascriptvisual-studio-codediscorddiscord.jsbots

解决方案


所以这将是从 gif 数组中选择一个随机元素,

const hugs = ['gif1.gif', 'gif2.gif'];

const randomHug = hugs[Math.floor(Math.random() * hugs.length)];

然后,您当然会使用变量 randomHug 作为 gif。.setImage(randomHug);


推荐阅读