Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require('discord.js')
- const client = new Discord.Client()
- const fs = require('fs')
- const warns = JSON.parse(fs.readFileSync('./warns.json'))
- let prefix = "?"
- client.login('TOKEN')
- client.on('guildMemberAdd', function (member) {
- let embed = new Discord.RichEmbed()
- .setDescription(':tada: **' + member.user.username + '** a rejoint ' + member.guild.name)
- .setFooter('Nous sommes désormais ' + member.guild.memberCount)
- member.guild.channels.get('ID DU CHANNEL').send(embed)
- member.addRole('ID DU ROLE A AJOUTER AUTOMATIQUEMENT')
- })
- client.on('guildMemberRemove', function (member) {
- let embed = new Discord.RichEmbed()
- .setDescription(':cry: **' + member.user.username + '** a quitté ' + member.guild.name)
- .setFooter('Nous sommes désormais ' + member.guild.memberCount)
- member.guild.channels.get('ID DU CHANNEL').send(embed)
- })
- client.on('ready', function () {
- console.log('Bot connecté')
- client.user.setActivity('Mon bot perso', {type: "PLAYING"})
- })
- client.on('message', function (message) {
- if (!message.guild) return
- let args = message.content.trim().split(/ +/g)
- if (args[0].toLowerCase() === prefix + 'kick') {
- if (!message.member.hasPermission('KICK_MEMBERS')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un utilisateur :x:")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.owner.id) return message.channel.send("Vous ne pouvez pas kick cet utilisateur :x:")
- if (!member.kickable) return message.channel.send("Je ne peux pas exclure cet utilisateur :sunglass:")
- member.kick()
- message.channel.send("**"+ member.user.username + '** a été exclu :white_check_mark:')
- }
- if (args[0].toLowerCase() === prefix + 'ban') {
- if (!message.member.hasPermission('BAN_MEMBERS')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un utilisateur :x:")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.owner.id) return message.channel.send("Vous ne pouvez pas bannir cet utilisateur :x:")
- if (!member.bannable) return message.channel.send("Je ne peux pas bannir cet utilisateur :sunglass:")
- message.guild.ban(member, {days: 7})
- message.channel.send("**"+ member.user.username + '** a été banni :white_check_mark:')
- }
- if (args[0].toLowerCase() === prefix + "clear") {
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let count = args[1]
- if (!count) return message.channel.send("Veuillez indiquer un nombre de messages à supprimer")
- if (isNaN(count)) return message.channel.send("Veuillez indiquer un nombre valide")
- if (count < 1 || count > 100) return message.channel.send("Veuillez indiquer un nombre entre 1 et 100")
- message.channel.bulkDelete(parseInt(count) + 1)
- }
- if (args[0].toLowerCase() === prefix + "mute") {
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Membre introuvable")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.ownerID) return message.channel.send("Vous ne pouvez pas mute ce membre")
- if (member.highestRole.calculatedPosition >= message.guild.me.highestRole.calculatedPosition || member.id === message.guild.ownerID) return message.channel.send("Je ne peux pas mute ce membre")
- let muterole = message.guild.roles.find(role => role.name === 'Muted')
- if (muterole) {
- member.addRole(muterole)
- message.channel.send(member + ' a été mute :white_check_mark:')
- }
- else {
- message.guild.createRole({name: 'Muted', permissions: 0}).then(function (role) {
- message.guild.channels.filter(channel => channel.type === 'text').forEach(function (channel) {
- channel.overwritePermissions(role, {
- SEND_MESSAGES: false
- })
- })
- member.addRole(role)
- message.channel.send(member + ' a été mute :white_check_mark:')
- })
- }
- }
- if (args[0].toLowerCase() === prefix + "warn") {
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un membre")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.ownerID) return message.channel.send("Vous ne pouvez pas warn ce membre")
- let reason = args.slice(2).join(' ')
- if (!reason) return message.channel.send("Veuillez indiquer une raison")
- if (!warns[member.id]) {
- warns[member.id] = []
- }
- warns[member.id].unshift({
- reason: reason,
- date: Date.now(),
- mod: message.author.id
- })
- fs.writeFileSync('./warns.json', JSON.stringify(warns))
- message.channel.send(member + " a été warn pour " + reason + " :white_check_mark:")
- }
- if (args[0].toLowerCase() === prefix + "infractions") {
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un membre")
- let embed = new Discord.RichEmbed()
- .setAuthor(member.user.username, member.user.displayAvatarURL)
- .addField('10 derniers warns', ((warns[member.id] && warns[member.id].length) ? warns[member.id].slice(0, 10).map(e => e.reason) : "Ce membre n'a aucun warn"))
- .setTimestamp()
- message.channel.send(embed)
- }
- if (args[0].toLowerCase() === prefix + '8ball') {
- if (!args[0]) return message.channel.send("Veuillez **poser une question** :x:")
- let answers = ["Non :x:", "J'ai envie de dormir :zzz:", "Balec :face_palm:", "Peut être... :thinking:", "Absolument :interrobang:"]
- let question = args.slice(1).join(" ")
- let embed = new Discord.RichEmbed()
- .setAuthor(message.author.tag, message.author.displayAvatarURL)
- .setColor("ORANGE")
- .addField("Question :", question)
- .addField("Réponse :", answers[Math.floor(Math.random() * answers.length)])
- message.channel.send(embed)
- }
- if (args[0].toLowerCase() === prefix + "unmute") {
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande.")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Membre introuvable")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.ownerID) return message.channel.send("Vous ne pouvez pas unmute ce membre.")
- if (member.highestRole.calculatedPosition >= message.guild.me.highestRole.calculatedPosition || member.id === message.guild.ownerID) return message.channel.send("Je ne pas unmute ce membre.")
- let muterole = message.guild.roles.find(role => role.name === 'Muted')
- if (muterole && member.roles.has(muterole.id)) member.removeRole(muterole)
- message.channel.send(member + ' a été unmute :white_check_mark:')
- }
- if (args[0].toLowerCase() === prefix + "unwarn") {
- let member = message.mentions.members.first()
- if (!message.member.hasPermission('MANAGE_MESSAGES')) return message.channel.send("Vous n'avez pas la permission d'utiliser cette commande.")
- if (!member) return message.channel.send("Membre introuvable")
- if (member.highestRole.calculatedPosition >= message.member.highestRole.calculatedPosition && message.author.id !== message.guild.ownerID) return message.channel.send("Vous ne pouvez pas unwarn ce membre.")
- if (member.highestRole.calculatedPosition >= message.guild.me.highestRole.calculatedPosition || member.id === message.guild.ownerID) return message.channel.send("Je ne pas unwarn ce membre.")
- if (!warns[member.id]|| !warns[member.id].length) return message.channel.send("Ce membre n'a actuellement aucun warns.")
- warns[member.id].shift()
- fs.writeFileSync('./warns.json', JSON.stringify(warns))
- message.channel.send("Le dernier warn de " + member + " a été retiré :white_check_mark:")
- }
- })
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement