Si escribes :a: o :gun: , envía un emoticón en discordia. Lo que estoy tratando de hacer es que si alguien envía solo la cadena que está entre esos : (es decir, en este caso, mostré, 'a' o 'gun'), mi bot lo analizaría y comprobaría si se puede 'traducir' a un emoticón.
Traté de hacer:
if (msg.content.length === 1) Pero msg.content sigue siendo :(string): así que no funciona.
Actualmente estoy buscando otras formas y mantendré esto actualizado. ¡Cualquier consejo será muy apreciado!
Editar: Fui con esta API porque no encontré otra manera
Hay un par de advertencias con esto: 1) No parece haber ninguna forma de verificar los emojis estándar; solo emojis de gremio (es decir, personalizados). 2) Puede ser posible con un complemento de terceros.
Con respecto al n. ° 1, esto traducirá un mensaje en un emoji de GREMIO:
const emoji = message.guild.emojis.cache.find(e => e.name === message.content); if (emoji) { message.channel.send(`<:${emoji.name}:${emoji.id}>`); } Con respecto al n. ° 2, consulte emoji-regex . Por lo que puedo decir, convierta el mensaje en un emoji y compárelo con lo que le dice emoji-regex . Si coincide, entonces puedes enviar el emoji.