Skip to content

Commit 60d5baf

Browse files
authored
Merge pull request #67 from lmpham1/minh-develop
Added clean command to remove bot's messages
2 parents 16a4a70 + 3351b90 commit 60d5baf

File tree

3 files changed

+39
-2
lines changed

3 files changed

+39
-2
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "eartensifier",
3-
"version": "1.7.0",
3+
"version": "1.8.0",
44
"description": "Discord music bot written in javascript using discord.js https://eartensifier.net",
55
"main": "./src/index.js",
66
"dependencies": {

src/commands/bot/clean.js

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
const Command = require('../../structures/Command');
2+
3+
module.exports = class Clean extends Command {
4+
constructor(client) {
5+
super(client, {
6+
name: 'clean',
7+
description: 'Bulk deletes X amount of messages sent by the bot (deletes the last 100 messages by default).',
8+
usage: '<number of message>',
9+
cooldown: 5
10+
});
11+
}
12+
async run(client, message, args) {
13+
if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send('You must have the `Manage Messages` permission to use this command.');
14+
15+
let messagesToDelete = 0;
16+
17+
if (args[0]) {
18+
messagesToDelete = parseInt(args[0])
19+
if (isNaN(messagesToDelete) || messagesToDelete < 1) {
20+
return message.channel.send(`Invalid argument, argument must be a number.\nCorrect Usage: \`${client.settings.prefix}clean <number messages>\``);
21+
}
22+
}
23+
24+
if (message.channel.type == 'text') {
25+
await message.channel.messages.fetch({ limit: 50 }).then(messages => {
26+
let botMessages = messages.filter(msg => msg.author == message.guild.me.id).array();
27+
if (messagesToDelete > 0) {
28+
botMessages.splice(messagesToDelete);
29+
}
30+
message.channel.bulkDelete(botMessages);
31+
}).catch(err => {
32+
client.log('Error while doing bulk delete');
33+
client.log(err);
34+
});
35+
}
36+
}
37+
};

src/settings.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module.exports = {
22
'prefix': process.env.PREFIX,
3-
'version': '1.7.0',
3+
'version': '1.8.0',
44
'server': 'https://discord.gg/xKgKMAP',
55
'voiceLeave': '60000',
66
'voteCooldown': 43200000,

0 commit comments

Comments
 (0)