首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不适用的distube滤波器

不适用的distube滤波器
EN

Stack Overflow用户
提问于 2022-05-11 05:58:59
回答 1查看 155关注 0票数 0

我试图使用distube创建一个不和谐的斜杠命令筛选器,但是当我使用斜杠命令时,它没有应用我选择的筛选器,而是在应用筛选器时发送嵌入。

节点: v17.7.2

纠纷: ^13.2.0

有人能帮我或告诉我为什么过滤器不适用于当前的音乐在vc?

谢谢

代码语言:javascript
复制
const { MessageEmbed } = require('discord.js');
const ee = require('../../config.json');

module.exports = {
    name: 'filter',
    description: 'Add filter.',
    usage: 'filter',
    options: [
        {
            name: 'preset',
            description: 'Filters to add.',
            type: 'STRING',
            required: true,
            choices: [
                {
                    name: 'BassBoost',
                    value: 'bassboost'
                },
                {
                    name: 'Nightcore',
                    value: 'nightcore'
                },
                {
                    name: 'Vaporwave',
                    value: 'vaporwave'
                }
            ]
        }
    ],

    run: async(client, interaction, args) => {
        const filterss = interaction.options.getString('preset');
        const queue = client.distube.getQueue(interaction);

        let player = client.distube.filters;

        if(!queue) {
            return interaction.followUp({embeds: [
                new MessageEmbed()
                    .setColor(ee.color)
                    .setAuthor({name: 'Error', iconURL: 'https://i.imgur.com/81ig9jl.jpg'})
                    .setDescription('No songs are playing!')
            ]})
        }

        let thing = new MessageEmbed().setColor(ee.color);

        if (filterss == "nightcore") {
            thing.setDescription("✅ | Nightcore filter is now active!");
            player.nightcore = true;
        } else if (filterss == "bassboost") {
            thing.setDescription("✅ | BassBoost filter is now on!");
            player.bassboost = true;
        } else if (filterss == "vaporwave") {
            thing.setDescription("✅ | Vaporwave filter is now on!");
            player.vaporwave = true;
        }
        return interaction.followUp({ embeds: [thing] });
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-11 06:43:58

根据我在文档中可以找到的内容,建议使用.setFilter()而不是调用client.distube.filters.<filter> = true

我会尝试更改您的run代码来代替它,看看它是否有效:

代码语言:javascript
复制
run: async(client, interaction, args) => {
    // Your queue check code here

    let thing = new MessageEmbed().setColor(ee.color);

    if (filterss == 'nightcore') {
        thing.setDescription('✅ | Nightcore filter is now active!');
        client.distube.setFilter(interaction, filterss);
    } else if (filterss == 'bassboost') {
        thing.setDescription('✅ | BassBoost filter is now on!');
        client.distube.setFilter(interaction, filterss);
    } else if (filterss == 'vaporwave') {
        thing.setDescription('✅ | Vaporwave filter is now on!');
        client.distube.setFilter(interaction, filterss);
    }
    return interaction.followUp({
        embeds: [thing],
    });
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72196063

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档