103 lines
4.7 KiB
JavaScript
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(() => {});
|
|
}
|
|
})
|