首页 > 解决方案 > 不和谐音乐机器人跳跃功能

问题描述

我正在为我的音乐机器人设计一个跳转功能。queue.connection.dispatcher.end('skipped')仅调用一次时,它会跳过一首歌曲,但是当我将其放入循环时,它会返回有关UnhandledPromiseRejectionWarning. 任何人都可以帮忙吗?

下面是跳转命令的代码:

const { MessageEmbed } = require('discord.js');

module.exports = {
    name: 'jump',
    aliases: [''],
    cooldown: 0,
    description: '',
    async execute(client, message, args, Discord) {
        const channel = message.member.voice.channel;
        if (!channel)
            return message.channel.send("You must be connected to a voice channel"
            );
            
                if (!args[0])
                return message.channel.send(
                  new MessageEmbed()
                    .setDescription(":x: No song number provided")
                    .setColor("RED")
                );
                if (isNaN(args[0]))
                return message.channel.send(
                  new MessageEmbed()
                    .setDescription(":x: **Args must be number [Example: -remove 2]**")
                    .setColor("RED")
                );
              
                let queue = message.client.queue.get(message.guild.id);
              if (queue.queue.length == 1)
                return message.channel.send(
                  new MessageEmbed()
                    .setDescription(
                      ":x: **Can't remove when only one song is playing, Use command stop**"
                    )
                    .setColor("RED")
                );
              if (args[0] > queue.queue.length)
                return message.channel.send(
                  new MessageEmbed()
                    .setDescription(":x: **The queue doesn't have that much songs**")
                    .setColor("RED")
                );
              if (!queue)
                return message.channel.send(
                  new MessageEmbed()
                    .setDescription(":x: **There are no songs playing in this server**")
                    .setColor("RED")
                );
            //   var name = queue.queue[args[0] - 1].name;
            //   queue.queue.splice(args[0] - 1);
             for (let i = 0; i < args[0]-1; i++) {
                queue.connection.dispatcher.end('skipped');
            }
            return message.channel.send(new MessageEmbed().setDescription("**Jumped**").setColor("PURPLE"))
    }}

这是我得到的错误

标签: javascriptdiscord.jsbots

解决方案


推荐阅读