mirror of
https://github.com/musix-org/musix-oss
synced 2024-12-22 21:13:18 +00:00
cmduses
This commit is contained in:
parent
f6d82709be
commit
b83ee14cba
28
commands/cmduses.js
Normal file
28
commands/cmduses.js
Normal file
@ -0,0 +1,28 @@
|
||||
module.exports = {
|
||||
name: 'cmduses',
|
||||
usage: '',
|
||||
description: 'Command usage statistics',
|
||||
uses: 0,
|
||||
async execute(msg, args, client, Discord) {
|
||||
const cmduses = [];
|
||||
client.commands.forEach((value, key) => {
|
||||
cmduses.push([key, value.uses]);
|
||||
});
|
||||
cmduses.sort((a, b) => {
|
||||
return b[1] - a[1];
|
||||
});
|
||||
const cmdnamelength = Math.max(...cmduses.map(x => x[0].length)) + 4;
|
||||
const numberlength = Math.max(...cmduses.map(x => x[1].toString().length), 4);
|
||||
const markdownrows = ['Command' + ' '.repeat(cmdnamelength - 'command'.length) + ' '.repeat(numberlength - 'uses'.length) + 'Uses'];
|
||||
cmduses.forEach(x => {
|
||||
if (x[1] > 0) markdownrows.push(x[0] + '.'.repeat(cmdnamelength - x[0].length) + ' '.repeat(numberlength - x[1].toString().length) + x[1].toString());
|
||||
});
|
||||
const embed = new Discord.RichEmbed();
|
||||
embed
|
||||
.setTitle('Musix Command Usage During Current Uptime')
|
||||
.setDescription('```ml\n' + markdownrows.join('\n') + '\n```')
|
||||
.setFooter('These statistics are from the current uptime.')
|
||||
.setColor('#b50002');
|
||||
msg.channel.send(embed);
|
||||
},
|
||||
};
|
@ -2,6 +2,7 @@ module.exports = function (message, args, client, Discord, prefix, command) {
|
||||
const permissions = message.channel.permissionsFor(message.client.user);
|
||||
if (!permissions.has('EMBED_LINKS')) return message.channel.send(':x: I cannot send embeds (Embed links), make sure I have the proper permissions!');
|
||||
try {
|
||||
command.uses++;
|
||||
command.execute(message, args, client, Discord, prefix);
|
||||
} catch (error) {
|
||||
message.reply(`:x: there was an error trying to execute that command! Please contact support with \`${prefix}bug\`!`);
|
||||
|
1
index.js
1
index.js
@ -41,6 +41,7 @@ client.config = require('./config/config.js');
|
||||
const commandFiles = fs.readdirSync('./commands/').filter(f => f.endsWith('.js'));
|
||||
for (const file of commandFiles) {
|
||||
const command = require(`./commands/${file}`);
|
||||
command.uses = 0;
|
||||
client.commands.set(command.name, command);
|
||||
client.commandAliases.set(command.alias, command);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user