diff --git a/events/interactionCreate.js b/events/interactionCreate.js deleted file mode 100644 index 4b205d5..0000000 --- a/events/interactionCreate.js +++ /dev/null @@ -1,48 +0,0 @@ -const { Events } = require('discord.js'); -const db = require('../fonctions/database.js'); -const embedColor = require('../fonctions/embedColor.js'); - -module.exports = { - name: Events.InteractionCreate, - async execute(client, interaction) { - - if (interaction.customId === "lvl_Recomp_Rep") { - const lvl = interaction.message.embeds[0].fields[0].value - const serv = interaction.message.embeds[0].fields[1].value - - const user = await new Promise((resolve, reject) => { - db.get(`SELECT * FROM users WHERE guildId = ? AND userId = ?`, [serv, member.id], (err, row) => { - if (err) reject(err); - resolve(row); - }); - }); - - db.run(`UPDATE users SET reputation = reputation + ? WHERE guildId = ? AND userId = ?`, [lvl, serv, message.author.id]); - - const embedClaim = new EmbedBuilder() - .setTitle('Recompense du niveau ' + lvl + ':') - .setDescription('La recompense du niveau ' + lvl + 'était de ' + lvl + 'reputation, ou bien de ' + lvl * 500 + 'coins\n\nVous avez choisi les reputations, vous avez donc `' + user.reputation + '` reputation !') - .setColor(await embedColor(message.author.id, serv)) - .setTimestamp() - .setFooter({ text: `La recompense à été reçu sur le serveur ${serv.name}` }) - - interaction.edit({ embeds: [embedClaim], components: [] }) - } - - if (interaction.customId === "lvl_Recomp_Coins") { - const lvl = interaction.message.embeds[0].fields[0].value - const serv = interaction.message.embeds[0].fields[1].value - - db.run(`UPDATE users SET pocket = pocket + ? WHERE guildId = ? AND userId = ?`, [lvl * 500, serv, message.author.id]); - - const embedClaim = new EmbedBuilder() - .setTitle('Recompense du niveau ' + lvl + ':') - .setDescription('La recompense du niveau ' + lvl + 'était de ' + lvl + 'reputation, ou bien de ' + lvl * 500 + 'coins\n\nVous avez choisi les coins, vous avez donc `' + lvl * 500 + '` coins en plus !') - .setColor(await embedColor(message.author.id, serv)) - .setTimestamp() - .setFooter({ text: `La recompense à été reçu sur le serveur ${serv.name}` }) - - interaction.edit({ embeds: [embedClaim], components: [] }) - } - } -} \ No newline at end of file diff --git a/events/messageCreateLVL.js b/events/messageCreateLVL.js index 78ded93..9df5118 100644 --- a/events/messageCreateLVL.js +++ b/events/messageCreateLVL.js @@ -1,53 +1,46 @@ const { Message, Events, ActionRowBuilder, ActionRow, ButtonBuilder, ButtonStyle, EmbedBuilder } = require("discord.js"); -const db = require('../fonctions/database.js'); -const embedColor = require('../fonctions/embedColor.js'); +const db = require("../fonctions/database.js"); +const embedColor = require("../fonctions/embedColor.js"); module.exports = { - name: Events.MessageCreate, - async execute(message, client) { - if (message.author.bot) return; + name: Events.MessageCreate, - if (message.content.length < 50) { - db.run(`UPDATE users SET xp = xp + 1 WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id]); - } - if (message.content.length >= 50) { - db.run(`UPDATE users SET xp = xp + 3 WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id]); - } + async execute(message, client) { + if (message.channel.type === "DM") return; + if (message.author.bot) return; - const user = await new Promise((resolve, reject) => { - db.get(`SELECT * FROM users WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id], (err, row) => { - if (err) reject(err); - resolve(row); - }); - }); - - if (user.xp >= 100 * user.lvl) { - db.run(`UPDATE users SET xp = 0, lvl = lvl + 1 WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id]); - - const embedlvl = new EmbedBuilder() - .setTitle('Nouveau niveau !') - .setDescription('Vous avez passé(e) un niveau sur ' + message.guild.name + ' !!\n\nVeuillez choisir une recompense :') - .setColor(await embedColor(message.author.id, message.guild.id)) - .setTimestamp() - .addFields({ name: 'Le niveau passé :', value: `${user.lvl}`, inline: true }) - .addFields({ name: 'Serveur id :', value: `${message.guild.id}`, inline: true}) - .setFooter({ text: `Merci d'être actif/ve`, iconURL: message.author.displayAvatarURL() }) - - const btn1 = new ButtonBuilder() - .setCustomId('lvl_Recomp_Rep') - .setLabel(user.lvl + 'reputation') - .setStyle(ButtonStyle.Primary); - - const btn2 = new ButtonBuilder() - .setCustomId('lvl_Recomp_Coins') - .setLabel(user.lvl * 500 + 'coins') - .setStyle(ButtonStyle.Primary); - - const row = new ActionRowBuilder() - .addComponents(btn1) - .addComponents(btn2) - - message.author.send({ embeds: [embedlvl], components: [row] }) - } + if (message.content.length < 50) { + db.run(`UPDATE users SET xp = xp + 1 WHERE guildId = ? AND userId = ?`, [ + message.guild.id, + message.author.id, + ]); } -}; \ No newline at end of file + if (message.content.length >= 50) { + db.run(`UPDATE users SET xp = xp + 3 WHERE guildId = ? AND userId = ?`, [ + message.guild.id, + message.author.id, + ]); + } + + const user = await new Promise((resolve, reject) => { + db.get(`SELECT * FROM users WHERE guildId = ? AND userId = ?`, [message.guild.id, message.author.id], (err, row) => { + if (err) reject(err); + resolve(row); + }); + }); + + if (user.xp >= 100 * user.lvl) { + db.run( + `UPDATE users SET xp = 0, lvl = lvl + 1, pocket = pocket + ?, reputation = reputation + ? WHERE guildId = ? AND userId = ?`, + [user.lvl + 1, Math.ceil((user.lvl + 1) / 5), message.guild.id, message.author.id] + ); + + const embedlvl = new EmbedBuilder() + .setTitle("Nouveau niveau !") + .setDescription(`Bravo ${message.author}, tu es passé niveau ${user.lvl + 1} sur le serveur \`${message.guild.name}\` !\nTu as reçu \`${(Math.ceil((user.lvl + 1) / 5)) * 500}\` 🪙 et \`${Math.ceil((user.lvl + 1) / 5)}\` 🔺 !`) + .setColor(await embedColor(message.author.id, message.guild.id)); + + message.author.send({ embeds: [embedlvl] }); + } + }, +};