使用命令定位用户
Target Users with Commands
我正在尝试创建一个命令,它将检查提到的用户并将其保存到一个数组中,这样我就可以在上面使用一个方法,等等。
例如,给某人一个角色
将消息中提到的用户 (message.mentions.users
) 保存到数组
给提到的用户指定角色(或其他方法)
Check for the user(s) mentioned and saving that to an array
不需要。 message.mentions.users
已经是一个数组,如果你愿意,你仍然可以通过创建另一个变量来保存它,但是为了给他们一个角色,你只需要执行一个命令 for each one其中
为此,我们将使用 .forEach()
方法:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
console.log(user); // This should log every mentioned user
});
这样您就可以轻松地为它们中的每一个执行一个命令。
但要赋予他们角色,您必须使用 Back-End API(HTTP 请求)
PUT/DELETE /api/guilds/{guildId}/members/{userId}/roles/{roleId} [1]
HTTP 请求可以用 jQuery 的 ajax 完成:
(记住所有不和谐请求 Base URL 应该是 https://discordapp.com/api):
$.ajax({
url: '/api/guilds/{guildId}/members/{userId}/roles/{roleId}',
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
}
});
您只需要将 message.mentions.users
转换为他们的 ID,您可以使用 .forEach()
循环轻松完成此操作。
更新
示例:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
$.ajax({
url: '/api/guilds/' + message.guild.id + '/members/' + user + '/roles/{roleId}', // In this case the ID of the role
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
};
});
});
我正在尝试创建一个命令,它将检查提到的用户并将其保存到一个数组中,这样我就可以在上面使用一个方法,等等。
例如,给某人一个角色
将消息中提到的用户 (message.mentions.users
) 保存到数组
给提到的用户指定角色(或其他方法)
Check for the user(s) mentioned and saving that to an array
不需要。 message.mentions.users
已经是一个数组,如果你愿意,你仍然可以通过创建另一个变量来保存它,但是为了给他们一个角色,你只需要执行一个命令 for each one其中
为此,我们将使用 .forEach()
方法:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
console.log(user); // This should log every mentioned user
});
这样您就可以轻松地为它们中的每一个执行一个命令。
但要赋予他们角色,您必须使用 Back-End API(HTTP 请求)
PUT/DELETE /api/guilds/{guildId}/members/{userId}/roles/{roleId} [1]
HTTP 请求可以用 jQuery 的 ajax 完成: (记住所有不和谐请求 Base URL 应该是 https://discordapp.com/api):
$.ajax({
url: '/api/guilds/{guildId}/members/{userId}/roles/{roleId}',
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
}
});
您只需要将 message.mentions.users
转换为他们的 ID,您可以使用 .forEach()
循环轻松完成此操作。
更新
示例:
var userlist = message.mentions.users; // Saving userlist to a variable
userlist.forEach(function(user){
$.ajax({
url: '/api/guilds/' + message.guild.id + '/members/' + user + '/roles/{roleId}', // In this case the ID of the role
type: 'PUT', // Or delete
success: function(result) {
// Do something with the result
};
});
});