【问题标题】:Check if command is ran in certain channel检查命令是否在某个通道中运行
【发布时间】:2018-08-28 17:30:01
【问题描述】:

我目前有这个作为我的命令:

bot.on('message', function (message) {
  if (message.content == '!register') {
    message.member.send("Registered!");
    let memberRole = message.member.guild.roles.find("name", "Verified");
    message.member.addRole(memberRole);
  }
});

我想要它,所以这个命令只能在称为注册的文本频道中运行(如果需要,我有频道 ID)。

【问题讨论】:

    标签: discord discord.js


    【解决方案1】:

    如果您只有一个名为registration 的文本通道,则代码如下:

    bot.on('message', function (message) {
      if (message.content == '!register' && message.channel.name.toLowerCase() === 'registration') {
        message.member.send("Registered!");
        let memberRole = message.member.guild.roles.find("name", "Verified");
        message.member.addRole(memberRole);
      }
    });
    

    如果您有两个名为 registration 的文本频道,我会检查频道的 ID。这可以通过以下代码完成:

    bot.on('message', function (message) {
      if (message.content == '!register' && message.channel.id === 'YOUR CHANNEL ID') {
        message.member.send("Registered!");
        let memberRole = message.member.guild.roles.find("name", "Verified");
        message.member.addRole(memberRole);
      }
    });
    

    顺便说一句,您不必使用message.member 来接收guild 对象。你可以简单地做message.guild

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 2022-08-14
      • 1970-01-01
      • 2015-07-12
      • 1970-01-01
      相关资源
      最近更新 更多