我想知道如何在一个人加入Discord的服务器后自动给予他一个角色。我看的教程没有很好地解释这个问题。
以下是我迄今为止的一个片段:
const fs = require('node:fs')
const path = require('node:path')
const { Client, Collection, GatewayIntentBits } = require('discord.js')
const { token } = require('./config.json')
const client = new Client({ intents: [GatewayIntentBits.Guilds], partials: ["MESSAGE", "CHANNEL", "REACTION"] })
client.commands = new Collection()
const commandsPath = path.join(__dirname, 'commands')
const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js'))
client.on('guildMemberAdd', guildMember => {
guildMember.roles.add('ROLE ID')
guildMember.guild.channels.cache.get('CHANNEL ID').send(`<@${guildMember.user.id}> joined as <@ROLE ID>!`)
})
有人知道我该怎么做吗?
谢谢!
我期待一个自动的Discord机器人,让某人在加入时扮演一个角色,但我什么也没有得到。似乎没有任何回应。
2条答案
按热度按时间k2arahey1#
Discord已经将监听成员加入事件变成了一个特权意图,所以你必须添加它:
请参阅指南中的此页。
o7jaxewo2#
原来我需要先缓存消息。我也改变了意图。