Ajout du Bot
This commit is contained in:
		
							
								
								
									
										17
									
								
								events/message/directMessage.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								events/message/directMessage.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,17 @@
 | 
			
		||||
const { MessageEmbed } = require("discord.js");
 | 
			
		||||
 | 
			
		||||
module.exports = (client, message) => {
 | 
			
		||||
    const user = message.author;
 | 
			
		||||
    if (user.bot) return;
 | 
			
		||||
 | 
			
		||||
    const embed = new MessageEmbed()
 | 
			
		||||
        .setAuthor(`${user.username} (${user.id})`)
 | 
			
		||||
        .setColor("#ffa500")
 | 
			
		||||
        .setDescription(`**Action**: ouverture ticket\n**Raison**: ${message.content}\nUtilisateur ${user}`)
 | 
			
		||||
        .setThumbnail(user.avatarURL())
 | 
			
		||||
        .setTimestamp()
 | 
			
		||||
        .setFooter(message.author.username, message.author.avatarURL());
 | 
			
		||||
 | 
			
		||||
    user.send("Nous avons reçu votre ticket, on vous répondra d'est que possible !");
 | 
			
		||||
    client.channels.cache.get('815483099034943488').send(embed);
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										92
									
								
								events/message/message.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								events/message/message.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,92 @@
 | 
			
		||||
const { Collection } = require('discord.js');
 | 
			
		||||
 | 
			
		||||
module.exports = async (client, message) => {
 | 
			
		||||
    const settings = await client.getGuild(message.guild);
 | 
			
		||||
    //const dbUser = await client.getUser(message.member);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    if (message.channel.type === "dm") return client.emit("directMessage", message);
 | 
			
		||||
    if (message.author.bot) return;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    // reaction à tous les messages des membres via leur ID sur une guilde 
 | 
			
		||||
    //if (message.guild.id == "720405633228079185") {
 | 
			
		||||
    //if (message.member.id == "475730695889879071") return message.channel.send(`${message.author.username} Au nom de <@721861508723638383> et de mon plaisir je te botte le cul https://tenor.com/view/funny-cut-throat-black-and-white-im-gonna-kill-you-kill-you-gif-7390009 !`);
 | 
			
		||||
    //if (message.member.id == "327193195085824001") return message.channel.send(` Chef oui Chef ! <@327193195085824001>`);
 | 
			
		||||
    //if (message.member.id == "721861508723638383") return message.channel.send(`${message.author.tag} Nous te vengerons https://tenor.com/view/running-hug-embrace-i-miss-you-good-to-see-you-again-gif-15965620 `);
 | 
			
		||||
  
 | 
			
		||||
 | 
			
		||||
  // reaction à tous les messages des membres via leur ID
 | 
			
		||||
  //if (message.member.id == "319931881741352980") return message.channel.send(` Nous t'avons lu haut GRANDE <@319931881741352980> :green_heart:`);
 | 
			
		||||
  
 | 
			
		||||
  /*if (!dbUser) await client.createUser({
 | 
			
		||||
      guildID: message.member.guild.id,
 | 
			
		||||
      guildName: message.member.guild.name,
 | 
			
		||||
      userID: message.member.id,
 | 
			
		||||
      username: message.member.user.tag,
 | 
			
		||||
  });*/
 | 
			
		||||
 | 
			
		||||
    if (!message.content.startsWith(settings.prefix)) return;
 | 
			
		||||
 | 
			
		||||
    const lantium = message.member.id == "327193195085824001";
 | 
			
		||||
 | 
			
		||||
    if (message.channel.send === true );
 | 
			
		||||
 | 
			
		||||
    const args = message.content.slice(settings.prefix.length).split(/ +/);
 | 
			
		||||
    const commandName = args.shift().toLowerCase();
 | 
			
		||||
    const user = message.mentions.users.first();
 | 
			
		||||
 | 
			
		||||
//si la commande n'existe pas, le bot ne réagit pas sauf si il y a les aliases 
 | 
			
		||||
    const command = client.commands.get(commandName) || client.commands.find(cmd => cmd.help.aliases &&  cmd.help.aliases.includes(commandName));
 | 
			
		||||
    if (!command) return;
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
// vérification des permissions avant exécution des commandes qui contiennent permissions dans comma,d.help.permissions
 | 
			
		||||
    if (command.help.permissions && !message.member.hasPermission('BAN_MEMBERS') && message.author.id !== "327193195085824001" && message.author.id !== "761547180724060181") return message.reply("Tu n'as pas les permissions pour taper cette commande ! https://tenor.com/view/tiananmen-square-prostest-tank-block-gif-4724995");
 | 
			
		||||
 | 
			
		||||
// pour utiliser le args dans le help des commandes + explication de comment utiliser la commande
 | 
			
		||||
    if (command.help.args && !args.length) {
 | 
			
		||||
      let noArgsReply = `il me faut des arguments pour cette commande, ${message.author}!`;
 | 
			
		||||
    
 | 
			
		||||
    if (command.help.usage) noArgsReply += `\nVoici comment utiliser la commande: \`${settings.prefix}${command.help.name} ${command.help.usage}\``
 | 
			
		||||
    
 | 
			
		||||
    return message.channel.send(noArgsReply);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
if (command.help.isUserAdmin && !user) return message.reply("Il faut mentionner un utilisateur");
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 // vérification des permissions avant exécution des commandes qui contiennent permissions dans comma,d.help.permissions
 | 
			
		||||
 if (command.help.isUserAdmin && message.guild.member(user).hasPermission('BAN_MEMBERS')) return message.reply(`Tu ne peux pas utiliser la commande ${command.help.name} sur cet utilisateur !`);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// pour le cooldowns + utilisation de cooldown dans le help des commandes
 | 
			
		||||
    if (!client.cooldowns.has(command.help.name)) {
 | 
			
		||||
      client.cooldowns.set(command.help.name, new Collection());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    const timeNow = Date.now();
 | 
			
		||||
    const tStamps = client.cooldowns.get(command.help.name);
 | 
			
		||||
//permet de définir par défault 5 secondes entre toutes les commandes, sauf si cooldown est modifié dans une commande
 | 
			
		||||
    const cdAmount = (command.help.cooldown || 5) * 1000;
 | 
			
		||||
 | 
			
		||||
//vérifie si l'utilisateur est dans la collection
 | 
			
		||||
    if (tStamps.has(message.author.id)) {
 | 
			
		||||
      const cdExpirationTime = tStamps.get(message.author.id) + cdAmount;
 | 
			
		||||
 | 
			
		||||
      if (timeNow < cdExpirationTime) {
 | 
			
		||||
        timeLeft = (cdExpirationTime - timeNow) / 1000;
 | 
			
		||||
        return message.reply(`Merci d'attendre ${timeLeft.toFixed(0)} seconde(s) avant de ré-utiliser la commande \`${command.help.name}\`.`);
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
//permet de supprimer le membre de la collection si le cooldowns est fini 
 | 
			
		||||
    tStamps.set(message.author.id, timeNow);
 | 
			
		||||
    setTimeout(() => tStamps.delete(message.author.id), cdAmount);
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    command.run(client, message, args, settings);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
//, dbUser
 | 
			
		||||
		Reference in New Issue
	
	Block a user