我如何在Discord.js中为人分配角色

问题描述 投票:0回答:2

我正在尝试制作一个分配人员角色的不和谐机器人。但是控制台说,每当我尝试测试未定义该成员的代码时,控制台都会失败。我是J.S.的新手所以可以给我发送一些我可以尝试的代码吗?

discord.js
2个回答
0
投票

没有定义member变量。您需要定义它才能使用它。您可以从msg对象获取发送消息的人的GuildMember实例。如果查看Message的文档,则可以看到它具有名为Message的属性。尝试从member对象定义member

msg

0
投票

这里有一些代码希望对您有所帮助。

检查角色是否存在:

const member = msg.member;

角色变量(使后续步骤更容易):

if(!message.guild.roles.find(r => r.name === '{Role Name}')){
  message.channel.sendMessage("Role not found.")};

检查他们是否已经担任该角色:

let role = message.guild.roles.find(r => r.name === '{Role Name}')

添加角色:

if (message.member.roles.find(role)) {
     return message.channel.sendMessage('You already have role ' + role.name)     

说他们现在具有角色(可选):

message.member.addRole(role);

再次,我真的希望这有助于为成员添加角色!

© www.soinside.com 2019 - 2024. All rights reserved.