summaryrefslogtreecommitdiff
path: root/src/commands/server/roleinfo.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/commands/server/roleinfo.ts')
-rw-r--r--src/commands/server/roleinfo.ts61
1 files changed, 61 insertions, 0 deletions
diff --git a/src/commands/server/roleinfo.ts b/src/commands/server/roleinfo.ts
new file mode 100644
index 0000000..3fc3814
--- /dev/null
+++ b/src/commands/server/roleinfo.ts
@@ -0,0 +1,61 @@
+import { Command, CommandoMessage } from 'discord.js-commando';
+import emoji from 'emoji-random'
+import { MessageEmbed } from 'discord.js';
+
+module.exports = class RoleInfoServer extends Command {
+ constructor(client) {
+ super(client, {
+ name: 'roleinfo',
+ aliases: [
+ 'role-info'
+ ],
+ group: 'fun',
+ memberName: 'roleinfo',
+ description: 'Gets information on a specified role.',
+ examples: ['uwu!roleinfo @Role'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ guildOnly: true,
+ args: [
+ {
+ key: 'rRole',
+ prompt: 'What role would you like to get information on?',
+ type: 'role'
+ }
+ ]
+ });
+ }
+ run(msg: CommandoMessage, { rRole }) {
+ let emb = new MessageEmbed()
+ .setColor(0xFFCC4D)
+ .setTitle(`${rRole.name} (${rRole.id})`)
+ .setTimestamp(rRole.createdAt)
+ .addFields([
+ {
+ name: '🔢 Position',
+ value: `${rRole.position + 1} (raw position: ${rRole.rawPosition})`
+ },
+ {
+ name: '**@** Mentionable',
+ value: rRole.mentionable ? 'Yes' : 'No'
+ },
+ {
+ name: "💡 Display separately",
+ value: rRole.hoist ? "Yes" : "No"
+ },
+ {
+ name: "👥 Members",
+ value: rRole.members.size
+ },
+ {
+ name: "🔍 Color",
+ value: `Use ${msg.anyUsage(`color ${rRole.hexColor}`)}`
+ }
+ ])
+ msg.say(emb)
+ }
+}; \ No newline at end of file