koishi-plugin-noah 1.3.5 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -53,4 +53,26 @@ export declare class SDVXDrawer extends BaseDrawer {
53
53
  private calculateAverageVF;
54
54
  private wrapText;
55
55
  private roundRect;
56
+ /**
57
+ * 生成VF计算表格图像
58
+ * @param options - 表格生成配置选项
59
+ * @param compression - 压缩选项
60
+ * @returns 包含图像数据的Buffer
61
+ */
62
+ /**
63
+ * 根据 VF 值获取对应的 class 和颜色
64
+ */
65
+ private getVFClassColor;
66
+ generateVFTableImage(options: {
67
+ results: {
68
+ level: number;
69
+ score: number;
70
+ grade: string;
71
+ clearType: string;
72
+ vf: number;
73
+ }[];
74
+ config: SDVXConfig;
75
+ }, compression?: {
76
+ lossless: boolean;
77
+ }): Promise<Buffer>;
56
78
  }
@@ -0,0 +1,73 @@
1
+ import { SDVXGrade, SDVXClearType } from '../types';
2
+ /**
3
+ * VF 查找表类型
4
+ * Key: `${level}-${grade}-${clearType}-${vf}`
5
+ * Value: QueryResult(每个组合只保留最小分数)
6
+ */
7
+ type VFLookupTable = Map<string, QueryResult>;
8
+ /**
9
+ * 查询参数接口
10
+ */
11
+ export interface QueryParams {
12
+ level?: number | number[];
13
+ score?: number | number[];
14
+ grade?: SDVXGrade | SDVXGrade[];
15
+ clearType?: SDVXClearType | SDVXClearType[];
16
+ vf?: number | number[];
17
+ }
18
+ /**
19
+ * 查询结果接口
20
+ */
21
+ export interface QueryResult {
22
+ level: number;
23
+ score: number;
24
+ grade: SDVXGrade;
25
+ clearType: SDVXClearType;
26
+ vf: number;
27
+ }
28
+ /**
29
+ * 根据分数获取等级
30
+ */
31
+ export declare function getGradeByScore(score: number): SDVXGrade;
32
+ /**
33
+ * 根据分数获取可能的通关类型
34
+ */
35
+ export declare function getPossibleClearTypes(score: number): SDVXClearType[];
36
+ /**
37
+ * 计算 Volforce 值
38
+ */
39
+ export declare function calculateVolforce(level: number, score: number, grade: SDVXGrade, clearType: SDVXClearType): number;
40
+ /**
41
+ * 根据目标VF计算所需分数
42
+ */
43
+ export declare function calculateRequiredScore(level: number, targetVf: number, grade: SDVXGrade, clearType: SDVXClearType): number;
44
+ /**
45
+ * 获取等级范围
46
+ */
47
+ export declare function getGradeRange(grade?: SDVXGrade | SDVXGrade[]): SDVXGrade[];
48
+ /**
49
+ * 获取通关类型范围
50
+ */
51
+ export declare function getClearTypeRange(clearType?: SDVXClearType | SDVXClearType[]): SDVXClearType[];
52
+ /**
53
+ * 获取等级范围
54
+ */
55
+ export declare function getLevelRange(level?: number | number[]): number[];
56
+ /**
57
+ * 生成 VF 查找表
58
+ * 预计算所有可能的 level × score × grade × clearType 组合及其对应的 VF
59
+ */
60
+ export declare function generateVFLookupTable(): VFLookupTable;
61
+ /**
62
+ * 获取或创建 VF 查找表(带缓存)
63
+ */
64
+ export declare function getVFLookupTable(): VFLookupTable;
65
+ /**
66
+ * 获取VF范围
67
+ */
68
+ export declare function getVfRange(vf?: number | number[]): number[];
69
+ /**
70
+ * 生成查询结果(使用查找表)
71
+ */
72
+ export declare function generateQueryResults(params: QueryParams): QueryResult[];
73
+ export {};
@@ -0,0 +1,51 @@
1
+ import { SDVXGrade, SDVXClearType } from '../types';
2
+ /**
3
+ * 查询参数接口
4
+ */
5
+ export interface QueryParams {
6
+ level?: number | number[];
7
+ score?: number | number[];
8
+ grade?: SDVXGrade | SDVXGrade[];
9
+ clearType?: SDVXClearType | SDVXClearType[];
10
+ vf?: number | number[];
11
+ }
12
+ /**
13
+ * 解析带后缀的数字
14
+ */
15
+ export declare function parseNumberWithSuffix(str: string): number;
16
+ /**
17
+ * 解析等级范围
18
+ */
19
+ export declare function parseLevelRange(item: string): number[] | null;
20
+ /**
21
+ * 解析分数范围
22
+ */
23
+ export declare function parseScoreRange(item: string): number[] | null;
24
+ /**
25
+ * 解析VF值
26
+ */
27
+ export declare function parseVfValue(item: string): number | number[] | null;
28
+ /**
29
+ * 解析通关类型范围
30
+ */
31
+ export declare function parseClearTypeRange(item: string): SDVXClearType[] | null;
32
+ /**
33
+ * 解析单个通关类型
34
+ */
35
+ export declare function parseSingleClearType(item: string): SDVXClearType[] | null;
36
+ /**
37
+ * 解析等级范围
38
+ */
39
+ export declare function parseGradeRange(item: string): SDVXGrade[] | null;
40
+ /**
41
+ * 解析单个等级
42
+ */
43
+ export declare function parseSingleGrade(item: string): SDVXGrade[] | null;
44
+ /**
45
+ * 解析雷达特征
46
+ */
47
+ export declare function parseRadarFeature(item: string): string | null;
48
+ /**
49
+ * 解析用户输入参数
50
+ */
51
+ export declare function parseQueryInput(input: string): QueryParams;