const Discord = require("discord.js"); const coolPeople = require('../../resources/other/coolpeople.json') exports.run = (client, message, args) => { var user, guild, status, createdAt, avurl, tag, id; var nick, roles, presence, badges = ""; var coolPerson = false; var friendos = coolPeople.coolPeople; if(message.guild) { user = message.mentions.members.first(); if(!args[0]) { user = message.guild.members.cache.get(message.author.id) }; if (!user) { var users; users = client.searchForMembers(message.guild, args[0]); if (users.length > 1) return message.channel.send( "<:error:466995152976871434> Found multiple users! Please be more specific or mention the user instead." ); else if (users.length == 0) return message.channel.send( "<:error:466995152976871434> That user doesn't seem to exist. Try again!" ); user = users[0]; }; if(user.nickname) { nick = `\n• **Nickname:** ${user.nickname}`; }; for (var i = 0; i < friendos.length; i++) { if (user.user.id == friendos[i]) coolPerson = true; }; if(coolPerson == true) { badges += "🌟" } if(user.user.id == message.guild.ownerID) { badges += "<:owner:685703193694306331>" } if(user.user.bot) { badges += "<:bot:686489601678114859>" } if(badges.length > 0) { badges += "\n" } user.roles.cache.forEach((role) => { roles = roles + role.name + "`, `" }); roles = roles.substr(0, roles.length -4); guild = `\n• **Roles:** \`${roles}\`\n• **Server join date:** ${user.joinedAt}`; id = user.user.id; tag = user.user.tag; colour = user.displayHexColor; avurl = user.user.avatarURL({format: "png", dynamic: true, size: 2048}); createdAt = user.user.createdAt; } else { id = user.id; tag = user.tag; colour = ["#ff9d68", "#ff97cb", "#d789ff", "#74FFFF"].random(); avurl = user.avatarURL({format: "png", dynamic: true, size: 2048}); createdAt = user.createdAt; }; if(user.presence.status == "online") { status = `online <:status_online:685462758023626762>` }; if(user.presence.status == "idle") { status = `idle <:status_idle:685462771529154561>` }; if(user.presence.status == "dnd") { status = `do not disturb <:status_dnd:685462782963220495>` }; if(user.presence.status == "offline") { status = `offline <:status_offline:685462758229016633>` }; if(user.presence.activities[0]) { presence = "\n• **Presence:** "; if(user.presence.activities[0].type == "PLAYING") { presence += `Playing ${user.presence.activities[0].name}`; }; if(user.presence.activities[0].type == "STREAMING") { presence += `Streaming ${user.presence.activities[0].name}`; }; if(user.presence.activities[0].type == "CUSTOM_STATUS") { presence += `${user.presence.activities[0].state}`; }; }; embed = new Discord.MessageEmbed(); embed.setTitle(tag); embed.setThumbnail(avurl); embed.setDescription(`${badges}• **ID:** ${id}${nick}\n• **Status:** ${status}${presence}${guild}\n• **Account created:** ${createdAt}`) embed.setColor(colour); message.channel.send(embed); }; exports.conf = { enabled: true, guildOnly: false, aliases: ["uinfo", "user"], permLevel: "User", requiredPerms: ["EMBED_LINKS"] }; exports.help = { name: "userinfo", category: "Utility", description: "Displays some useful information about the specified user.", usage: "userinfo " };