mirror of
https://github.com/SrIzan10/Recluse-Bot.git
synced 2026-05-01 10:55:24 +00:00
Create serverlist.js
This commit is contained in:
131
commands/owner/serverlist.js
Normal file
131
commands/owner/serverlist.js
Normal file
@@ -0,0 +1,131 @@
|
||||
const Discord = require("discord.js");
|
||||
const ownerid = "519666024220721152";
|
||||
|
||||
module.exports = {
|
||||
name: "serverlist",
|
||||
aliases: ["slt"],
|
||||
category: "premium",
|
||||
description: "Displays the list of Servers!",
|
||||
usage: " ",
|
||||
|
||||
run: async (bot, message, args) => {
|
||||
if (message.author.id == ownerid) {
|
||||
if (!message.guild.me.hasPermission("ADMINISTRATOR"))
|
||||
return message.channel
|
||||
.send("I Dont Have Permissions")
|
||||
.then(msg => msg.delete({ timeout: 5000 }));
|
||||
|
||||
let i0 = 0;
|
||||
let i1 = 10;
|
||||
let page = 1;
|
||||
|
||||
let description =
|
||||
`Total Servers - ${bot.guilds.cache.size}\n\n` +
|
||||
bot.guilds.cache
|
||||
.sort((a, b) => b.memberCount - a.memberCount)
|
||||
.map(r => r)
|
||||
.map((r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} Members\nID - ${r.id}`)
|
||||
.slice(0, 10)
|
||||
.join("\n\n");
|
||||
|
||||
let embed = new Discord.MessageEmbed()
|
||||
.setAuthor(bot.user.tag, bot.user.displayAvatarURL({dynamic : true}))
|
||||
|
||||
.setColor("00FFFF")
|
||||
.setFooter(`Page - ${page}/${Math.ceil(bot.guilds.cache.size / 10)}`)
|
||||
.setDescription(description);
|
||||
|
||||
let msg = await message.channel.send(embed);
|
||||
|
||||
await msg.react("⬅");
|
||||
await msg.react("➡");
|
||||
await msg.react("❌");
|
||||
|
||||
let collector = msg.createReactionCollector(
|
||||
(reaction, user) => user.id === message.author.id
|
||||
);
|
||||
|
||||
collector.on("collect", async (reaction, user) => {
|
||||
if (reaction._emoji.name === "⬅") {
|
||||
// Updates variables
|
||||
i0 = i0 - 10;
|
||||
i1 = i1 - 10;
|
||||
page = page - 1;
|
||||
|
||||
// if there is no guild to display, delete the message
|
||||
if (i0 + 1 < 0) {
|
||||
console.log(i0)
|
||||
return msg.delete();
|
||||
}
|
||||
if (!i0 || !i1) {
|
||||
return msg.delete();
|
||||
}
|
||||
|
||||
description =
|
||||
`Total Servers - ${bot.guilds.cache.size}\n\n` +
|
||||
bot.guilds.cache
|
||||
.sort((a, b) => b.memberCount - a.memberCount)
|
||||
.map(r => r)
|
||||
.map(
|
||||
(r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} Members\nID - ${r.id}`)
|
||||
.slice(i0, i1)
|
||||
.join("\n\n");
|
||||
|
||||
// Update the embed with new informations
|
||||
embed
|
||||
.setFooter(
|
||||
`Page - ${page}/${Math.round(bot.guilds.cache.size / 10 + 1)}`
|
||||
)
|
||||
.setDescription(description);
|
||||
|
||||
// Edit the message
|
||||
msg.edit(embed);
|
||||
}
|
||||
|
||||
if (reaction._emoji.name === "➡") {
|
||||
// Updates variables
|
||||
i0 = i0 + 10;
|
||||
i1 = i1 + 10;
|
||||
page = page + 1;
|
||||
|
||||
// if there is no guild to display, delete the message
|
||||
if (i1 > bot.guilds.cache.size + 10) {
|
||||
return msg.delete();
|
||||
}
|
||||
if (!i0 || !i1) {
|
||||
return msg.delete();
|
||||
}
|
||||
|
||||
description =
|
||||
`Total Servers - ${bot.guilds.cache.size}\n\n` +
|
||||
bot.guilds.cache
|
||||
.sort((a, b) => b.memberCount - a.memberCount)
|
||||
.map(r => r)
|
||||
.map(
|
||||
(r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} Members\nID - ${r.id}`)
|
||||
.slice(i0, i1)
|
||||
.join("\n\n");
|
||||
|
||||
// Update the embed with new informations
|
||||
embed
|
||||
.setFooter(
|
||||
`Page - ${page}/${Math.round(bot.guilds.cache.size / 10 + 1)}`
|
||||
)
|
||||
.setDescription(description);
|
||||
|
||||
// Edit the message
|
||||
msg.edit(embed);
|
||||
}
|
||||
|
||||
if (reaction._emoji.name === "❌") {
|
||||
return msg.delete();
|
||||
}
|
||||
|
||||
// Remove the reaction when the user react to the message
|
||||
await reaction.users.remove(message.author.id);
|
||||
});
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user