Patched up the info command

This commit is contained in:
WatDuhHekBro 2020-08-05 22:11:11 -05:00
parent 48097b729d
commit 9816298f55
3 changed files with 16 additions and 5 deletions

5
package-lock.json generated
View File

@ -317,6 +317,11 @@
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg=="
},
"moment": {
"version": "2.27.0",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.27.0.tgz",
"integrity": "sha512-al0MUK7cpIcglMv3YF13qSgdAIqxHTO7brRtaz3DlSULbqfazqkc5kEjNrLDOM7fsjshoFIihnU8snrP7zUvhQ=="
},
"mute-stream": {
"version": "0.0.8",
"resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",

View File

@ -6,7 +6,8 @@
"dependencies": {
"chalk": "^4.1.0",
"discord.js": "^12.2.0",
"inquirer": "^7.3.1"
"inquirer": "^7.3.1",
"moment": "^2.27.0"
},
"devDependencies": {
"@types/inquirer": "^6.5.0",

View File

@ -90,12 +90,17 @@ export default new Command({
description: "Displays info about mentioned user.",
async run($: CommonLibrary): Promise<any>
{
const member = $.args[0] || $.args[0].mentions.members.last() || $.guild?.members.cache.get($.args[0]) || $.member;
// Transforms the User object into a GuildMember object of the current guild.
const member = $.guild?.members.resolve($.args[0]);
if(!member)
return $.channel.send("No member object was found by that user! Are you sure you used this command in a server?");
const roles = member.roles.cache
.sort((a: { position: number; }, b: { position: number; }) => b.position - a.position)
.map((role: { toString: () => any; }) => role.toString())
.slice(0, -1);
const userFlags = member.user.flags.toArray();
const userFlags = member.permissions.toArray();
const embed = new MessageEmbed()
.setThumbnail(member.user.displayAvatarURL({ dynamic: true, size: 512 }))
@ -104,11 +109,11 @@ export default new Command({
`** Username:** ${member.user.username}`,
`** Discriminator:** ${member.user.discriminator}`,
`** ID:** ${member.id}`,
`** Flags:** ${userFlags.length ? userFlags.map((flag: string | number) => flags[flag]).join(', ') : 'None'}`,
`** Flags:** ${userFlags.length ? userFlags.join(', ') : 'None'}`,
`** Avatar:** [Link to avatar](${member.user.displayAvatarURL({ dynamic: true })})`,
`** Time Created:** ${moment(member.user.createdTimestamp).format('LT')} ${moment(member.user.createdTimestamp).format('LL')} ${moment(member.user.createdTimestamp).fromNow()}`,
`** Status:** ${member.user.presence.status}`,
`** Game:** ${member.user.presence.game || 'Not playing a game.'}`
`** Game:** ${member.user.presence.activities || 'Not playing a game.'}`
])
.addField('Member', [
`** Highest Role:** ${member.roles.highest.id === $.guild?.id ? 'None' : member.roles.highest.name}`,