Files
xiao/commands/util/command-leaderboard.js
T
Daniel Odendahl Jr 128a87f40b Fix
2017-08-02 21:34:11 +00:00

36 lines
963 B
JavaScript

const Command = require('../../structures/Command');
module.exports = class CommandLeaderboardCommand extends Command {
constructor(client) {
super(client, {
name: 'command-leaderboard',
aliases: ['cmd-leaderboard', 'cmd-board'],
group: 'util',
memberName: 'command-leaderboard',
description: 'Responds with the most used commands.',
details: '**Note:** This only counts this session for this shard.',
guarded: true,
args: [
{
key: 'page',
prompt: 'Which page do you want to view?',
type: 'integer',
default: 1
}
]
});
}
run(msg, args) {
const { page } = args;
let i = 0;
const list = this.client.registry.commands
.filter(cmd => !isNaN(cmd.uses))
.sort((a, b) => b.uses - a.uses)
.map(cmd => `**${++i}.** ${cmd.name} (${cmd.uses} Uses)`)
.slice((page - 1) * 10, page * 10);
if (!list.length) return msg.say('This page does not exist.');
return msg.say(list.join('\n'));
}
};