mirror of
https://github.com/JonnyBro/JaBa.git
synced 2024-11-25 14:44:58 +05:00
57 lines
No EOL
2.1 KiB
JavaScript
57 lines
No EOL
2.1 KiB
JavaScript
const Discord = require("discord.js");
|
||
|
||
module.exports = class {
|
||
constructor(client) {
|
||
this.client = client;
|
||
}
|
||
|
||
async run(guild) {
|
||
if (this.client.config.proMode) {
|
||
if ((!this.client.config.proUsers.includes(guild.ownerId) || this.guilds.filter((g) => g.ownerId === guild.ownerId) > 1) && guild.ownerId !== this.client.config.owner.id) {
|
||
this.client.logger.log(`${guild.ownerId} tried to invite JaBa on its server.`);
|
||
return guild.leave();
|
||
}
|
||
}
|
||
|
||
const messageOptions = {};
|
||
|
||
const userData = await this.client.findOrCreateUser({
|
||
id: guild.ownerId
|
||
});
|
||
if (!userData.achievements.invite.achieved) {
|
||
userData.achievements.invite.progress.now += 1;
|
||
userData.achievements.invite.achieved = true;
|
||
messageOptions.files = [{
|
||
name: "unlocked.png",
|
||
attachment: "./assets/img/achievements/achievement_unlocked7.png"
|
||
}];
|
||
userData.markModified("achievements.invite");
|
||
await userData.save();
|
||
}
|
||
|
||
const thanksEmbed = new Discord.MessageEmbed()
|
||
.setAuthor({
|
||
name: "Спасибо что добавили меня на свой сервер!"
|
||
})
|
||
.setDescription(`Для настроек используйте \`${this.client.config.prefix}help\` и посмотрите на административные команды!\nЧтобы изменить язык используйте \`${this.client.config.prefix}setlang [язык]\`.`)
|
||
.setColor(this.client.config.embed.color)
|
||
.setFooter({
|
||
text: this.client.config.embed.footer
|
||
})
|
||
.setTimestamp();
|
||
messageOptions.embed = thanksEmbed;
|
||
|
||
guild.owner.send(messageOptions).catch(() => {});
|
||
|
||
const text = `Зашёл на сервер **${guild.name}**. На нём **${guild.members.cache.filter((m) => !m.user.bot).size}** пользователей (из них ${guild.members.cache.filter((m) => m.user.bot).size} ботов)`;
|
||
|
||
const logsEmbed = new Discord.MessageEmbed()
|
||
.setAuthor({
|
||
name: guild.name,
|
||
iconURL: guild.iconURL()
|
||
})
|
||
.setColor("#32CD32")
|
||
.setDescription(text);
|
||
this.client.channels.cache.get(this.client.config.support.logs).send(logsEmbed);
|
||
}
|
||
}; |