実現したいこと
Discorod.jsでbotを開発しています。
グローバルチャットが送信されたすべてのサーバーで削除するアイデアを募集します。
できるだけ簡単に実装できる方法がありましたら教えてください。
Discord.js v13
意味あるかどうかはわかりませんが参考までに
コードが汚いなと感じても多めに見てもらえれば幸いです
javascript
1client.on("messageCreate", async (message) => { 2 if (message.channel.topic === "testtopic") { 3 if (message.author.bot) return; 4 message.delete(); 5 const author = { 6 name: message.user.username, 7 iconURL: message.author.displayAvatarURL(), 8 }; 9 const footer = { 10 text: message.guild.name, 11 iconURL: message.guild.iconURL(), 12 }; 13 for (const channel of client.channels.cache.values()) { 14 if (channel.topic !== "testtopic") continue; 15 if (message.content) { 16 const embed = new MessageEmbed() 17 .setAuthor(author) 18 .setTitle(message.cleanContent) 19 .setColor("RANDOM") 20 .setFooter(footer) 21 .setTimestamp(); 22 await channel.send({ embeds: [embed] }); 23 } 24 for (const attachment of message.attachments.values()) { 25 const embed = new MessageEmbed() 26 .setAuthor(author) 27 .setImage(attachment.url) 28 .setTitle(message.cleanContent).setDescription('グローバルチャットでは画像ファイル以外を共有することはできません。') 29 .setColor("RANDOM") 30 .setFooter(footer) 31 .setTimestamp(); 32 await channel.send({ embeds: [embed] }); 33 } 34 } 35 } 36});
提示のコードではどういうふうに動作するんでしょうか
あなたの回答
tips
プレビュー