我对编码很陌生。我正在尝试制作一个不和谐机器人,当有人加入不和谐时,它会给出一个角色,但它不起作用,我现在不知道该怎么做。
这是加入服务器时自动角色的代码。
client.on('guildMemberAdd', member => {
console.log('User ' + member.user.username + 'has joined the server!')
var role = member.guild.roles.find('name', 'Members');
member.addRole(role)
});
这是我为机器人获得的完整代码(不多,现在我只让机器人开启)。
const Discord = require("discord.js"); //Library
const config = require("./config.json"); // config file
const client = new Discord.Client(); //Client creation
client.on('ready', () => { //Bot launched
console.log(`Launched as a bot: ${client.user.tag}!`);
});
client.on('guildMemberAdd', member => {
console.log('User ' + member.user.username + 'has joined the server!')
var role = member.guild.roles.find('name', 'Members');
member.addRole(role)
});
client.login(config.BOT_TOKEN); //Connect to bot
答案 0 :(得分:0)
第一
.addRole()
在最新的 discord.js 版本中已被弃用。使用它向成员添加角色。
client.on('guildMemberAdd', member => {
console.log('User ' + member.user.username + 'has joined the server!')
let role = member.guild.roles.cache.find(x => x.name == 'yourrolenamehere');
member.roles.add(role)
});
第二
转到 discord developer portal 并从 Server Members Intent
启用 Privileged Gateway Intents
,以便跟踪成员的更改(加入、离开、更新等)。