我已经开始创建Discord机器人。问题出在这里:机器人正在发送垃圾邮件。我希望他在条件为真时仅发送一条消息。我正在使用if
语句,但是它的作用类似于while
循环。这是代码:
const Discord = require("discord.js");
const client = new Discord.Client();
const token = 'TotallyNotMyRealToken';
client.login(token);
client.on('message', message =>
{
if(message.content.includes("text"))
{
message.channel.send(" reply text");
}
})
例如,当我键入“文本”时,它将发送“答复”,直到脚本停止。
您能帮我解决问题吗?
最佳答案
您正在发送一条消息“回复文本”,其中本身包含单词“ text”。
更改示例以使用其他短语。
client.on('message', message =>
{
if(message.content.includes("text"))
{
message.channel.send(" this is a reply");
}
})
此外,在评论中进行进一步讨论时,如果您希望客户端忽略其自身的消息,则可以尝试以下操作:
client.on('message', message =>
{
if(message.content.includes("text") && message.author.user.id !== client.user.id)
{
message.channel.send(" reply text");
}
})
见https://discord.js.org/#/docs/main/stable/class/Message?scrollTo=client