const { Events, AuditLogEvent } = require('discord.js') module.exports = { name: Events.VoiceStateUpdate, async execute(oldState, newState) { /* let oldMute = oldState.serverMute let newMute = newState.serverMute let oldDeaf = oldState.serverDeaf let newDeaf = newState.serverDeaf let oldChannel = oldState.channelId let newChannel = newState.channelId console.log(oldChannel) console.log(newChannel) let guild = newState.guild let member = newState.member let channel = guild.channels.cache.get('1076215868863819848') let angels = guild.members.cache.get('223831938346123275') if (oldChannel !== newChannel) { let executor = await logMoveOrKick('channel_id') //if (!executor) channel.send(`Impossible de savoir qui a déplacé <@${member.id}> !`) //else if (member.id === executor.id) channel.send(`<@${member.id}> s'est déplacé lui-même le con...`) //else { // channel.send(`<@${member.id}> a été mis en sourdine par <@${executor.id}> !`) //} } else if (!oldMute && newMute) { let executor = await logMuteOrDeaf('mute') if (!executor) channel.send(`Impossible de savoir qui a muté <@${member.id}> !`) else if (member.id === executor.id) channel.send(`<@${member.id}> s'est muté lui-même le con...`) else { channel.send(`<@${member.id}> a été muté par <@${executor.id}> !`) } } else if (!oldDeaf && newDeaf) { let executor = await logMuteOrDeaf('deaf') if (!executor) channel.send(`Impossible de savoir qui a mis en sourdine <@${member.id}> !`) else if (member.id === executor.id) channel.send(`<@${member.id}> s'est mis en sourdine lui-même le con...`) else { channel.send(`<@${member.id}> a été mis en sourdine par <@${executor.id}> !`) } } async function logMoveOrKick() { let auditLogs = await guild.fetchAuditLogs({ limit: 1, type: AuditLogEvent.MemberMove }) console.log(auditLogs.entries.find(entry => { return entry })) let log = await auditLogs.entries.find(entry => { return entry.extra.channel.id === newChannel }) console.log(log) if (!log) return undefined let executor = await guild.members.cache.get(log.executor.id) return executor } async function logMuteOrDeaf(type) { let auditLogs = await guild.fetchAuditLogs({ limit: 1, type: AuditLogEvent.MemberUpdate }) let log = await auditLogs.entries.find(entry => { return entry.target.id === member.id && entry.changes[0].key === type && entry.changes[0].new === true }) if (!log) return undefined let executor = await guild.members.cache.get(log.executor.id) return executor } */ } }