Initial commit
This commit is contained in:
28
commands/core/choose.js
Normal file
28
commands/core/choose.js
Normal 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
22
commands/core/help.js
Normal 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
17
commands/core/ping.js
Normal 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
96
commands/core/todo.js
Normal 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));
|
||||
};
|
17
commands/core/yttogether.js
Normal file
17
commands/core/yttogether.js
Normal 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**`);
|
||||
|
||||
});
|
||||
},
|
||||
};
|
Reference in New Issue
Block a user