Initial commit

This commit is contained in:
2022-04-03 04:34:37 +02:00
commit 0b6ed92a61
38 changed files with 2421 additions and 0 deletions

28
commands/core/choose.js Normal file
View File

@@ -0,0 +1,28 @@
const { MessageEmbed, MessageAttachment } = require("discord.js");
module.exports = {
name: 'choose',
aliases: [],
utilisation: '{prefix}choose <choix1>,<choix2>',
execute(client, message) {
const arguments = message.content.split(/,+/g);
arguments.shift().toLowerCase();
const Response = Math.floor(Math.random() * arguments.length);
//const attachment = new MessageAttachment("./assets/choose.gif");
const embed = new MessageEmbed()
embed.setColor('RANDOM')
embed.setTitle("Commande Choose")
embed.addField('Par les pouvoirs qui me sont conférés.', `Je choisi : **${arguments[Response]}**`)
embed.setTimestamp();
embed.setImage("https://media.discordapp.net/attachments/924807447372247050/951251866010931301/choose.gif");
message.channel.send({ embeds: [embed] });
},
};

22
commands/core/help.js Normal file
View File

@@ -0,0 +1,22 @@
const { MessageEmbed } = require('discord.js');
module.exports = {
name: 'help',
aliases: ['h'],
showHelp: false,
utilisation: '{prefix}help',
execute(client, message, args) {
const embed = new MessageEmbed();
embed.setColor('RED');
embed.setAuthor(client.user.username, client.user.displayAvatarURL({ size: 1024, dynamic: true }));
const commands = client.commands.filter(x => x.showHelp !== false);
embed.addField(`Enabled - ${commands.size}`, commands.map(x => `\`${x.name}${x.aliases[0] ? ` (${x.aliases.map(y => y).join(', ')})\`` : '\`'}`).join(' | '));
embed.setTimestamp();
message.channel.send({ embeds: [embed] });
},
};

17
commands/core/ping.js Normal file
View File

@@ -0,0 +1,17 @@
const ms = require('ms');
module.exports = {
name: 'ping',
aliases: [],
utilisation: '{prefix}ping',
async execute(client, message) {
const msg = await message.channel.send("Pong ! ");
msg.edit(`
Pong !
Latence du bot: ${msg.createdTimestamp - message.createdTimestamp}ms
Latence de l'API: ${Math.round(client.ws.ping)}ms
`);
},
};

96
commands/core/todo.js Normal file
View File

@@ -0,0 +1,96 @@
const ms = require("ms");
const fs = require("fs");
const path = require("path");
const uuid = require("uuid").v4;
const dbFileName = path.resolve(".", "utils", "todo.json");
let database = [];
module.exports = {
name: "todo",
aliases: ["todo"],
utilisation: "{prefix}todo <time> <salon> <message>",
async onStart(client) {
updateDatabase();
const currentTime = Date.now();
database.forEach((reminder) => {
const delay = reminder.time - currentTime;
if (delay < 0) {
setTimeout(() => {
const discordChannel = client.channels.resolve(reminder.channel);
discordChannel.send(
`La SNCF vous présente ses excuses pour le retard <@${reminder.author}> ! tu m'as demandé de te rappeler\n\`\`\`${reminder.message}\`\`\` `
);
updateDatabase();
database = database.filter((struct) => struct.uuid !== reminder.uuid);
saveDatabase();
}, 1000);
} else {
setTimeout(() => {
const discordChannel = client.channels.resolve(reminder.channel);
discordChannel.send(
`<@${reminder.author}>, tu m'as demandé de te rappeler\n\`\`\`${reminder.message}\`\`\` `
);
updateDatabase();
database = database.filter((struct) => struct.uuid !== reminder.uuid);
saveDatabase();
}, delay);
}
});
console.log("-> ON START !!!!! ça marche putain!");
},
async execute(client, message, args) {
let reveilTime = ms(args[0]);
const defaut = message.channel.id;
const channel = args[1].replace(/[^0-9]/g, "");
let salon = parseInt(channel) ? channel : defaut;
const reason = args.splice(salon == defaut ? 1 : 2).join(" ");
const reminderStruct = {
uuid: uuid(),
author: message.author.id,
time: Date.now() + reveilTime,
channel: salon,
guild: message.guild.id,
message: reason,
};
setTimeout(function () {
const discordChannel = message.guild.channels.cache.get(salon);
discordChannel.send(
`<@${reminderStruct.author}>, tu m'as demandé de te rappeler\n\`\`\`${reminderStruct.message}\`\`\` `
);
updateDatabase();
database = database.filter(
(struct) => struct.uuid !== reminderStruct.uuid
);
saveDatabase();
}, reveilTime);
//check if file todo.json content is empty
updateDatabase();
database.push(reminderStruct);
saveDatabase();
message.react("🤌");
message.react("👌");
},
};
const updateDatabase = () => {
if (fs.existsSync(dbFileName)) {
const fileContent = fs.readFileSync(dbFileName);
database.push(...JSON.parse(fileContent));
}
};
const saveDatabase = () => {
const foundUUIDs = [];
database = database.filter((struct) => {
if (!foundUUIDs.includes(struct.uuid)) {
foundUUIDs.push(struct.uuid);
return true;
}
return false;
});
fs.writeFileSync(dbFileName, JSON.stringify(database, null, 2));
};

View File

@@ -0,0 +1,17 @@
const { DiscordTogether } = require('discord-together');
client.discordTogether = new DiscordTogether(client);
module.exports = {
name: 'yttogether',
aliases: ['yttogether', 'yt'],
utilisation: '{prefix}yt',
execute(client, message) {
client.discordTogether.createTogetherCode(message.member.voice.channel.id, 'youtube').then(async invite => {
return message.channel.send(`Pour lancer l'activité merci de cliquer sur le lien suivant : ${invite.code} et pas sur le bouton **Jouer**`);
});
},
};