discord.js检查用户邀请,但不离开



我正在尝试了解某个成员邀请了多少成员。下面的代码有效,但它计算所有受邀成员,包括已离开的成员。我希望它只显示仍在服务器上的受邀成员的数量。

var user = null;
user = message.mentions.members.first() || message.author;

message.guild.fetchInvites()
.then(invites =>
{
const userInvites = invites.array().filter(o => o.inviter.id === user.id);
var userInviteCount = 0;
for(var i=0; i < userInvites.length; i++)
{
var invite = userInvites[i];
userInviteCount += invite['uses'];
userInviteCount - invite['left'];
}
message.reply(`You have ${userInviteCount} invites.`);
});

理念1:获取每个userInviteCount的userID,并通过循环检查它们是否仍在服务器中。

想法2:不一致JS没有检查成员来自哪个邀请链接的功能,所以遗憾的是,你不能只遍历所有成员并检查他们是否来自你想要的邀请链接。像InviteManager这样的机器人所做的是,他们检测成员何时加入,然后检查所有有效的邀请链接以增加使用量。然后,上升1的链接将被检测为已使用的邀请链接。

最新更新