Besoins d'aide, Bot Discord en JavaScript

Fermé
Quentin823 Messages postés 45 Date d'inscription mercredi 30 octobre 2013 Statut Membre Dernière intervention 18 août 2018 - 18 août 2018 à 21:06
yanb3 Messages postés 122 Date d'inscription samedi 30 mai 2015 Statut Membre Dernière intervention 23 août 2018 - 23 août 2018 à 17:47
Bonjour,

J'ai besoins de votre aide pour la réalisation d'une fonction que remplira mon Bot Discord.
Je vous explique le topo :
Le bot pourra nous faire jouer à un jeu de devinette (deviner un chiffre de 1 à 10 pour le moment).
Lorsque l'on demande on bot de jouer, celui ci sélectionne un nombre aléatoire entre 1 et 10, puis le stock dans une variable appelé "nbjeu". Or, jusqu'ici tout va bien.

Là où ça coince, c'est lorsque l'on doit donner une réponse au Bot. Celui ci doit nous dire si l'on répond correctement ou pas.
J'ai donc utilisé une fonction if et else. Si le nombre est bon alors bravo, sinon, perdu.
Cependant, le programme n'attend pas que l'on rentre un nombre, ou que l'on envoie un message. Il suit donc la logique et répond direction perdu, vu que le if n'est pas respecté.

J'ai donc, pensé à utilisé while, tant que le nombre est faux, perdu recommence, puis si le nombre est vrai, alors bravo. MAIS, c'est ici que j'ai besoins de vous, une fois la boucle while écrite, j'ai beau écrire un message, mais rien ne se passe, le code reste bloqué au while, malgré le fait que j'écrive un nombre faux ou vrai !



Voici le code, j'attends vos réponses avec impatientes !
Je reste à votre disposition pour les questions !

MERCIIII
A voir également:

1 réponse

yanb3 Messages postés 122 Date d'inscription samedi 30 mai 2015 Statut Membre Dernière intervention 23 août 2018 19
23 août 2018 à 17:47
Bonjour,
vous devriez éviter d'utiliser un event dans un event, utilisez plutôt des conditions.

isingame = false;

client.on("message", message => {

    if(message.content.toLowerCase() == "jeux") {
        isingame = true;
        var nbjeu = Math.floor(Math.random() * 10) + 1);
        console.log(nbjeu);
        message.channel.send({embed : {
            color: 15844367,
            description: "Je suis prêt ! :wink: \n Trouve le numéro auquel je pense entre 1 et 10 !"}});
    } else if(isingame) {
        if(message.content == nbjeu) {
            message.channel.send('Bien joué bg !\nPour jouer de nouveau, écris "Jeux"');
        } else {
            message.channel.send('Perdu... Ré-essaye !');
        }
    }

});


En espérant vous avoir été utile.
0