是否有另一种创建角色的方法,而不是手动获取公会 ID 来创建角色?

时间:2021-02-06 14:12:47

标签: discord.js

我想知道是否有人可以帮助我使用 discord.js v12 中的命令创建角色。通过使用这个命令,我已经能够扮演我想要的角色:

module.exports = {
    name: 'croles',
    description: 'creates a role',
    execute(client, message, args, Discord) {
        const guildId = ('guild's ID goes in here');
        const roleName = args.join(" ");
        const guild = client.guilds.cache.get(guildId);
        
        if(message.member.roles.cache.find(r => r.name === "mod")){

            guild.roles.create({
                data: {
                name: roleName ,
                color: '#FFFF00',
              },
                reason: 'create a role',
              })
                .catch(console.error);
                message.channel.send( '`'+ roleName + '`' + ' ' +'role have been created.');
        
        } else {

                message.channel.send('u do not have admin roles.');


        }
    }
}

通过此代码,我目前正在手动获取服务器的 ID 并将其放入“guildId”中,以便我可以创建角色。目前此方法有效,但添加公会ID需要时间。我知道我可以使用“或”函数,但我目前正在一台服务器上测试它。

1 个答案:

答案 0 :(得分:0)

可以通过消息变量获取公会。 std::string,它将返回发送消息的公会,然后您可以通过附加 message.guild 来获取它的 ID。

示例:

.id

另一件事,从您的执行中删除“Discord”变量,只需在您需要的文件中重新要求它。