delta.on("guildMemberUpdate", async (oldMember, newMember) => { // Role removed if (newMember.roles.cache.size > oldMember.roles.cache.size) { let entry = await oldMember.guild .fetchAuditLogs({ type: AuditLogEvent.MemberRoleUpdate, limit:1 }) .then((audit) => audit.entries.first()); let logUser = entry.executor.id; let fad = oldMember.guild.members.cache.get(entry.executor.id) || newMember.guild.members.cache.get(entry.executor.id); const roleRemovedEmbed = new Discord.EmbedBuilder() .setColor(Colors.Green) .setThumbnail(oldMember.user.displayAvatarURL()) .setAuthor({ name: oldMember.user.tag, iconURL: oldMember.user.displayAvatarURL(), url: `https://discord.com/users/${oldMember.user.id}`, }); newMember.roles.cache.forEach((role) => { if (!oldMember.roles.cache.has(role.id)) { roleRemovedEmbed .setDescription(`**<@!${oldMember.user.id}> has been Updated**`) .addFields( { name: "✅Roles", value: `${role}`, inline: false }, { name: "From", value: `<@!${logUser}>`, inline: true } ); } }); const discordlogs = newMember.guild.channels.cache.get(config.logs.role); if (!discordlogs) return; discordlogs.send({ embeds: [roleRemovedEmbed] }).catch(() => {}); } if (oldMember.roles.cache.size > newMember.roles.cache.size) { let entry = await newMember.guild .fetchAuditLogs({ type: AuditLogEvent.MemberRoleUpdate , limit:1}) .then((audit) => audit.entries.first()); let logUser = entry.executor.id; let fad = oldMember.guild.members.cache.get(entry.executor.id) || newMember.guild.members.cache.get(entry.executor.id); const roleRemovedEmbed = new Discord.EmbedBuilder() .setColor(Colors.Red) .setAuthor({ name: newMember.user.tag, iconUR: newMember.user.displayAvatarURL(), url: `https://discord.com/users/${newMember.user.id}`, }) .setThumbnail(newMember.user.displayAvatarURL()); oldMember.roles.cache.forEach((role) => { if (!newMember.roles.cache.has(role.id)) { roleRemovedEmbed .setDescription(`**<@!${oldMember.user.id}> has been Updated**`) .addFields( { name: "⛔Roles", value: `${role}`, inline: false }, { name: "From", value: `<@!${logUser}>`, inline: true } ); } }); const discordlogs = oldMember.guild.channels.cache.get(config.logs.role); if (!discordlogs) return; discordlogs.send({ embeds: [roleRemovedEmbed] }).catch(() => {}); } });