From 79f3029103adfa8fe55a7e962f61535b273d5c30 Mon Sep 17 00:00:00 2001 From: WubzyGD Date: Fri, 12 Feb 2021 21:07:44 -0700 Subject: [PATCH] AR deletion and cache updating --- commands/ar.js | 35 ++++++++++++++++++++++++++++++----- 1 file changed, 30 insertions(+), 5 deletions(-) diff --git a/commands/ar.js b/commands/ar.js index 05485cf..c83c7c0 100644 --- a/commands/ar.js +++ b/commands/ar.js @@ -11,13 +11,13 @@ module.exports = { meta: { category: 'Misc', description: "Create and edit automatic responses, which lets the bot say stuff when you say something in your server!", - syntax: '`ar `', + syntax: '`ar `', extra: null }, help: new Discord.MessageEmbed() .setTitle("Help -> Auto Responses") .setDescription("Create and edit automatic responses, which lets the bot say stuff when you say something in your server!") - .addField("Syntax", "`ar `") + .addField("Syntax", "`ar `") .addField("Notice", "This command is server-only, and requires you to be an administrator or have the staff role."), async execute(message, msg, args, cmd, prefix, mention, client) { if (!message.guild) {return message.channel.send("You must be in a server in order to use this command.");} @@ -25,12 +25,22 @@ module.exports = { const tg = await GuildData.findOne({gid: message.guild.id}); if (['a', 'add', 'e', 'edit', 'delete', 'd'].includes(args[0].toLowerCase()) && ((!tg || !tg.staffrole || !tg.staffrole.length || !message.member.roles.cache.has(tg.staffrole)) && !message.member.permissions.has("ADMINISTRATOR"))) {return message.channel.send("You must have the staff role or be an administrator in this server in order to edit AR settings.");} - function viewARs(tar) { + function sortARs(tar) { let t = tar.triggers; let ar = tar.ars; + let f = []; let s = ''; + for (let i=0;i ${ar[tt]}\n\n`;} + return [s, f]; + } - for (let i=0;i m.author.id === message.author.id, {errors: ['time'], time: 60000, max: 1});} + catch {return message.channel.send("This question has timed out. Please try again!");} + collected = collected.first().content.trim(); + if (isNaN(Number(collected))) {return message.channel.send("You didn't reply with a number!");} + let id = Number(collected); + if (id < 1 || id > tar.triggers.length) {return message.channel.send("Your number was either below 1 or doesn't have a trigger to match it.");} + try { + tar.triggers.forEach(t => {if (t === sar[1][id-1]) {delete sar[1][id-1]; delete tar.ars[sar[1][id-1]]}}); + tar.triggers = sar[1]; + tar.save(); + client.misc.cache.ar.set(message.guild.id, tar.triggers); + return message.channel.send("I didn't like saying that anyway."); + } catch {return message.channel.send("There seemed to have been a problem deleting that AR. Contact my devs if the problem persists.");} } return message.channel.send(`That's not a valid argument! Try \`${prefix}help ar\``);