获取机器人正在服务的成员和服务器数量

时间:2020-06-06 12:34:18

标签: discord discord.js

因此,我浏览了discord.js指南,发现client.guilds.sizeclient.users.size用于查找机器人所在的用户和服务器。但是当我实现它时,我会得到“不确定”。有什么原因吗?

2 个答案:

答案 0 :(得分:1)

尝试client.guilds.cache.sizeclient.users.cache.size。 这在discord.js v12中已更改。

client.users has been changed from a Collection to a Manager.

client.guilds has been changed from a Collection to a Manager.

答案 1 :(得分:1)

您可以使用client.guilds.cache.size,它会返回机器人所在的行会的数量让我们假设,您将为{然后将其作为您机器人的活动。

const

但是您需要将const servers = client.guilds.cache.size console.log(`Bot is now online and serving in ${servers} servers`) 放入await中,并使您的功能成为异步功能,以便Bot能够返回并显示它。

const

不执行此操作,您的机器人会将其显示为const servers = await client.guilds.cache.size

在这里,我将举一个例子。

0 servers

这会在Bot的状态中显示“正在11台服务器上玩并服务500个用户”。

对于那些新手。 只要您将功能作为异步功能,就可以使用client.on('ready', async () => { //This will get the amount of servers and then return it. const servers = await client.guilds.cache.size const users = await client.users.cache.size console.log(`Bot is now online and serving in ${servers} servers`) //This will display "Playing in <servers> servers!" client.user.setActivity(`in ${servers} servers and serving ${users}`, { type: 'PLAYING', }) }) 进行所有操作 让我知道这是否有效,对我有用!