首页 > 解决方案 > 如何在此代码中进行踢、禁止和清除命令?

问题描述

我需要知道如何输入一些审核命令,例如 !ban、!kick 和 !clear。我会给你我需要的代码,因为我是编码新手,所以如果可能的话,你能给我:

仅供参考:我正在用 node.js 编写一个不和谐的机器人。我已经研究了一个星期,请帮助我!

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

const TOKEN = process.env.TOKEN;

bot.login('TOKEN');

bot.on('ready', () => {
  console.info(`Logged in as ${bot.user.tag}!`);
});

bot.on('message', message => {
    if (message.content === '!ping') {
        message.channel.send('Pong.');
    }
});

bot.on('message', message => {
    if (message.content === '!getpizza') {
        message.channel.send('Welcome to Lynks Pizza!!! Heres your pizza and have a nice day!!!');
    }
});

bot.on('message', message => {
    if (message.content === '!shutup') {
        message.channel.send('Okay, I am sorry.');
    }
});

bot.on('message', message => {
    if (message.content === '!playdead') {
        message.channel.send(':dizzy_face:');
    }
});

bot.on('message', message => {
    if (message.content === '!user-info') {
        message.channel.send(`Your username: ${message.author.username}\nYour ID: ${message.author.id}`);
    }
});

bot.on('message', message => {
    if (message.content === '!server-info') {
        message.channel.send(`Server name: ${message.guild.name}\nTotal members: ${message.guild.memberCount}`);
    }
});

标签: node.jsdiscorddiscord.js

解决方案


如果您只想将整个代码放在一个文件中(而不是在命令处理程序中),您可以这样做

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

const TOKEN = process.env.TOKEN;

bot.login('TOKEN');

bot.on('ready', () => {
  console.info(`Logged in as ${bot.user.tag}!`);
});

bot.on('message', message => {
    if (message.content === '!ping') {
        message.channel.send('Pong.');

    if (message.content === '!getpizza') {
        message.channel.send('Welcome to Lynks Pizza!!! Heres your pizza and have a nice day!!!');
    }


    if (message.content === '!shutup') {
        message.channel.send('Okay, I am sorry.');
    }


    if (message.content === '!playdead') {
        message.channel.send(':dizzy_face:');
    }



    if (message.content === '!user-info') {
        message.channel.send(`Your username: ${message.author.username}\nYour ID: ${message.author.id}`);
    }



    if (message.content === '!server-info') {
        message.channel.send(`Server name: ${message.guild.name}\nTotal members: ${message.guild.memberCount}`);
    }
});

踢和禁令看起来像

if (message.content.startsWith("!kick ")) {
    if (message.mentions.members.first()) {
        message.mentions.members.first.kick().then((member) => {
            message.channel.send( member.displayName + " has been successfully kicked.");
        }).catch(() => {
            message.channel.send("I do not have permissions to do this");
        });
    }

 if (message.content.startsWith("!ban ")) {
   if (!message.member.hasPermission("MANAGE_MESSAGES")) return;
    if (message.mentions.members.first()) {
        message.mentions.members.first.ban().then((member) => {
            message.channel.send(member.displayName + " has been successfully banned.");
        }).catch(() => {
            message.channel.send("I do not have permissions to do this");
        });
    }
}

因此,您可以将其添加到您的代码中:

bot.on('message', message => {
    if (message.content.startsWith("!kick ")) {
        if (message.mentions.members.first()) {
            message.mentions.members.first.kick().then((member) => {
                message.channel.send( member.displayName + " has been successfully kicked.");
            }).catch(() => {
                message.channel.send("I do not have permissions to do this");
            });
        }
});

bot.on('message', message => {
    if (message.content.startsWith("!ban ")) {
      if (!message.member.hasPermission("MANAGE_MESSAGES")) return;
       if (message.mentions.members.first()) {
           message.mentions.members.first.ban().then((member) => {
               message.channel.send(member.displayName + " has been successfully banned.");
           }).catch(() => {
               message.channel.send("I do not have permissions to do this");
        });
    }
}
});

推荐阅读