Есть ли способ вызвать client.on? - PullRequest
0 голосов
/ 08 июля 2019

Я хочу создать своего рода игру-реакцию, и для нее нужны сообщение о функциях, реакции и пользователь, есть ли способ вызвать другую функцию client.on (в моем случае bot.on) из другой? (несущественные части кода отсутствуют)

первый клиент. На

второй клиент. На

подфункции

bot.on('message', function (message) {
    if (message.content.startsWith(prefix)) {
        var fetchedMessages = message.channel.fetchMessages({ limit: 99 });
        var args = message.content.substring(1).split(' ');
        var cmd = args[0];
        args = args.splice(1);
        switch (cmd) {
            case 'react':
                messageReactionAdd()
                break;

---------------------------------------------------------------------------

bot.on('messageReactionAdd', (message,reaction, user) => {
    minigames.reaction(message,user,reaction)
});

---------------------------------------------------------------------------

module.exports = {
    reaction: function (reaction,message) {
        var reacted =
        message.channel.send("Auf die Plätze").then(function(message){
            setTimeout(function () {message.edit("Fertig ?")  }, 5000)
            setTimeout(function () {message.edit("LOS!")  }, 10000)
            setTimeout(function () {message.react("?")  }, 10000)
            setTimeout(function () {message.edit("STOP ")  }, 17000)
            setTimeout(function () {  }, 1000)
        })
        if(reaction.emoji.name === "?") {
            console.log(reaction.users);
        }
    },

1 Ответ

0 голосов
/ 08 июля 2019

Discord.js Клиент действительно является экземпляром EventEmitter .emitter.on() присоединяет слушателя, который будет вызываться при отправке определенного события.Прежде всего, чтобы создать событие, используйте метод emitter.emit(), например, так ...

emitter.emit('event', ...parameters);

Например ...

bot.emit('messageReactionAdd', reaction, user);
...