如何只允许某些用户使用命令

时间:2020-04-07 17:25:17

标签: bots discord discord.js

我正在尝试在Discord.JS V12机器人上执行一个命令,该命令只能由某些用户使用,以防止滥用。我将如何做到这一点,使只有少数用户可以访问该命令。

基本上是命令白名单。

谢谢:]

3 个答案:

答案 0 :(得分:0)

您必须在命令开头添加一行,例如:

client.on("message", message =>{
    if(!message.content.startsWith(prefix)) return;
    if(!message.author.hasPermission("ADMINSTRATOR")) return message.reply("You do not have the permissions.");
    if(message.content.startsWith(`${prefix}help`)){
        message.channel.send("No help yet.");
    };
};

在这里,if(!message.author.hasPermission("ADMINSTRATOR")) return;是限制所必需的行... 以同样的方式,大多数权限都是这样引用的。管理邮件变为“ MANAGE_MESSAGES”。等等

我希望这对您有帮助...

答案 1 :(得分:0)

如果您希望它使用以下用户 ID:

client.on("message", message =>{
    if(message.author.id === "User Id"){
    if(message.content.startsWith(`${prefix}help`)){
        message.channel.send("No help yet.");
    };
  };
};

如果您希望使用多个用户 ID

client.on("message", message =>{
        if(message.author.id === "User Id" || message.author.id === "Second User id"){
        if(message.content.startsWith(`${prefix}help`)){
            message.channel.send("No help yet.");
        };
      };
    };

您也可以将所有用户 ID 放在一个常量中,并在命令中引用它们

答案 2 :(得分:-1)

您可以添加权限示例:您可以设置管理员权限以使用该命令,也可以设置角色以使用该命令!