bangdream-ccg: BanG Dream!的猜猜歌!

在插件市场直接搜索bangdream-ccg即可体验喵!
这是我第一次接触ts语言(之前只学过一点点的java),在clone模仿别人的插件、询问ai并不断测试才完成了这份插件
(要不是看了别人的源码我这辈子都不知道??,?.,||=,??=这种东西www,现在看来我刚开始学的时候写的各种undefined判断好冗长啊啊啊啊)
本人是初学者,因此有哪些可以优化的地方或者说有更简单的写法欢迎指出喵!!!可能会由于疏漏存在一些bug,不过目前应该还算稳定(倒不如说bestdori更容易抽风)
实现流程和猜猜看插件bangbangcai和bangdream-cck类似,大致是这样的:

bangdream-ccg本身有两个缓存:pre和run,以及一个获取歌曲的方法
用户输入ccg->检查缓存pre是否有歌曲->有的话转移到缓存run并发送,没有的活获取歌曲存入缓存run再发送->获取歌曲存入pre

发送的时候注册监听器和定时器,每次接收消息的时候检查是否匹配缓存run中的answers来进行答案判断,答案正确或超时就直接取消监听器、定时器和清除缓存run

获取歌曲的话就是从bestdori拿歌曲数据然后用命令行调用ffmpeg直接切的(如果bestdori抽风那就用本地保存的json)

剩下的一些ccg.tips ccg.add ccg.del就是一些歌曲相关信息的变动和获取啦

相关数据存在了basedir目录下的data/bangdream-ccg和cache/bangdream-ccg

4 个赞

邦邦占领koishi :_:

3 个赞

邦邦占领koishi :_:

2 个赞

邦邦占领koishi :_:

3 个赞