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 ms = require('ms')
- const fs = require('fs')
- const bot = new Discord.Client();
- const warns = JSON.parse(fs.readFileSync('warns.json'))
- let prefix = '!';
- client.login("NjA2ODc2OTI1NTYyMDYwOTM3.XURcgQ.K8KYebc9YzI02LifD79NDXG3Dug");
- client.on('error', (error) => {
- console.log(error)
- })
- client.on('ready', function () {
- console.log('Je suis pret chef !')
- client.user.setActivity("")
- })
- client.on("message", async function (message) {
- let args = message.content.split(/\s/);
- let cmd = args[0];
- if (!message.guild) return
- 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 :x:")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un membre :x:")
- 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 :x:")
- let reason = args.slice(2).join(' ')
- if (!reason) return message.channel.send("Veuillez indiquer une raison :x:")
- 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 :x:")
- let member = message.mentions.members.first()
- if (!member) return message.channel.send("Veuillez mentionner un membre :x:")
- 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 warns :x:"))
- .setTimestamp()
- message.channel.send(embed)
- }
- //Les mots interdits :
- let blacklisted = ['fdp', 'ntm', 'connard', 'pute', 'https://discord.gg/', 'pornhub.com', 'putain', 'ta gueule', 'nique', 'salope', 'PD', 'batard', 'putin', 'enfoiré', 'connare', 'fils de pute', 'bâtard', 'bicot', 'conasse', 'couille molle', 'débile', 'ducon', 'dugland', 'enculé', 'fachiste', 'imbécile', 'lavette', 'bite', 'baisable', 'baise', 'baiser', 'bander ', 'branler', 'branlette', 'bordel', 'burnes', 'chatte', '(sexe)', 'chiant(e)', 'chiasse',
- 'chier', 'chiottes', 'con', 'conne', 'fils de pute', ];
- //Il va chercher les mots
- let foundInText = false;
- for (var i in blacklisted) {
- if (message.content.toLowerCase().includes(blacklisted[i].toLowerCase())) foundInText = true;
- }
- if (foundInText) { //Contenu du message du bot qui supprime et envoie au salon nommer "logs" le message contenant l'insulte
- message.delete();
- }
- if(cmd.toLowerCase() == `${prefix}giveaway`){
- var item = "";
- var time;
- var winnerCount
- //$giveaway 1(winnerscount) 60(60secondes) item I want to $giveaway
- for (var i = 3; 1 < args.length; i++){
- item += (args[i] + " ");
- }
- winnerCount = Number(args[1]);
- time = Number(args[2]);
- var embed = new Discord.RichEmbed();
- embed.setDescription(item);
- var embedSent = await message.channel.send(embed);
- embedSent.react("🎉");
- setTimeout(function() {
- var peopleReacted = embedSent.reactions.get("🎉").users.array();
- var index = Math.floor(Math.random() * peopleReacted.length);
- var winners = [];
- var winnerMessage = "";
- for (var i = 0; i < winnerCount; i++){
- winners.push(peopleReacted[index]);
- index = Math.floor(Math.random() *peopleReacted.length);
- }
- for (var i = 0; i < winners.length; i++){
- if (winners[i].id == bot.user.id){
- winners[i].slice(i, 1);
- continue;
- }
- winnerMessage += (winners[i].toString() + " ");
- }
- var haveHas = "has";
- if (winners.length == 1){
- haveHas = "has";
- }
- else {
- haveHas = "have";
- }
- message.channel.send(winnerMessage + " " + haveHas + ` won ${item}`);
- }, time * 1000);//time parameter is in miliseconds so we're converting seconds to miliseconds
- }
- if(args[0].toLowerCase()===prefix + 'tempban') {
- let banreason = args.slice(2).join(" ");
- if (!message.member.hasPermission('BAN_MEMBERS')) return message.channel.send('Vous n\'avez pas la permission d\'utiliser cette commande :x:')
- let member = message.mentions.members.first()
- let params = message.content.split(" ").slice(1);
- let time = params [1];
- 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(!time) return message.reply("Veuiller spécifier un temps de ban :x:");
- if (!member.bannable) return message.channel.send('Je ne peux pas bannir cet utilisateur :x:')
- if(!reason) return message.channel.send("Veuillez donner une raison :x:")
- message.guild.ban(member, ms(ms(time), {long: true}))
- message.channel.send('*' + member.user.username + '* a été banni '+ms(ms(time), {long: true})+' pour : **'+reason+'** :white_check_mark:')
- setTimeout(function(){
- message.guild.unban(member.user);
- message.channel.send(`${member.user} a été **unban** :white_check_mark:`)
- },ms(time));
- }
- 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 :x:')
- let member = message.mentions.members.first()
- if (!member) return message.channel.send('Veuillez mentionner un utilisateur :x:')
- if(!banreason) return message.channel.send("Veuillez donner une raison :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 :x:')
- message.guild.ban(member)
- message.channel.send('*' + member.user.username + '* a été banni pour '+banreason+' :white_check_mark:')
- }
- if(args[0].toLocaleLowerCase() === prefix +'help'){
- if(args[1]) return message.channel.send("Syntaxe incorrecte, essayez plutôt `!help` :x:")
- let embed = new Discord.RichEmbed()
- .setColor('#d06b00')
- .setThumbnail('https://image.noelshack.com/fichiers/2019/31/5/1564761970-larmesbot.jpg')
- .setTitle("**Page d'aide Modération**")
- .addField('!mute <pseudo> <raison>','Mute un joueur indéfiniment.',true)
- .addField('!tempmute <pseudo> <temps> <raison>','Tempmute un utilisateur pendant une durée déterminée.',true)
- .addField('!unmute <pseudo>','Unmute un utilisateur mute ou tempmute.',true)
- .addField('!ban <pseudo> <raison>', 'Banni un utilisateur indéfiniment.',true)
- .addField('!tempban <pseudo> <temps> <raison>','Tempban un utilisateur pendant une durée déterminée.',true)
- .addField('!clear <nombre>','Clear un certain nombre de message. Il ne faut pas dépasser 100.',true)
- .addField('!kick <pseudo> <raison>','Kick un utilisateur.')
- .addField('!infractions <pseudo>',"Voir les warns d'un Utilisateur.")
- .addField('!warn <pseudo> <raison>','Avertir un Utilisateur.')
- .setFooter('LarmesBot Bot | Dev by Elena#4939')
- message.channel.send({embed})
- }
- 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 :x:')
- 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 exclure cet utilisateur :x:')
- if (!member.kickable) return message.channel.send('Je ne peux pas exclure cet utilisateur :x:')
- if(!reason) return message.channel.send("Veuillez donner une raison :x:")
- member.kick()
- message.channel.send('*' + member.user.username + '* a été exclu pour : **'+reason+'** :white_check_mark:')
- }
- if(args[0].toLowerCase()===prefix + 'clear'){
- let verifynumber = isNaN(args[0])
- if(!message.guild.member(message.author).hasPermission("MANAGE_MESSAGES")) return message.channel.send('Vous n\'avez pas la permission d\'utiliser cette commande :x:')
- if(!args[0]) return message.channel.send('Syntaxe : `!clear <nombre>` :x:')
- if(verifynumber === true ) return message.channel.send('Veuillez indiquer **un nombre** :x:')
- if(args[0] > 100) return message.channel.send('Veuillez indiquer un nombre **inférieur ou égal à 100** :x:')
- message.channel.bulkDelete(args[0]).then(() =>{
- message.channel.send(`**${args[0]} messages** supprimés :white_check_mark: `)
- message.channel.bulkDelete(1)
- })
- }
- if(args[0].toLowerCase()===prefix + 'tempmute') {
- let reason = args.slice(3).join(" ");
- 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 :x:`);
- if(!member) return message.reply("Veuillez mentionner un utilisateur :x:");
- let muteRole = message.guild.roles.find("name", "muted");
- if(!muteRole) return message.reply("Le grade muted n'est pas trouvé :x:")
- if(!reason) return message.channel.send("Veuillez indiquer **une raison** :x:")
- let params = message.content.split(" ").slice(1);
- let time = params [1];
- if(!time) return message.reply("Veuiller spécifier un temps de mute :x:");
- if(member.roles.has(muteRole.id)) return message.channel.send(`${member.user} est **déjà mute** :x:`);
- let verifytime = isNaN(args[2])
- if(verifytime === false) return message.channel.send('Veuillez utiliser un temps en **secondes (s), minutes (m), days (d)** :x:')
- if(!(time.includes('0') || time.includes('1') || time.includes('2') || time.includes('3') || time.includes('4') || time.includes('5') || time.includes('6') || time.includes('7') || time.includes('8') || time.includes('9'))) return message.channel.send('(erreur ou jai du mal) Veuillez utiliser un temps en **secondes (s), minutes (m), days (d)** :x:')
- if(!(time.includes('s') || time.includes('d') || time.includes('h') || time.includes('m'))) return message.channel.send('Veuillez utiliser un temps en **secondes (s), minutes (m), days (d)** :x:')
- member.addRole(muteRole.id);
- message.channel.send(`${member.user} a été **mute** pendant **${ms(ms(time), {long: true})}** pour** ${reason}** par **${message.author}** :white_check_mark:`)
- setTimeout(function(){
- member.removeRole(muteRole.id);
- message.channel.send(`${member.user} a été **unmute** :white_check_mark:`)
- },ms(time));
- }
- if(args[0].toLowerCase()===prefix + 'unmute') {
- 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 :x:`);
- if(!member) return message.reply("Veuillez mentionner un utilisateur :x:");
- let muteRole = message.guild.roles.find("name", "muted");
- if(!muteRole) return message.reply("Le grade muted n'est pas trouvé, impossible de l'enlever à l'utilisateur :x:")
- if(!member.roles.has(muteRole.id)) return message.channel.send(`${member.user} n'est **pas mute** :x:`);
- member.removeRole(muteRole.id);
- message.channel.send(`${member.user} a été **unmute** par **${message.author}** :white_check_mark:`)
- }
- if(args[0].toLowerCase()===prefix + 'mute') {
- let reason = args.slice(2).join(" ");
- 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 :x:`);
- if(!member) return message.reply("Veuillez mentionner un utilisateur :x:");
- let muteRole = message.guild.roles.find("name", "muted");
- if(!muteRole) return message.reply("Le grade muted n'est pas trouvé, impossible de l'enlever à l'utilisateur :x:");
- if(!reason) return message.channel.send("Veuillez indiquer **une raison** :x:")
- if(member.roles.has(muteRole.id)) return message.channel.send(`${member.user} est **déjà mute** :x:`);
- member.addRole(muteRole.id);
- message.channel.send(`${member.user} **a été mute** par ${message.author} pour **${reason}** :white_check_mark:`);
- }
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement