guildMemberRemove and guildBanAdd are working like same events discord.js v13

Viewed 13

I want to make a log system for my server. Ban/Kick log. It is working but there is a bug that, when I kick a member, It sends 1 message; but when I ban a member it sends 2 different messages.

When I kick a member:

https://i.imgur.com/uGVTERa.png

When I ban a member:

https://i.imgur.com/zhhH0Fo.png

I wrote some code:

const { AuditLogEvent } = require('discord.js');

// ban detector

client.on('guildBanAdd', async (ban) => {
  const fetchedLogs = await ban.guild.fetchAuditLogs({
    limit: 1,
    type: 'MEMBER_BAN_ADD',
  });
  const banLog = fetchedLogs.entries.first();

  if (!banLog) return;
  const { executor, target } = banLog;

  if (target.id === ban.user.id) {
    const channel = client.channels.cache.get("954475961234116719");
    channel.send(`<@${ban.user.id}> was Banned by <@${executor.id}>`)
  } else {
    return;
  }
});

And another one:

// kick detector

client.on('guildMemberRemove', async (member) => {

    const fetchedLogs = await member.guild.fetchAuditLogs({
        limit: 1,
        type: 'MEMBER_KICK',
    });

  const kickLog = fetchedLogs.entries.first();
  if (!kickLog) return; 
  const { executor, target } = kickLog;
  if (target.id === ban.user.id) {
    const channel = client.channels.cache.get("954475961234116719");
    channel.send(`<@${member.user.id}> was kicked by <@${executor.id}>`)
  } else return;

});

Notes: I am using Node.js v16+ and discord.js v13

0 Answers
Related