message.author 반응 제거
Nov 04 2020
사용자가 반응 할 때의 반응을 제거하고 봇 자신의 반응을 하나만 남겨두고 싶었습니다.
나는 이미 이것에 대한 튜토리얼을 보았지만이 방법을 찾지 못했습니다.
const test = new Discord.MessageEmbed()
.setColor("random")
.setTitle("help")
.setDescription(`**this a test**`)
message.channel.send(test).then(msg => {
msg.react('📚').then(r => {
msg.react('📌').then(r => {
})
})
const hiFilter = (reaction, user) => reaction.emoji.name === '📚' && user.id === message.author.id;
const hi2Filter = (reaction, user) => reaction.emoji.name === '📌' && user.id === message.author.id;
const edit = msg.createReactionCollector(hiFilter);
const edit2 = msg.createReactionCollector(hi2Filter);
edit.on('collect', r2 => {
test.setTitle("test edited")
test.setDescription("edited")
msg.edit(test)
})
})
답변
Ahsoka Nov 04 2020 at 22:15
이 코드는 반응을 추가 한 사용자의 ID가 봇의 ID가 아닌 경우 반응을 제거합니다. <Client>Discord 클라이언트를 선언 한 것으로 대체하십시오 .
edit.on('collect', (r2, user) => {
if (user.id !== <Client>.user.id) r2.remove().catch(console.log);
test.setTitle("test edited");
test.setDescription("edited");
msg.edit(test);
});