diff --git a/types/emoji.js b/types/emoji.js index e118812c..ca9296ea 100644 --- a/types/emoji.js +++ b/types/emoji.js @@ -7,14 +7,14 @@ class EmojiArgumentType extends ArgumentType { } validate(value, msg) { - const matches = value.match(/<:([a-zA-Z0-9_]+):(\d+)>/); + const matches = value.match(/^(?:<:([a-zA-Z0-9_]+):)?([0-9]+)>?$/); if (matches) { const emoji = msg.client.emojis.get(matches[2]); if (emoji) return true; } if (!msg.guild) return false; const search = value.toLowerCase(); - const emojis = msg.guild.emojis.filter(emoji => emoji.name.toLowerCase() === search || emoji.id === search); + const emojis = msg.guild.emojis.filter(emoji => emoji.name.toLowerCase() === search); if (!emojis.length) return false; if (emojis.length === 1) return true; return emojis.length <= 15 @@ -23,11 +23,11 @@ class EmojiArgumentType extends ArgumentType { } parse(value, msg) { - const matches = value.match(/<:([a-zA-Z0-9_]+):(\d+)>/); + const matches = value.match(/^(?:<:([a-zA-Z0-9_]+):)?([0-9]+)>?$/); if (matches) return msg.client.emojis.get(matches[2]); if (!msg.guild) return null; const search = value.toLowerCase(); - const emojis = msg.guild.emojis.filter(emoji => emoji.name.toLowerCase() === search || emoji.id === search); + const emojis = msg.guild.emojis.filter(emoji => emoji.name.toLowerCase() === search); if (!emojis.length) return null; if (emojis.length === 1) return emojis[0]; return null;