diff --git a/bot.js b/bot.js index 3ecaaa1..eeba199 100644 --- a/bot.js +++ b/bot.js @@ -36,12 +36,11 @@ client.on(Events.MessageCreate, async (message) => { const command = commands.get(commandName); if (command) { - await command.execute(message, client, args).catch(async (e) => { - throw new Error(`Error executing ${commandName}: ${e.message}`); - }); + await command.execute(message, client, args); } } catch(error) { + console.error(error); return await message.reply(error.message); } }); diff --git a/commands.js b/commands.js index ed31960..a3244b9 100644 --- a/commands.js +++ b/commands.js @@ -8,7 +8,7 @@ const cmds = new Map(); cmds.set('member', { description: enums.help.SHORT_DESC_MEMBER, async execute(message, client, args) { - const reply = await memberHelper.parseMemberCommand(message.author, args, message.attachments[0] = null); + const reply = await memberHelper.parseMemberCommand(message.author, args, message.attachments[0] = null).catch(e => message.reply(e)); if (typeof reply === 'string') { await message.reply(reply); } diff --git a/helpers/memberHelper.js b/helpers/memberHelper.js index 7c21211..d67df24 100644 --- a/helpers/memberHelper.js +++ b/helpers/memberHelper.js @@ -14,8 +14,8 @@ const commandList = ['--help', 'add', 'remove', 'name', 'listall', 'displayName' * * @param {User} author - The id of the message author * @param {string[]} args - The message arguments - * @param {string | null} attachmentUrl - The message attachments - * @returns {Promise | Promise } A message, or an information embed. + * @param {string | null} attachmentUrl - The message attachment url. + * @returns {Promise | Promise } A message, or an informational embed. */ mh.parseMemberCommand = async function(author, args, attachmentUrl){ const authorId = author.id; diff --git a/helpers/messageHelper.js b/helpers/messageHelper.js index c78f650..e5a23ed 100644 --- a/helpers/messageHelper.js +++ b/helpers/messageHelper.js @@ -42,10 +42,10 @@ msgh.parseProxyTags = async function (authorId, attachment, content){ const members = await memberHelper.getMembersByAuthor(authorId); const proxyMessage = {} - members.forEach(member => { - if (content.length <= member.proxy.length && !attachment) throw new Error(enums.err.NO_MESSAGE_SENT_WITH_PROXY); + members.filter(member => member.proxy).forEach(member => { const splitProxy = member.proxy.split("text"); if(content.startsWith(splitProxy[0]) && content.endsWith(splitProxy[1])) { + if (content.length <= member.proxy.length && !attachment) throw new Error(enums.err.NO_MESSAGE_SENT_WITH_PROXY); proxyMessage.proxy = member.proxy; proxyMessage.message = content.slice(member.proxy.length).trim(); }