Без реакций в ЛС

This commit is contained in:
JonnyBro 2022-02-20 16:47:58 +05:00
parent f5091f6d67
commit 2d58660e0f

View file

@ -18,7 +18,7 @@ class ServersList extends Command {
} }
async run(message, args, data) { async run(message, args, data) {
if (message.channel.type !== "DM") message.delete(); if (message.deletable) message.delete();
let i0 = 0, let i0 = 0,
i1 = 10, i1 = 10,
@ -50,76 +50,78 @@ class ServersList extends Command {
embeds: [embed] embeds: [embed]
}); });
await msg.react("⬅"); if (message.channel.type !== "DM") {
await msg.react("➡"); await msg.react("⬅");
await msg.react("❌"); await msg.react("➡");
await msg.react("❌");
const filter = (reaction, user) => user.id === message.author.id; const filter = (reaction, user) => user.id === message.author.id;
const collector = msg.createReactionCollector({ const collector = msg.createReactionCollector({
filter, filter,
time: 30000 time: 30000
}); });
collector.on("collect", async (reaction) => { collector.on("collect", async (reaction) => {
if (message.channel.type === "DM") return; if (message.channel.type === "DM") return;
if (reaction._emoji.name === "⬅") { if (reaction._emoji.name === "⬅") {
// Updates variables // Updates variables
i0 = i0 - 10; i0 = i0 - 10;
i1 = i1 - 10; i1 = i1 - 10;
page = page - 1; page = page - 1;
// if there is no guild to display, delete the message // if there is no guild to display, delete the message
if (i0 < 0) return msg.delete(); if (i0 < 0) return msg.delete();
if (!i0 || !i1) return msg.delete(); if (!i0 || !i1) return msg.delete();
description = `${message.translate("common:SERVERS")}: ${this.client.guilds.cache.size}\n\n` + description = `${message.translate("common:SERVERS")}: ${this.client.guilds.cache.size}\n\n` +
this.client.guilds.cache.sort((a, b) => b.memberCount - a.memberCount).map((r) => r) this.client.guilds.cache.sort((a, b) => b.memberCount - a.memberCount).map((r) => r)
.map((r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} ${message.translate("common:MEMBERS")}`) .map((r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} ${message.translate("common:MEMBERS")}`)
.slice(i0, i1) .slice(i0, i1)
.join("\n"); .join("\n");
// Update the embed with new informations // Update the embed with new informations
embed.setTitle(`${message.translate("common:PAGE")}: ${page}/${Math.round(this.client.guilds.cache.size/10)}`) embed.setTitle(`${message.translate("common:PAGE")}: ${page}/${Math.round(this.client.guilds.cache.size/10)}`)
.setDescription(description); .setDescription(description);
// Edit the message // Edit the message
msg.edit({ msg.edit({
embeds: [embed] embeds: [embed]
}); });
} }
if (reaction._emoji.name === "➡") { if (reaction._emoji.name === "➡") {
// Updates variables // Updates variables
i0 = i0 + 10; i0 = i0 + 10;
i1 = i1 + 10; i1 = i1 + 10;
page = page + 1; page = page + 1;
// if there is no guild to display, delete the message // if there is no guild to display, delete the message
if (i1 > this.client.guilds.cache.size + 10) return msg.delete(); if (i1 > this.client.guilds.cache.size + 10) return msg.delete();
if (!i0 || !i1) return msg.delete(); if (!i0 || !i1) return msg.delete();
description = `${message.translate("common:SERVERS")}: ${this.client.guilds.cache.size}\n\n` + description = `${message.translate("common:SERVERS")}: ${this.client.guilds.cache.size}\n\n` +
this.client.guilds.cache.sort((a, b) => b.memberCount - a.memberCount).map((r) => r) this.client.guilds.cache.sort((a, b) => b.memberCount - a.memberCount).map((r) => r)
.map((r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} ${message.translate("common:MEMBERS").toLowerCase()}`) .map((r, i) => `**${i + 1}** - ${r.name} | ${r.memberCount} ${message.translate("common:MEMBERS").toLowerCase()}`)
.slice(i0, i1) .slice(i0, i1)
.join("\n"); .join("\n");
// Update the embed with new informations // Update the embed with new informations
embed.setTitle(`${message.translate("common:PAGE")}: ${page}/${Math.round(this.client.guilds.cache.size/10)}`) embed.setTitle(`${message.translate("common:PAGE")}: ${page}/${Math.round(this.client.guilds.cache.size/10)}`)
.setDescription(description); .setDescription(description);
// Edit the message // Edit the message
msg.edit({ msg.edit({
embeds: [embed] embeds: [embed]
}); });
} }
if (reaction._emoji.name === "❌") return msg.delete(); if (reaction._emoji.name === "❌") return msg.delete();
// Remove the reaction when the user react to the message // Remove the reaction when the user react to the message
await reaction.users.remove(message.author.id); await reaction.users.remove(message.author.id);
}); });
}
} }
} }