【发布时间】:2019-11-03 21:08:02
【问题描述】:
如果我执行像 !blacklistword "word" 这样的命令,我想这样做。 “单词”已保存到文件或数据库中,如果有人从文件或数据库中键入禁止的单词,则机器人删除消息并说 “这个词被禁止了”。
我试图用 doc discordjs 来做到这一点,但我仍然不知道该怎么做,
【问题讨论】:
-
可以使用JSON文件和fs包来编写。
标签: node.js discord.js
如果我执行像 !blacklistword "word" 这样的命令,我想这样做。 “单词”已保存到文件或数据库中,如果有人从文件或数据库中键入禁止的单词,则机器人删除消息并说 “这个词被禁止了”。
我试图用 doc discordjs 来做到这一点,但我仍然不知道该怎么做,
【问题讨论】:
标签: node.js discord.js
将单词添加到黑名单:(args[0] 将是单词,我假设您知道如何在命令之后获取单词)
var buf = fs.readFileSync("blacklist.txt");
var words = buf.toString().split("\n");
words.push(args[0]);
var output = words.join("\n");
fs.writeFileSync("blacklist.txt", output, err => {
if (err) console.log(err);
console.log("Added word to blacklist.");
});
检查消息是否有黑名单:
var buf = fs.readFileSync("blacklist.txt");
var words = buf.toString().split("\n");
var includesBadWord = false;
words.forEach(function(word) {
if (message.content.includes(word)) {
includesBadWord = true;
}
});
if (includesBadWord) {
message.delete();
}
【讨论】: