59 lines
2.5 KiB
JavaScript
Executable File
59 lines
2.5 KiB
JavaScript
Executable File
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
|
|
}
|
|
*/
|
|
}
|
|
} |