Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Correction chapitre 4 #5

Closed
DrOwlFR opened this issue Dec 22, 2021 · 3 comments
Closed

Correction chapitre 4 #5

DrOwlFR opened this issue Dec 22, 2021 · 3 comments
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed
Milestone

Comments

@DrOwlFR
Copy link
Collaborator

DrOwlFR commented Dec 22, 2021

Les commandes messages ont étées été les premières a à apparaître sur discord. Bien qu'aujourd'hui elles aient étées été remplacées majoriatirement majoritairement par les "slash-commands" elles restent utilisées dans certains cas. Etant Étant donné que discord recommande de ne pas les utiliser, nous n'en parlerons que brièvement dans ce chapitre.

  1. Modification de notre manager

Les message-commands ont besoins besoin d'un ~~prefix ~~ préfixe [...]

Nous allons ajouter une ligne prefix avec une chaine de caractères qui sera le prefixe préfixe de nos commandes.

Le manager finale devrait ressembler a à ceci :

On oublis n'oublie pas de sauvegarder notre fichier puis on peut le fermer.

  1. Création de la commande
    a. La structure de base

On va créer une commande de base grâce à la structure Command que on que l'on va importer de sheweny. Nous allons commencer par créer un nouveau fichier qui va contenir notre commande. Vous êtes libres d'appeler ce fichier comme vous le souhaitez du moment qu'il se situe dans le dossier commands commands . De plus, dans le dossier commands commands vous pouvez créer autant de sous-dossiers que vous le souhaitez.

 b. Importation et instanciation de la classe Command

Tout d'abord on importe la classe Command de la librairie Sheweny. Cette classe contient tous tout ce qui est nécéssaire nécessaire a à la création de n'importe quelle commande. On utilise le mot clé extends extends pour étendre la classe et pouvoir définir le code de nos fonctions.

[...]
Le type "SLASH_COMMAND" est une commande qui est appelée avec un slash. Le type "MESSAGE_COMMAND" est une commande qui est appelée avec un message. Le type "CONTEXT_MENU_USER" est une commande qui est appelée avec un menu contextuel d'un utilisateur. Le type "CONTEXT_MENU_MESSAGE" est une commande qui est appelée avec un menu contextuel d'un message.
(Je pense que faire une liste serait pas mal, c'est pas très bon en français de faire un bloc de répétition de phrase)

  • Le type "SLASH_COMMAND" : Il s'agit d'une commande qui est appelée par un slash ( / ).
  • Le "MESSAGE_COMMAND" : Comme son nom l'indique, elle est appelée par un message.
  • Le type "CONTEXT_MENU_USER" : Ici il s'agit d'une commande qui est appelée avec un menu contextuel d'un utilisateur (le menu qui s'affiche lorsque l'on fait un clic droit sur un utilisateur).
  • Le type "CONTEXT_MENU_MESSAGE" : Il s'agit en fait du même principe que le précédent type, mais cette fois pour un message.

Il existe d'autres options qui seront détaillez détaillées plus tard mais vous pouvez les retrouver dans la documentation de Sheweny : CommandOptions

 c. Fonction execute

[...] Pour les message-commands la fonction execute aura toujours un paramètre de type Message**.** On voit donc sur la documentation de discord.js que nous avons accès a à la fonction reply() ce qui nous permet de répondre à l'utilisateur.

Pour les fonctions, il Il (pour éviter la répétition) existe d'autres fonctions que execute() execute() mais nous aurons l'occasion d'en reparler plus tard.

Nous avons vu que la fonction prend un paramètre message quand la commande est de type MESSAGE_COMMAND. Cette classe est une classe Il s'agit d'une classe de discord.js, elle contient toutes les informations sur le message. Il est possible d'accéder a à beaucoup d'informations comme le serveur avec message.guild, le channel avec message.channel, le message contenu du message avec message.content, l'utilisateur avec message.author etc. Vous pouvez retrouver toutes les informations sur la documentation de discord.js : Message

@Smaug6739 Smaug6739 added documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed labels Dec 22, 2021
@Smaug6739
Copy link
Member

Merci pour cette correction, juste pour te dire, les trucs de code sont déja dans des `` (bloques de code), tu ne les as juste pas avec un copier coller 😉

@DrOwlFR
Copy link
Collaborator Author

DrOwlFR commented Dec 22, 2021

Ah merde oui c'est possible que je me sois embrouillé, désolé !

@Smaug6739 Smaug6739 added this to the Partie 1 milestone Dec 22, 2021
@Smaug6739
Copy link
Member

Chapitre corrigé

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants