假设Discord机器人程序是服务器a和服务器B的成员,并且在服务器a上托管了一个自定义的表情符号。我如何让机器人程序在服务器B上发送表情符号?我见过MEE6这样的机器人可以在DM中发送自定义表情符号,所以这肯定是可能的。
这两种我都试过了:
message.channel.send('Test <:[emoji_name]:[id]>');
这个:
message.channel.send(`Test ${client.guilds.cache.get('[server_id]').emojis.cache.first()}`);
我使用了.first()
,因为服务器中只有一个表情符号。
这两者都不起作用。表情符号会出现在它所在的服务器上,但如果我试图在任何其他服务器上发送它,它只显示表情符号的名称和/或ID。我找不到任何文章或问题可以提供任何其他方式。简言之,我如何让机器人程序将表情符号发送到表情符号未托管的另一台服务器?
在discord.js v12中,它是
const someEmoji = client.emojis.cache.get("<Emoji ID>");
对于每个面临相同问题的人,您可以使用client.emojis.get("<Emoji ID>")
。
这里有一个快速的例子:
const someEmoji = client.emojis.get("<Emoji ID>");
message.channel.send(someEmoji);