node.js不和谐机器人将输入用作机器人输出和响应

时间:2020-06-24 21:13:23

标签: node.js bots discord

所以我需要处理一些事情。我希望用户能够输入多行文本,然后漫游器将这些行文本用作输出。例如。

用户输入

本 英国伦敦 500000 +15

现在我想让bot读取这些参数并在其输出中使用它们。因此对于“英国伦敦”,它将被分类为2个单独的参数。

国家:英格兰 城市:伦敦。

我的下一个问题是来自该机器人的嵌入式文本的反应。我有反应设置,但是当有人做出反应并用@填充字段时,我想编辑嵌入的文本。如果它们没有反应,则再次编辑并删除其@。我想使用4种表情来完成此操作,因此嵌入文本中将通过其@提及总共4个用户

这是我当前的代码;

const Discord = require('discord.js');
const client = new Discord.Client();
const token = "mytoken";
const { Client, MessageEmbed } = require('discord.js');
const prefix = '!';



client.on("ready", async () => {
    console.log('Boost Bot Is Online')
    client.user.setActivity("Mythic+", {type: "PLAYING"});    
})
  

let r = Math.random().toString(36).substring(3, 10) + Math.random().toString(36).substring(3, 10);

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

    let args  = messsage.content.slice(prefix.length).split(' ');

    switch(args[0]){
        case 'hello':
            messsage.channel.send(' Hello');
            break;

        case 'e':
            const exampleEmbed = new Discord.MessageEmbed()
            .setColor('#c731c7') // embed colour DONE
            .setThumbnail('https://i.imgur.com/ZpXw8vX.png')
            .setTitle(messsage.member.user.tag) // username who used command DONE
            .addFields(
                { name: '**Run ID**', value: r}, // need to make random 10 digit alphanumerical generator DONE
                { name: '**Comment**', value: 'Some value here' }, // Standard comment from command (in text)
                { name: '**Boosters**', value: 'Some value here' }, // users @ has to be mentioned after reaction, so bot has to edit embed.
                { name: '**Pot**', value: 'Some value here', inline: true }, // price of the run
                { name: '**Booster Cut**', value: 'Some value here', inline: true }, // 75% of pot
                { name: '**Advertiser Cut**', value: 'Some value here', inline: true }, // 15% of pot
                { name: '**Dungeon**', value: 'Some value here', inline: true }, // get number from command (if no dungeon name display ANY)
                { name: '**Payment Realm**', value: 'Some value here', inline: true }, // text from command
                { name: '**Gold Bank**', value: 'Some value here', inline: true }, // if horde display "ktcbankh" if ally display "ktcbanka"
            )
            .setTimestamp()
            .setFooter('Boost Bot', 'https://i.imgur.com/ZpXw8vX.png');
            messsage.channel.send(exampleEmbed) .then(sentEmbed => {
                sentEmbed.react('725452952193466380')
                sentEmbed.react('725452952424153158')
                sentEmbed.react('725452952311038086')
                sentEmbed.react('725452952529010750')
                sentEmbed.react('❌')
            })
        break;
    }
})


client.login(token);

0 个答案:

没有答案