类: DivingFishMaimaiDatabase
定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:70
MaimaiDatabase 的 Diving-Fish(水鱼)适配。
| 能力 | 来源 |
|---|---|
| 曲目列表 / 单曲 | GET /music_data |
| 社区成绩统计 | GET /chart_stats(适配专属) |
| 封面 jacket | GET /covers/{id}.png |
| 谱面标签 | 包内 DXRating 快照 |
| 别名 / 收藏品 | 无对等接口 → 抛 MaimaiDatabaseNotImplementedError |
示例
const db = new DivingFishMaimaiDatabase();
const { songs } = await db.getSongList({ notes: true });
const jacket = await db.getAsset("jacket", 11451);实现
构造函数
构造函数
new DivingFishMaimaiDatabase(options?): DivingFishMaimaiDatabase;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:81
参数
| 参数 | 类型 | 描述 |
|---|---|---|
options | DivingFishMaimaiDatabaseOptions | 可选 API/CDN 根、缓存、timeout / retries |
返回
DivingFishMaimaiDatabase
方法
getAliasList()
getAliasList(): Promise<Alias[]>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:174
返回
Promise<Alias[]>
从不返回
抛出
水鱼无对等接口
getAsset()
getAsset(type, id): Promise<Uint8Array<ArrayBufferLike>>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:234
拉取素材字节。本适配仅支持封面 jacket。
参数
| 参数 | 类型 | 描述 |
|---|---|---|
type | AssetType | 素材类型;仅 "jacket" 有效 |
id | number | 曲目 id |
返回
Promise<Uint8Array<ArrayBufferLike>>
PNG 等原始字节
抛出
非 jacket 类型
抛出
HTTP 失败或网络错误
getChartStats()
getChartStats(): Promise<DivingFishChartStats>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:153
获取水鱼社区成绩统计。
这是水鱼适配专属能力,不属于通用 MaimaiDatabase。charts 以曲目 id 为键, 每项数组下标对应难度索引;没有统计的谱面为 null。
返回
Promise<DivingFishChartStats>
谱面相对难度、平均达成率、评级与 FC 分布
抛出
网络、HTTP 或响应结构错误
示例
const stats = await db.getChartStats();
const master = stats.charts["11451"]?.[3];
console.log(master?.fit_diff);getChartTags()
getChartTags(charts): Promise<ChartTag[][]>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:94
批量获取谱面社区标签(本地快照,不请求 DXRating 运行时)。
参数
| 参数 | 类型 | 描述 |
|---|---|---|
charts | readonly ChartTagQuery[] | 曲名 + 类型 + 难度 |
返回
Promise<ChartTag[][]>
与 charts 等长的标签数组
getCollectionGenreInfo()
getCollectionGenreInfo(_id, _query?): Promise<CollectionGenre>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:221
参数
| 参数 | 类型 | 描述 |
|---|---|---|
_id | number | 忽略 |
_query? | VersionQuery | 忽略 |
返回
Promise<CollectionGenre>
从不返回
抛出
水鱼无对等接口
getCollectionGenreList()
getCollectionGenreList(_query?): Promise<CollectionGenre[]>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:211
参数
| 参数 | 类型 | 描述 |
|---|---|---|
_query? | VersionQuery | 忽略 |
返回
Promise<CollectionGenre[]>
从不返回
抛出
水鱼无对等接口
getCollectionInfo()
getCollectionInfo(
_type,
_id,
_query?): Promise<Collection>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:198
参数
| 参数 | 类型 | 描述 |
|---|---|---|
_type | CollectionType | 忽略 |
_id | number | 忽略 |
_query? | VersionQuery | 忽略 |
返回
Promise<Collection>
从不返回
抛出
水鱼无对等接口
getCollectionList()
getCollectionList(_type, _query?): Promise<Collection[]>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:184
参数
| 参数 | 类型 | 描述 |
|---|---|---|
_type | CollectionType | 忽略 |
_query? | CollectionListQuery | 忽略 |
返回
Promise<Collection[]>
从不返回
抛出
水鱼无对等接口
getSong()
getSong(id, _query?): Promise<Song>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:124
单曲详情(在曲目列表中查找)。
参数
| 参数 | 类型 | 描述 |
|---|---|---|
id | number | 曲目 id |
_query? | VersionQuery | 忽略(水鱼 music_data 无版本过滤) |
返回
Promise<Song>
通用 Song
抛出
曲目不存在
getSongCollections()
getSongCollections(_songId): Promise<SongCollection[]>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:166
参数
| 参数 | 类型 | 描述 |
|---|---|---|
_songId | number | 忽略 |
返回
Promise<SongCollection[]>
从不返回
抛出
水鱼无对等接口
getSongList()
getSongList(query?): Promise<SongList>;定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:105
曲目列表(来自 /music_data)。
参数
| 参数 | 类型 | 描述 |
|---|---|---|
query? | SongListQuery | notes: true 时填充物量,供 draw 计算 dx_max |
返回
Promise<SongList>
通用 SongList(水鱼未提供的 genres/versions 字段省略)
抛出
拉取失败或响应结构错误
