Bot-des-2MICS_Aka-le-Toutou/main.js

103 lines
4.7 KiB
JavaScript

const Discord = require('discord.js');
const client = new Discord.Client;
const {token} = require('../setup.json');
const fs = require('fs')
client.once('ready', () => {
console.log('Initialised');
})
client.login(token);
function line (){
console.log("========================================================================================================================\n");
}
var Embed = new Discord.MessageEmbed()
.setColor('#29c107')
.setTitle("**Hello, c'est moi le bot des 2MICs 😉**")
.setURL('https://www.youtube.com/watch?v=dQw4w9WgXcQ')
.setThumbnail('https://static.vecteezy.com/system/resources/previews/000/481/309/original/hacker-code-realistic-composition-vector.jpg')
.setDescription("Bonjour, 👋 \n Si vous lisez ce message c'est probablement que vous êtes sur le serveur des **2MICs** de l'INSA et que mon code spaghetti vous a remarqué. 🍝 \n Nous vous invitons à rejoindre le serveur en allant sur le rolemenu avec ce lien: \n https://discord.com/channels/754966858884579409/754966859278712875/754968494684241960). \n Si vous êtes déjà connecté sur le serveur avec un **autre compte** 🕵️‍♀️ nous alons vous demander de faire partir celui-ci (ne gardez qu'un seul compte svp 🙏). \n Si vous êtes un **enseignant** 👩‍🏫 n'ésitez pas à prendre contact avec l'administrateur du server (auteur du message https://discord.com/channels/754966858884579409/754966859278712875/754968494256422962). \n Enfin si vous ne faites pas partie de la 2MIC 🤷‍♂️ nous vous encourageons à quitter le serveur 😉", true)
.addField("***⚠Important: ⚠***","**À noter que vous serez automatiquement Kick après 3 messages sans action de votre part🙃** mais pouvez revenir si besoin avec le lien suivant: https://discord.gg/vmGH4dG en pensant bien évidement à choisir votre classe cette fois-ci 🙃")
.setImage('https://www.pixelstalk.net/wp-content/uploads/2016/06/Matrix-Backgrounds-Images-Download.jpg')
let i=0;
let j=0;
// message.guild.members.cache.forEach(function(z) {
// List.forEach(function(z)
async function spam(message){
const role1 = message.guild.roles.cache.find(({name}) => name === '1');
const role2 = message.guild.roles.cache.find(({name}) => name === '2');
const role3 = message.guild.roles.cache.find(({name}) => name === '3');
if(message.member.hasPermission('ADMINISTRATOR')){
//console.log(message.guild.memberCount);
//console.log(message.guild.members);
const z = await message.guild.members.fetch();
console.log(z);
z.forEach(function (y) {
console.log(y.displayName);
if (!y.roles.cache.find( elem => elem.name == 'Élève' || elem.name == 'Professeurs')) {
if(!y.user.bot){
console.log(z.displayName);
console.log("2");
if (!y.roles.cache.find( elem => elem.name == '1' || elem.name == '2' || elem.name == '3')) {
y.roles.add(role1);
}if (y.roles.cache.find( elem => elem.name == '1')){
y.roles.add(role2);
}if(y.roles.cache.find( elem => elem.name == '2')){
y.roles.add(role3);
}if(y.roles.cache.find( elem => elem.name == '3')){
console.log("3");
y.kick("regardez vos DM ;)");
console.log("14");
}else{
y.send(Embed);
}
i++;
}
} else {
j++
}
});
message.channel.send(i + ' members targeted');
i=0;
message.channel.send(j + ' members in server');
j=0;
line();
}
}
function add(message){
if(message.member.hasPermission('ADMINISTRATOR')){
const role = message.guild.roles.cache.find(({name}) => name === 'Élève')
console.log(role)
message.guild.members.cache.forEach(function(z) {
if (z.roles.cache.find( elem => elem.name == 'Groupe A' || elem.name == 'Groupe B' || elem.name == 'Groupe C' || elem.name == 'Groupe D' || elem.name == 'Groupe Fas' ) && !z.roles.cache.find(elem => elem.name == "Élève")) {
z.roles.add(role);
console.log(z.displayName);
i++;
}
});
message.channel.send(i + ' members targeted');
i=0;
line();
}
}
client.on('message', msg => {
if(msg.content == '/spam'){
spam(msg);
}
if(msg.content == '/add'){
add(msg).then(() => {});
}
})