javascript - 您如何检查机器人是否被 ping 通?

标签 javascript discord discord.js bots

我正在创建一个“杀死”人的命令。我希望机器人返回消息“哈!你以为!@Author 死了!”如果他们 ping 机器人。 (我如何让机器人查看它是否被 ping 过?)答案已更新并且现在可以正常工作。

const Discord = require('discord.js');
const bot = new Discord.Client();

module.exports = {
    name: 'kill',
    description: 'kills',
    execute(message, args, bot) {
      message.delete({ timeout: 30000 });
  
      if (message.content.startsWith('-kill')) {
        const target = message.mentions.users.first();
        const memberTarget = message.guild.members.cache.get(target.id);
  
        if (message.mentions.has(bot.user)) {
          return message.channel.send(`HA! SIKE! <@${message.author.id}> died.`);
        }
        message.channel.send(`<@${memberTarget.user.id}> has died!`);
        console.log(`<@${memberTarget.user.id} died.`);
      }
    },
  };

最佳答案

您可以使用 message.mentions.has(bot.user) 检查是否提到了机器人。此外,请确保将机器人传递给 execute() 方法,而不是实例化一个新方法:

module.exports = {
  name: 'kill',
  description: 'kills',
  execute(message, args, bot) {
    message.delete({ timeout: 30000 });

    if (message.content.startsWith('!kill')) {
      const target = message.mentions.users.first();
      const memberTarget = message.guild.members.cache.get(target.id);

      if (message.mentions.has(bot.user)) {
        return message.channel.send(`HA! SIKE! <@${message.author.id}> died.`);
      }
      message.channel.send(`<@${memberTarget.user.id}> has died!`);
      console.log(`<@${memberTarget.user.id} died.`);
    }
  },
};

然后在您的主 JS 文件中传递 bot 对象:

// ...
client.commands.get('kill').execute(message, args, bot) 
// ...

enter image description here enter image description here

关于javascript - 您如何检查机器人是否被 ping 通?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65942391/

相关文章:

javascript - JavaScript 表单提交和包含提交按钮的表单之间的区别

javascript - javascript中输入类型文件将图像从客户端上传到服务器的替代方法是什么?

javascript - 如何获取特定 Discord 角色的名称?

node.js - Rich Embed 中的 Discord.js 标签 channel

node.js - Discord.js v14 点击按钮时交互失败,但按钮仍然有效

javascript - 具有缩放和滑动器的 React-Native 图像查看器

javascript - 如何在 <md-radio-group> 中使用输入字段作为自定义条目?

javascript - discord.js v12 检查用户是否正在流式传输

javascript - 明文头像搜索

java - 一般 JNA 问题(Discord Game SDK (C) -> Java)