You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Natsuki/commands/misc/info.js

35 lines
2.3 KiB

const Discord = require("discord.js");
const moment = require('moment');
const os = require('os');
const UserData = require('../../models/user');
module.exports = {
name: "info",
aliases: ["i", "botinfo", "bot"],
help: "There's not really anything to help with here! Just use `{{p}}info` to learn more about me!",
meta: {
category: 'Misc',
description: "Get info about me, my creators, and my status.",
syntax: '`info`',
extra: null
},
async execute(message, msg, args, cmd, prefix, mention, client) {
let botData = await require('../../models/bot').findOne({finder: 'lel'});
let user = await UserData.findOne({uid: message.author.id});
return message.channel.send({embeds: [new Discord.MessageEmbed()
.setAuthor("About Me!", client.users.cache.get(client.developers[Math.floor(Math.random() * client.developers.length)]).avatarURL())
.setThumbnail(client.user.avatarURL({size: 1024}))
.setDescription(`I am created by WubzyGD#8766 and Slushie#1234 - a pair conveniently known as NatsukiDev - in JavaScript/Discord.js!\n\nI'm a powerful all-purpose bot with everything you could want or need, and I have my own set of unique skills that you won't find anywhere else ^^`)
.addField("Presence", `I'm currently in **${client.guilds.cache.size}** servers, and I'm watching over approximately **${client.users.cache.size}** people!`)
.addField("Restarts", `${botData.restarts}`, true)
.addField("Commands Executed", `${botData.commands}${user ? `\nYou: **${user.commands}** | **${Math.floor((user.commands / botData.commands) * 100)}%**` : ''}`, true)
.addField("Last Restart", moment(botData.lastRestart).fromNow(), true)
.addField("Mem", `\`${(process.memoryUsage().heapUsed / 1024 / 1024).toFixed(2)}MB\` heap of \`${(process.memoryUsage().heapTotal / 1024 / 1024).toFixed(2)}MB\` allocated. | **${Math.floor((process.memoryUsage().heapUsed / process.memoryUsage().heapTotal) * 100)}%**\nTotal RAM: \`${(os.totalmem() / 1024 / 1024 / 1024).toFixed(2)}GB\` | Free RAM: \`${(os.freemem() / 1024 / 1024 / 1024).toFixed(2)}GB\``, true)
.setColor("c375f0")
.setFooter("Natsuki")
.setTimestamp()
]});
}
};