public static Task OnGuildMemberUpdated(DiscordClient client, GuildMemberUpdateEventArgs args)
{
_ = Task.Run(async () =>
{
var hasTag = args.Member.PrimaryGuild is not null && args.Member.PrimaryGuild.IdentityEnabled;
if (hasTag && BlacklistService.BlacklistedGuildIds.Contains(args.Member.PrimaryGuild!.IdentityGuildId!.Value.ToString()))
{
await BlacklistService.PunishBlacklistedTagUserAsync(client, args.Guild, args.Member);
return;
}
if (args.Member.RoleIds.Contains(RawrConstants.TagBlacklistRoleId) && (!hasTag || !BlacklistService.BlacklistedGuildIds.Contains(args.Member.PrimaryGuild!.IdentityGuildId!.Value.ToString())))
await BlacklistService.RevokeBlacklistedTagPunishmentAsync(client, args.Guild, args.Member);
});
return Task.CompletedTask;
}
tbf i dont check the before after, just the after, but it def works on the gw