如何在一个不和谐的机器人设置服务器特定的变量?
所以,我创建使用node.js中一个不和谐的机器人我需要帮助,使服务器的特定变量(即不能是其他服务器上使用,或者可能是目前存在的)
我搜索的东西,唯一的结果是由公会ID来跟踪我的变量。问题是,它采用了“message.guild.id”这样就意味着检查消息之前,我可以不使用它。
这是代码来设置前缀应该是什么样子:
function setPrefix(message, arguments){
prefix[message.guild.id] = arguments
}
这是我想要的代码开始进行设置:
prefix = {}
prefix[guild.id] = "@"
我试了一下,但是,当然,我不能让公会的ID一样,所以它会每次我试图时间是不确定的。我能做什么? (请注意,我不是很有经验)
回答如下:你会发现列表中的所有行会你的机器人是在<Client>.guilds
成员。你只需要在它们之间迭代,并设置你想要的前缀。
快速片段设置为每个公会标识机器人是为“@”前缀:
var Discord = require("discord.js");
var client = new Discord.Client();
var prefix = {};
var defaultPrefix = "@";
client.on("ready", function(){
var allGuilds = client.guilds;
//initialize all prefixes to a default prefix
allGuilds.tap(function(guild){
prefix[guild.id] = defaultPrefix;
});
});
client.login("BOT_TOKEN")