diff --git a/commands/teams/team.js b/commands/teams/team.js index fc58f53..ba1dbe5 100644 --- a/commands/teams/team.js +++ b/commands/teams/team.js @@ -52,7 +52,7 @@ module.exports = { const embed = new EmbedBuilder() .setTitle('🛡️ Informations de team') - .setDescription(`**Nom:** ${team.name}\n**Description:** ${team.description}\n**Banque:** ${team.bank} coins\n**Niveau:** ${team.level}\n\n**Soldats:** ${team.soldiers}\n**Soldats blessés:** ${team.woundedSoldiers}\n**Niveau du camp:** ${team.campLevel}\n**Tourelles:** ${team.turrets}\n**Cadenas:** ${CadenaS}\n\n**Membres (${memberlist.length}):**\n${memberlist.map(member => `**${member.teamRole} :** <@${member.userId}>`).join('\n')}`) + .setDescription(`**Nom:** ${team.name}\n**Description:** ${team.description}\n**Banque:** ${team.bank} coins\n**Niveau:** ${team.level}\n**Reputation:** ${team.reputation}\n\n**Soldats:** ${team.soldiers}\n**Soldats blessés:** ${team.woundedSoldiers}\n**Niveau du camp:** ${team.campLevel}\n**Tourelles:** ${team.turrets}\n**Cadenas:** ${CadenaS}\n\n**Membres (${memberlist.length}):**\n${memberlist.map(member => `**${member.teamRole}:** <@${member.userId}>`).join('\n')}`) .setColor(await embedColor(message.author.id, message.guild.id)) .setTimestamp() .setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() }); diff --git a/commands/teams/trep.js b/commands/teams/trep.js new file mode 100644 index 0000000..91510bb --- /dev/null +++ b/commands/teams/trep.js @@ -0,0 +1,64 @@ +const { EmbedBuilder } = require('discord.js'); +const db = require('../../fonctions/database.js'); +const embedColor = require('../../fonctions/embedColor.js'); + +module.exports = { + aliases: ['teamrep'], + description: 'Ajoute un point de reputation a une team.', + emote: '➕', + utilisation: '', + permission: 0, + + async execute(message, args, client) { + if (args.length > 0) { + const teamID = args[0].toLowerCase(); + + 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); + }); + }); + const lastRep = user.lastRep + + const team = await new Promise((resolve, reject) => { + db.get(`SELECT * FROM teams WHERE guildId = ? AND id = ?`, [message.guild.id, teamID], (err, row) => { + if (err) reject(err); + resolve(row); + }); + }); + + if (lastRep > Date.now() - 5400000) { + const embed = new EmbedBuilder() + .setTitle('Ajout Impossible') + .setDescription(`❌ Vous avez déjà ajouter une reputation récemment. Veuillez attendre ${Math.floor((lastRep + 5400000 - Date.now()) / 60000)} minutes avant de pouvoir ajouter une reputation à nouveau.`) + .setColor(await embedColor(message.author.id, message.guild.id)) + .setTimestamp() + .setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() }); + + return message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } }); + } + + db.run(`UPDATE users SET lastRep =? WHERE guildId =? AND userId =?`, [Date.now(), message.guild.id, message.author.id], (err) => { + if (err) { + console.log(`${err}`.red) + } + }); + + db.run(`UPDATE teams SET reputation = reputation + 1 WHERE guildId =? AND id =?`, [message.guild.id, teamID], (err) => { + if (err) { + console.log(`${err}`.red) + } + }); + + const embed = new EmbedBuilder() + .setTitle('Reputation ajouté !') + .setDescription('Vous avez ajouter une reputation a la team `' + team.name + '`, qui a maintement `' + team.reputation + 1 + '` reputation !') + .setColor(await embedColor(message.author.id, message.guild.id)) + .setTimestamp() + .setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() }); + + message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } }); + } + }, +}; \ No newline at end of file diff --git a/fonctions/database.js b/fonctions/database.js index 4f42bc2..8d2f99a 100644 --- a/fonctions/database.js +++ b/fonctions/database.js @@ -23,6 +23,7 @@ db.run(`CREATE TABLE IF NOT EXISTS users ( lastRob INTEGER DEFAULT 0, lastWork INTEGER DEFAULT 0, lastDaily INTEGER DEFAULT 0, + lastRep INTERGER DEFAULT 0, job TEXT, teamId TEXT, teamRole TEXT, @@ -37,6 +38,7 @@ db.run(`CREATE TABLE IF NOT EXISTS teams ( description TEXT, icon TEXT, banner TEXT, + reputation INTERGER DEFAULT 0,ça avan bank INTEGER DEFAULT 0, level INTEGER DEFAULT 1, padlock INTEGER DEFAULT 5,