我尝试制作一个简单的机器人,仅列出具有特定角色的所有成员。
我浏览了我能找到的大多数类似问题,但他们的答案似乎已经过时了。所以我尝试了这个,但最终结果是“未定义”,尽管角色存在。
const discord = require('discord.js');
const { Client, Intents } = require('discord.js');
const client = new discord.Client(
{ intents: [
Intents.FLAGS.GUILDS,
Intents.FLAGS.GUILD_MESSAGES,
Intents.FLAGS.GUILD_MEMBERS
] });
const prefix ="!";
const MemberID = "912852591023628371";
client.on('ready', () => {
console.log('Connected to the bot');
});
client.on('messageCreate', msg => {
if (msg.content === 'hi') {
msg.reply('Hi to you too!');
}
});
client.on('messageCreate', async message => {
if (message.content === prefix + 'list') {
let list = client.guilds.cache.get(MemberID);
console.log(list);
}
}
);
只需使用这个:
message.guild.roles.cache.get('Your role id here').members.map(m=>m.user.tag);
这将返回具有该角色的所有用户的数组。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)