简体   繁体   English

将成员计数器添加到机器人活动 discord.js

[英]Add member counter to bot activity discord.js

I tried to do that but it isn't working.我试图这样做,但它不起作用。 How can I resolve this?我该如何解决这个问题?

const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
  client.user.setActivity(`[${member.guild.memberCount}] Players`, {type: "PLAYING"});
});
client.on("guildMemberAdd", member => {
    client.user.setActivity(`[${member.guild.memberCount}] Players`, {type: "PLAYING"});
});
client.on("guildMemberRemove", member => {
    client.user.setActivity(`[${member.guild.memberCount}] Players`, {type: "PLAYING"});
});

You can map clients guilds, to get membersCount value and then get summ of members with reduce method.您可以 map 客户行会,获取 membersCount 值,然后使用 reduce 方法获取成员总和。

This code will update members count every 1 min.此代码将每 1 分钟更新一次成员计数。

const Discord = require('discord.js')
const token = require('./token.json').token
const client = new Discord.Client();

client.on('ready', () => {
    setInterval(() => {
        let membersCount = client.guilds.cache.map(guild => guild.memberCount).reduce((a, b) => a + b, 0)
        client.user.setActivity(`[${membersCount}] Players`, {type: "PLAYING"});
    }, 1000 * 60);

});

client.login(token)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM