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 
 | |
| 		}
 | |
| 		*/
 | |
| 	}
 | |
| } |