mirror of
https://github.com/JonnyBro/JaBa.git
synced 2024-11-25 06:34:58 +05:00
51 lines
No EOL
2.1 KiB
JavaScript
51 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(`Для настроек используйте \`${data.config.prefix}help\` и посмотрите на административные команды!\nЧтобы изменить язык используйте \`${this.client.config.prefix}setlang [язык]\`.`)
|
||
.setColor(data.config.embed.color)
|
||
.setFooter({ text: data.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} ботов)`;
|
||
|
||
// Sends log embed in the logs channel
|
||
const logsEmbed = new Discord.MessageEmbed()
|
||
.setAuthor({ name: guild.name, iconURL: guild.iconURL()})
|
||
.setColor("#32CD32")
|
||
.setDescription(text);
|
||
this.client.channels.cache.get(data.config.support.logs).send(logsEmbed);
|
||
}
|
||
}; |