如何只通过一次命令自动循环播放歌曲

时间:2020-04-05 16:21:21

标签: javascript loops bots discord discord.js

我做了一个循环命令。 发出命令后仅重复一次,并再次要求命令重复 第二次。

if(msg.content === '_loop'){
        let fetch = ops.active.get(msg.guild.id)
        if(!fetch.queue) return msg.channel.send("There is no song in the queue!")

        let ls = fetch.queue[0];
    //  cloning object
        const clone = JSON.parse(JSON.stringify(ls));
        msg.channel.send("Loop Enabled!")

        while (fetch.queue.length == 1) {
            fetch.queue.push(clone);
        }
    };

我知道它的错,它只在我发出命令时才循环,但我想让它在运行命令后不断循环。

我给了条件(fetch.queue.length == 1)

仅当我发出命令时,它会将歌曲添加到队列中。

如何做到这一点,使其只需要运行一次命令然后连续循环?

1 个答案:

答案 0 :(得分:0)

我认为这不是有效的方法,

如果ops.active是一个集合,则可以在其中切换循环

fetch.loop = !fetch.loop //if length == 1

我假设您正在使用connection.("end"),如果启用了循环, 将当前歌曲推送到那里