const { EmbedBuilder } = require("discord.js"); const db = require("../../fonctions/database.js"); const embedColor = require("../../fonctions/embedColor.js"); module.exports = { aliases: ["ret", "retrait", "with", "withdraw", "wd", "take", "wh"], description: "Retire vos coins de votre compte banquaire.", emote: "🏩", utilisation: "", permission: 0, async execute(message, args, client) { 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 pocket = user.pocket; const bank = user.bank; let title = "Retrait Impossible"; let description = ""; if (args.length === 0) { description = "❌ Vous devez spĂ©cifier un montant Ă  retirer."; } else if (args[0] === "all") { if (bank <= 0) { description = "❌ Vous n'avez pas d'argent Ă  retirer de votre compte en banque."; } else { title = "Retrait RĂ©ussi"; description = `🏩 Vous avez retirĂ© \`${bank}\` coins de votre compte en banque.`; db.run( `UPDATE users SET pocket = ?, bank = ? WHERE guildId = ? AND userId = ?`, [pocket + bank, 0, message.guild.id, message.author.id], ); } } else if (isNaN(args[0])) { description = "❌ Vous devez spĂ©cifier un montant valide Ă  retirer."; } else if (bank <= 0) { description = "❌ Vous n'avez pas d'argent Ă  retirer."; } else if (parseInt(args[0]) > bank) { description = "❌ Vous n'avez pas assez d'argent dans votre compte en banque pour retirer cette somme."; } else if (parseInt(args[0]) <= 0) { description = "❌ Vous ne pouvez pas retirer une somme nĂ©gative ou nulle."; } else { title = "Retrait RĂ©ussi"; description = `🏩 Vous avez retirĂ© ${args[0]} coins de votre compte en banque.`; db.run( `UPDATE users SET pocket = ?, bank = ? WHERE guildId = ? AND userId = ?`, [ pocket + parseInt(args[0]), bank - parseInt(args[0]), message.guild.id, message.author.id, ], ); } const embed = new EmbedBuilder() .setTitle(title) .setDescription(description) .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 } }); }, };