我正在制作一个不和谐的机器人,它有一个命令,它会告诉你每个身体在不和谐服务器中从最大到最小邀请。这是我拥有的代码,但我不知道为什么它不起作用。
module.exports = {
name: 'invites',
description: 'invite command',
callback: (message) => {
const { guild } = message;
guild.fetchInvites().then((invites) => {
const inviteCounter = {};
invites.forEach((Invite) => {
const { uses, inviter } = Invite;
const { username, discriminator } = inviter;
const name = `${username}#${discriminator}`;
inviteCounter[name] = (inviteCounter[name] || 0) + uses;
});
let replyText = 'invites:';
for (const invite in inviteCounter) {
const count = inviteCounter[invite];
replyText += `\n${invite} has invited ${count} member(s)!`;
}
message.reply(replyText);
});
},
};
这是我的命令处理程序,我有 2 个我知道可以工作的其他命令,我一直在更改邀请命令,因为我无法让它工作。
const Discord = require('discord.js');
const client = new Discord.Client();
const prefix = '+';
const fs = require('fs');
client.commands = new Discord.Collection();
const commandFiles = fs.readdirSync('./commands/').filter(file => file.endsWith('.js'));
for(const file of commandFiles){
const command = require(`./commands/${file}`);
client.commands.set(command.name, command);
}
client.once('ready', () =>{
console.log('Baysides-utilities is online!');
});
client.on('message', message =>{
if(!message.content.startsWith(prefix) || message.author.bot) return;
const args = message.content.slice(prefix.length).split(/ +/);
const command = args.shift().toLowerCase();
if(command === 'ticket'){
client.commands.get('ticket').execute(message, args, client, fs);
}
if(command === 'invites'){
client.commands.get('invites');
}
if(command === 'grow'){
client.commands.get('grow').execute(message, args, client, fs);
}
});
client.login('I have it in the code just not showing it here');