没有正确检索机器人和人员的数量

时间:2021-04-22 00:50:05

标签: javascript discord.js

我正在制作一个会员计数器,当我输入 ,member-count 时,它会以嵌入形式为我提供当时服务器上的会员总数作为标题。这些字段应该分别显示服务器上的人数和机器人的数量,但每个字段只显示 0,我不知道如何让它们更改值。

代码如下:

module.exports = {
    name: 'member-count',
    async execute(Client, message, args, Discord) {
        const MembersInServer = message.guild.memberCount;
        var BotsInServer = 0;
        var PeopleInServer = 0;
        if(MembersInServer === message.author.bot){
            BotsInServer++
        }
        else if(MembersInServer === message.author.member) {
            PeopleInServer++
        }
        MemberEmbed = new Discord.MessageEmbed()
        .setColor("RANDOM")
        .setTitle(`${message.guild.name} has ${MembersInServer} members in the server!`)
        .addFields(
            { name: "People in the server:", value: PeopleInServer },
            { name: "Bots in the server:", value: BotsInServer },
        )


        message.channel.send(MemberEmbed);
    } 
}

1 个答案:

答案 0 :(得分:1)

你可以这样做:

const members = message.guild.members.cache;
let BotsInServer = members.filter(member => member.user.bot).size
let PeopleInServer = members.filter(member => !member.user.bot).size

请记住,您需要对 refer to this post to know how

具有存在意图