earth-k-plugin icon indicating copy to clipboard operation
earth-k-plugin copied to clipboard

为原神语音功能添加引用警告,避免用户误触发语音消失bug

Open CUZNIL opened this issue 2 years ago • 0 comments

输入图片说明 如图,我自己参考小飞插件手动添加了这项功能,以免Win系统频繁触发语音bug(这玩意一旦触发真挺烦人的。。) 改写代码如下:(改写文件:genshinSpeak.js输入图片说明 第一张图是猜语音那里的改写 测试 第二张图是角色语音部分的改写 因为我个人经常在电脑听语音就稍微改了下,不然真的很容易误触发BUG 我是想大佬觉得这个改写没啥问题就也加进去,但是不知道怎么提交我就放issue里了 下面是添加的代码段

            let url = wb[Number(z)]
            if (yykg) {
                //使用高清语音
                let result = await this.reply(
                    await uploadRecord(url, 68714, 0)
                )
                try {
                    let message = await Bot.getMsg(result.message_id);
                    if (Array.isArray(message.message)) message.message.push({ type: 'text', text: '[语音]' });
                    (e.group || e.friend)?.sendMsg('Win系统别点,否则会导致所有语音无声音!', message);
                } catch (err) { }
            } else {
                //不使用高清语音
                let voice = await segment.record(url)
                e.reply(voice)
            }
        let url = wb[Number(i - 1)]
        if (yykg) {
            //使用高清语音
            let result = await this.reply(
                await uploadRecord(url, 68714, 0)
            )
            try {
                let message = await Bot.getMsg(result.message_id);
                if (Array.isArray(message.message)) message.message.push({ type: 'text', text: '[语音]' });
                (e.group || e.friend)?.sendMsg('Win系统别点,否则会导致所有语音无声音!', message);
            } catch (err) { }
        } else {
            //不使用高清语音
            let voice = await segment.record(url)
            e.reply(voice)
        }

另外就是 要顺便注释掉或者删掉原来实现语音发送的部分 具体来讲就是: 131行开始

            if (yykg == 1) {
                let msg2 = await uploadRecord(wb[Number(z)], 0, false)
                e.reply(msg2)

            } else {
                let msg2 = await segment.record(wb[Number(z)])
                e.reply(msg2)


            }

336行开始

        if (yykg == 1) {
            let msg2 = await uploadRecord(wb[Number(i - 1)], 0, false)
            e.reply(msg2)

        } else {
            let msg2 = await segment.record(wb[Number(i - 1)])
            e.reply(msg2)

        }

CUZNIL avatar Nov 20 '22 10:11 CUZNIL