Installation
- 1: rendez vous sur ce site et choisissez le bon lien ( pas besoin d'expliquer ça j'espère :/ )
- 2: Installer un logiciel d'édition de text ( on utilise Visual Studio Code ici
- 3: Créer un dossier ( metter le nom de que vous voulez )
- 4: Ouvrez le avec Visual Studio ( Fichier -> Ouvrir un dossier -> votre dossier )
- 5: Ouvrez le terminal ( il y a une barre en bas de vsc, vous avez juste à la tiré vers le haut ) et marquer:
npm init -y
- 6: Installer le module discord ( je ne fais pas de handler dans ce tuto, je mettrai peut être plus tard 😉 ), dans le terminal marquer cette fois-ci:
npm i discord.js@latest
Commencement
Etape par étape on va setup le bot
Etape 1: le créer
Rendez vous sur ce site et suivez les étapes
1: Créer une nouvelle application
Donner lui un nom ( n'importe le quel ) et cliquer sur créer
Ensuite aller dans l'onglet bot Puis "Add Bot"
Cliquer sur copier sur copier ( token ) et garder le quelque part ( ne jamais le partager )
Aller maintenant dans l'onglet OAuth2 puis cocher bot et da,s l'onglet qui vient d'apparaitre Administrateur, puis cliquer sur copy
et enfin ouvrer le lien dans un nouvel onglet et suivez les instructions à l'écran
2 Démarrer le bot
Retourner sur Visual Studio Code et créer un fichier appeler index.js. Ensuite marquer le code suivant:
const Discord = require("discord.js");
const client = new Discord.Client()
Ce code permet de faire appel au module discord.js et ensuite créer un nouveau client ( bot )
Ensuite pour le démarrer rajouter le code suivant:
client.login("Le token précédemment copier")
client.on("ready", () => {
console.log("Le bot "+client.user.tag+" et maintenant en ligne")
// ceci permet de prévenir lorsque le bot est en ligne
})
Et retourner dans le terminal pour marquer node index
Et maintenant vérifier si le bot est en ligne, s'il n'est pas en ligne vérifier si vous n'avez pas oublier une étape / oublier d'enregistrer
Si tout est bon vous pouvez passer à la prochaine étape
Première commande
- Pour faire cette commande vous aurez juste besoin de rajouter du text dans l'index.js
client.on("message", message => {
console.log("Un message a été envoyé") // si vous ne voyez pas ça dans la console c'est qu'il y a un problème
if(message.content.startsWith(prefix)) { // si le message commence par le prefix
if(message.author.bot) return; // si l'autheur du message est un bot ça empêche le code de fonctionner
if(!message.guild) return; // si le message n'est pas envoyé dans une guild
// maintenant on va faire un petit "handler"
const prefix = "/" // metter votre prefix ici, sans espaces / caractères spéciaux
const messageArray = message.content.slice(prefix.length).trim().split(" ") // retire le prefix du message, enlève les espaces de trop, sépare le message tout les espaces et nous donne un array
const args = messageArray.slice(1) // ceci sera la variable des argument, retire le nom de la commande de l'array
const cmd = messageArray.shift().toLowerCase() // ceci sera la variable de la commande executer
/*
Par exemple:
/foo hello world
cmd = foo
args = hello world
*/
if(cmd == "ping") { // ici si la commande = ping alors il va executer ce qu'il y a dans les {}
return message.channel.send("Pong")
}
if(cmd == "say") {// ici si la commande = say alors il va executer ce qu'il y a dans les {}
if(!args[0]) return message.channel.send("Vous n'avez pas préciser ce que je dois envoyer") // si l'utilisateur n'a pas mit d'arguments ça arrête le code ici et renvoie le message d'erreur
return message.channel.send(args.join(" ")) // renvoie les arguments
}
}
})