Skip to content

类: DivingFishMaimaiDatabase

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:70

MaimaiDatabaseDiving-Fish(水鱼)适配

能力来源
曲目列表 / 单曲GET /music_data
社区成绩统计GET /chart_stats(适配专属)
封面 jacketGET /covers/{id}.png
谱面标签包内 DXRating 快照
别名 / 收藏品无对等接口 → 抛 MaimaiDatabaseNotImplementedError

示例

ts
const db = new DivingFishMaimaiDatabase();
const { songs } = await db.getSongList({ notes: true });
const jacket = await db.getAsset("jacket", 11451);

实现

构造函数

构造函数

ts
new DivingFishMaimaiDatabase(options?): DivingFishMaimaiDatabase;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:81

参数

参数类型描述
optionsDivingFishMaimaiDatabaseOptions可选 API/CDN 根、缓存、timeout / retries

返回

DivingFishMaimaiDatabase

方法

getAliasList()

ts
getAliasList(): Promise<Alias[]>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:174

返回

Promise<Alias[]>

从不返回

抛出

水鱼无对等接口


getAsset()

ts
getAsset(type, id): Promise<Uint8Array<ArrayBufferLike>>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:234

拉取素材字节。本适配仅支持封面 jacket

参数

参数类型描述
typeAssetType素材类型;仅 "jacket" 有效
idnumber曲目 id

返回

Promise<Uint8Array<ArrayBufferLike>>

PNG 等原始字节

抛出

非 jacket 类型

抛出

HTTP 失败或网络错误


getChartStats()

ts
getChartStats(): Promise<DivingFishChartStats>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:153

获取水鱼社区成绩统计。

这是水鱼适配专属能力,不属于通用 MaimaiDatabasecharts 以曲目 id 为键, 每项数组下标对应难度索引;没有统计的谱面为 null

返回

Promise<DivingFishChartStats>

谱面相对难度、平均达成率、评级与 FC 分布

抛出

网络、HTTP 或响应结构错误

示例

ts
const stats = await db.getChartStats();
const master = stats.charts["11451"]?.[3];
console.log(master?.fit_diff);

getChartTags()

ts
getChartTags(charts): Promise<ChartTag[][]>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:94

批量获取谱面社区标签(本地快照,不请求 DXRating 运行时)。

参数

参数类型描述
chartsreadonly ChartTagQuery[]曲名 + 类型 + 难度

返回

Promise<ChartTag[][]>

charts 等长的标签数组


getCollectionGenreInfo()

ts
getCollectionGenreInfo(_id, _query?): Promise<CollectionGenre>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:221

参数

参数类型描述
_idnumber忽略
_query?VersionQuery忽略

返回

Promise<CollectionGenre>

从不返回

抛出

水鱼无对等接口


getCollectionGenreList()

ts
getCollectionGenreList(_query?): Promise<CollectionGenre[]>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:211

参数

参数类型描述
_query?VersionQuery忽略

返回

Promise<CollectionGenre[]>

从不返回

抛出

水鱼无对等接口


getCollectionInfo()

ts
getCollectionInfo(
   _type, 
   _id, 
_query?): Promise<Collection>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:198

参数

参数类型描述
_typeCollectionType忽略
_idnumber忽略
_query?VersionQuery忽略

返回

Promise<Collection>

从不返回

抛出

水鱼无对等接口


getCollectionList()

ts
getCollectionList(_type, _query?): Promise<Collection[]>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:184

参数

参数类型描述
_typeCollectionType忽略
_query?CollectionListQuery忽略

返回

Promise<Collection[]>

从不返回

抛出

水鱼无对等接口


getSong()

ts
getSong(id, _query?): Promise<Song>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:124

单曲详情(在曲目列表中查找)。

参数

参数类型描述
idnumber曲目 id
_query?VersionQuery忽略(水鱼 music_data 无版本过滤)

返回

Promise<Song>

通用 Song

抛出

曲目不存在


getSongCollections()

ts
getSongCollections(_songId): Promise<SongCollection[]>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:166

参数

参数类型描述
_songIdnumber忽略

返回

Promise<SongCollection[]>

从不返回

抛出

水鱼无对等接口


getSongList()

ts
getSongList(query?): Promise<SongList>;

定义于: packages/database/src/adapters/diving-fish/diving-fish-database.ts:105

曲目列表(来自 /music_data)。

参数

参数类型描述
query?SongListQuerynotes: true 时填充物量,供 draw 计算 dx_max

返回

Promise<SongList>

通用 SongList(水鱼未提供的 genres/versions 字段省略)

抛出

拉取失败或响应结构错误