我正在为服务器创建一个有趣的机器人,我想要一个垃圾邮件命令,要使用该命令,您需要先输入要发送垃圾邮件的次数,然后再发送一条消息。但是目前它不会运行,也不会给我任何错误。
function repeat(func, times) {
func();
--times && repeat(func, times);
}
exports.run = (client, message, args) => {
if (!args[0] || isNaN(args[0]) || !args[2]) return;
repeat(function(){
message.channel.send(args.slice(1).join(' ')).catch(console.log)
}, args[0]);
}
我希望它会将垃圾邮件数量与垃圾邮件数量一样多。 例如:
ME:!spam 3 Hi
BOT:您好
BOT:您好
BOT:您好
答案 0 :(得分:0)
尝试使用for。
Elasmobranchs
答案 1 :(得分:0)
exports.run = (client, message, args) => {
const max = parseInt(args.shift()); // takes the first element of args and converts it to a Number
if (isNaN(max)) return message.channel.send('You need to enter a valid Number'); // check if its really a number
if(!args[0]) return message.channel.send('You need to enter a text to send'); // check if spam text is there
// Add a check to make s sure !spam 100 text is not possible.
for (let i = 0; i < max; i++) { // For - Loop
message.channel.send(args.join('')).catch(console.log); // Send it
}
}