maidraw 0.1.0
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.
- package/.prettierrc.json +6 -0
- package/LICENSE +21 -0
- package/assets/fonts/comfortaa/Comfortaa-Bold.ttf +0 -0
- package/assets/fonts/comfortaa/Comfortaa-Regular.ttf +0 -0
- package/assets/fonts/comfortaa/OFL.txt +93 -0
- package/assets/fonts/gen-jyuu-gothic/GenJyuuGothic-Bold.ttf +0 -0
- package/assets/fonts/kosugi-maru/KosugiMaru-Regular.ttf +0 -0
- package/assets/fonts/kosugi-maru/LICENSE.txt +202 -0
- package/assets/themes/cn/2024Landscape/manifest.json +144 -0
- package/assets/themes/cn/2024Portrait/manifest.json +144 -0
- package/assets/themes/common/buddies/achievement/a.png +0 -0
- package/assets/themes/common/buddies/achievement/aa.png +0 -0
- package/assets/themes/common/buddies/achievement/aaa.png +0 -0
- package/assets/themes/common/buddies/achievement/b.png +0 -0
- package/assets/themes/common/buddies/achievement/bb.png +0 -0
- package/assets/themes/common/buddies/achievement/bbb.png +0 -0
- package/assets/themes/common/buddies/achievement/c.png +0 -0
- package/assets/themes/common/buddies/achievement/d.png +0 -0
- package/assets/themes/common/buddies/achievement/s.png +0 -0
- package/assets/themes/common/buddies/achievement/sp.png +0 -0
- package/assets/themes/common/buddies/achievement/ss.png +0 -0
- package/assets/themes/common/buddies/achievement/ssp.png +0 -0
- package/assets/themes/common/buddies/achievement/sss.png +0 -0
- package/assets/themes/common/buddies/achievement/sssp.png +0 -0
- package/assets/themes/common/buddies/cn/logo.png +0 -0
- package/assets/themes/common/buddies/jp/background.png +0 -0
- package/assets/themes/common/buddies/jp/chara.png +0 -0
- package/assets/themes/common/buddies/jp/laundry.png +0 -0
- package/assets/themes/common/buddies/jp/logo.png +0 -0
- package/assets/themes/common/buddies/plus/chara.png +0 -0
- package/assets/themes/common/buddies/plus/laundry.png +0 -0
- package/assets/themes/common/buddies/plus/logo.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/blue.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/bronze.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/gold.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/green.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/platinum.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/purple.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/rainbow.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/red.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/silver.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/white.png +0 -0
- package/assets/themes/common/versionless/dxRating/cn/yellow.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/blue.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/bronze.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/gold.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/green.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/platinum.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/purple.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/rainbow.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/red.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/silver.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/white.png +0 -0
- package/assets/themes/common/versionless/dxRating/jp/yellow.png +0 -0
- package/assets/themes/common/versionless/dxRating/numberMap.png +0 -0
- package/assets/themes/common/versionless/icon.png +0 -0
- package/assets/themes/common/versionless/milestone/ap.png +0 -0
- package/assets/themes/common/versionless/milestone/app.png +0 -0
- package/assets/themes/common/versionless/milestone/fc.png +0 -0
- package/assets/themes/common/versionless/milestone/fcp.png +0 -0
- package/assets/themes/common/versionless/milestone/fdx.png +0 -0
- package/assets/themes/common/versionless/milestone/fdxp.png +0 -0
- package/assets/themes/common/versionless/milestone/fs.png +0 -0
- package/assets/themes/common/versionless/milestone/fsp.png +0 -0
- package/assets/themes/common/versionless/milestone/none.png +0 -0
- package/assets/themes/common/versionless/milestone/sync.png +0 -0
- package/assets/themes/common/versionless/mode/cn/dx.png +0 -0
- package/assets/themes/common/versionless/mode/cn/standard.png +0 -0
- package/assets/themes/common/versionless/mode/jp/dx.png +0 -0
- package/assets/themes/common/versionless/mode/jp/standard.png +0 -0
- package/assets/themes/common/versionless/nameplate.png +0 -0
- package/assets/themes/jp/buddiesLandscape/manifest.json +144 -0
- package/assets/themes/jp/buddiesPlusLandscape/manifest.json +144 -0
- package/assets/themes/jp/buddiesPlusPortrait/manifest.json +144 -0
- package/assets/themes/jp/buddiesPortrait/manifest.json +144 -0
- package/dist/index.d.ts +33 -0
- package/dist/index.js +901 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/divingFish/index.d.ts +50 -0
- package/dist/lib/divingFish/index.js +174 -0
- package/dist/lib/divingFish/index.js.map +1 -0
- package/dist/lib/index.d.ts +13 -0
- package/dist/lib/index.js +9 -0
- package/dist/lib/index.js.map +1 -0
- package/dist/lib/kamaiTachi/index.d.ts +107 -0
- package/dist/lib/kamaiTachi/index.js +187 -0
- package/dist/lib/kamaiTachi/index.js.map +1 -0
- package/dist/lib/lxns/index.d.ts +210 -0
- package/dist/lib/lxns/index.js +287 -0
- package/dist/lib/lxns/index.js.map +1 -0
- package/dist/type.d.ts +165 -0
- package/dist/type.js +47 -0
- package/dist/type.js.map +1 -0
- package/package.json +49 -0
- package/test/cn-2024-landscape.webp +0 -0
- package/test/cn-2024-portrait.webp +0 -0
- package/test/fetchConvert.js +65 -0
- package/test/jp-buddies-landscape.webp +0 -0
- package/test/jp-buddies-portrait.webp +0 -0
- package/test/jp-buddiesplus-landscape.webp +0 -0
- package/test/jp-buddiesplus-portrait.webp +0 -0
- package/test/testDraw.js +741 -0
- package/tsconfig.json +33 -0
package/dist/type.js
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EAchievementTypes = exports.ESyncTypes = exports.EComboTypes = exports.EDifficulty = void 0;
|
|
4
|
+
var EDifficulty;
|
|
5
|
+
(function (EDifficulty) {
|
|
6
|
+
EDifficulty[EDifficulty["BASIC"] = 0] = "BASIC";
|
|
7
|
+
EDifficulty[EDifficulty["ADVANCED"] = 1] = "ADVANCED";
|
|
8
|
+
EDifficulty[EDifficulty["EXPERT"] = 2] = "EXPERT";
|
|
9
|
+
EDifficulty[EDifficulty["MASTER"] = 3] = "MASTER";
|
|
10
|
+
EDifficulty[EDifficulty["REMASTER"] = 4] = "REMASTER";
|
|
11
|
+
EDifficulty[EDifficulty["UTAGE"] = 5] = "UTAGE";
|
|
12
|
+
})(EDifficulty || (exports.EDifficulty = EDifficulty = {}));
|
|
13
|
+
var EComboTypes;
|
|
14
|
+
(function (EComboTypes) {
|
|
15
|
+
EComboTypes[EComboTypes["NONE"] = 0] = "NONE";
|
|
16
|
+
EComboTypes[EComboTypes["FULL_COMBO"] = 1] = "FULL_COMBO";
|
|
17
|
+
EComboTypes[EComboTypes["FULL_COMBO_PLUS"] = 2] = "FULL_COMBO_PLUS";
|
|
18
|
+
EComboTypes[EComboTypes["ALL_PERFECT"] = 3] = "ALL_PERFECT";
|
|
19
|
+
EComboTypes[EComboTypes["ALL_PERFECT_PLUS"] = 4] = "ALL_PERFECT_PLUS";
|
|
20
|
+
})(EComboTypes || (exports.EComboTypes = EComboTypes = {}));
|
|
21
|
+
var ESyncTypes;
|
|
22
|
+
(function (ESyncTypes) {
|
|
23
|
+
ESyncTypes[ESyncTypes["NONE"] = 0] = "NONE";
|
|
24
|
+
ESyncTypes[ESyncTypes["SYNC_PLAY"] = 1] = "SYNC_PLAY";
|
|
25
|
+
ESyncTypes[ESyncTypes["FULL_SYNC"] = 2] = "FULL_SYNC";
|
|
26
|
+
ESyncTypes[ESyncTypes["FULL_SYNC_PLUS"] = 3] = "FULL_SYNC_PLUS";
|
|
27
|
+
ESyncTypes[ESyncTypes["FULL_SYNC_DX"] = 4] = "FULL_SYNC_DX";
|
|
28
|
+
ESyncTypes[ESyncTypes["FULL_SYNC_DX_PLUS"] = 5] = "FULL_SYNC_DX_PLUS";
|
|
29
|
+
})(ESyncTypes || (exports.ESyncTypes = ESyncTypes = {}));
|
|
30
|
+
var EAchievementTypes;
|
|
31
|
+
(function (EAchievementTypes) {
|
|
32
|
+
EAchievementTypes[EAchievementTypes["D"] = 0] = "D";
|
|
33
|
+
EAchievementTypes[EAchievementTypes["C"] = 1] = "C";
|
|
34
|
+
EAchievementTypes[EAchievementTypes["B"] = 2] = "B";
|
|
35
|
+
EAchievementTypes[EAchievementTypes["BB"] = 3] = "BB";
|
|
36
|
+
EAchievementTypes[EAchievementTypes["BBB"] = 4] = "BBB";
|
|
37
|
+
EAchievementTypes[EAchievementTypes["A"] = 5] = "A";
|
|
38
|
+
EAchievementTypes[EAchievementTypes["AA"] = 6] = "AA";
|
|
39
|
+
EAchievementTypes[EAchievementTypes["AAA"] = 7] = "AAA";
|
|
40
|
+
EAchievementTypes[EAchievementTypes["S"] = 8] = "S";
|
|
41
|
+
EAchievementTypes[EAchievementTypes["SP"] = 9] = "SP";
|
|
42
|
+
EAchievementTypes[EAchievementTypes["SS"] = 10] = "SS";
|
|
43
|
+
EAchievementTypes[EAchievementTypes["SSP"] = 11] = "SSP";
|
|
44
|
+
EAchievementTypes[EAchievementTypes["SSS"] = 12] = "SSS";
|
|
45
|
+
EAchievementTypes[EAchievementTypes["SSSP"] = 13] = "SSSP";
|
|
46
|
+
})(EAchievementTypes || (exports.EAchievementTypes = EAchievementTypes = {}));
|
|
47
|
+
//# sourceMappingURL=type.js.map
|
package/dist/type.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.js","sourceRoot":"","sources":["../src/type.ts"],"names":[],"mappings":";;;AAAA,IAAY,WAOX;AAPD,WAAY,WAAW;IACnB,+CAAK,CAAA;IACL,qDAAQ,CAAA;IACR,iDAAM,CAAA;IACN,iDAAM,CAAA;IACN,qDAAQ,CAAA;IACR,+CAAK,CAAA;AACT,CAAC,EAPW,WAAW,2BAAX,WAAW,QAOtB;AAED,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,6CAAI,CAAA;IACJ,yDAAU,CAAA;IACV,mEAAe,CAAA;IACf,2DAAW,CAAA;IACX,qEAAgB,CAAA;AACpB,CAAC,EANW,WAAW,2BAAX,WAAW,QAMtB;AAED,IAAY,UAOX;AAPD,WAAY,UAAU;IAClB,2CAAI,CAAA;IACJ,qDAAS,CAAA;IACT,qDAAS,CAAA;IACT,+DAAc,CAAA;IACd,2DAAY,CAAA;IACZ,qEAAiB,CAAA;AACrB,CAAC,EAPW,UAAU,0BAAV,UAAU,QAOrB;AAED,IAAY,iBAeX;AAfD,WAAY,iBAAiB;IACzB,mDAAC,CAAA;IACD,mDAAC,CAAA;IACD,mDAAC,CAAA;IACD,qDAAE,CAAA;IACF,uDAAG,CAAA;IACH,mDAAC,CAAA;IACD,qDAAE,CAAA;IACF,uDAAG,CAAA;IACH,mDAAC,CAAA;IACD,qDAAE,CAAA;IACF,sDAAE,CAAA;IACF,wDAAG,CAAA;IACH,wDAAG,CAAA;IACH,0DAAI,CAAA;AACR,CAAC,EAfW,iBAAiB,iCAAjB,iBAAiB,QAe5B"}
|
package/package.json
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "maidraw",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Kasumi module for maimai bot",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"build": "tsc && tsconfig-replace-paths -p tsconfig.json -s ./src -o ./dist",
|
|
8
|
+
"clean": "rimraf dist/*",
|
|
9
|
+
"make": "npm run clean && npm run lint && npm run build",
|
|
10
|
+
"lint": "prettier './src/**/*.ts' --write",
|
|
11
|
+
"test": "npm run make && node ./test/testDraw.js"
|
|
12
|
+
},
|
|
13
|
+
"repository": {
|
|
14
|
+
"type": "git",
|
|
15
|
+
"url": "git+https://github.com/HexaNona/kasumi-module-template.git"
|
|
16
|
+
},
|
|
17
|
+
"keywords": [
|
|
18
|
+
"Kasumi",
|
|
19
|
+
"kook",
|
|
20
|
+
"bot"
|
|
21
|
+
],
|
|
22
|
+
"author": "saltcute",
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"bugs": {
|
|
25
|
+
"url": "https://github.com/HexaNona/kasumi-module-template/issues"
|
|
26
|
+
},
|
|
27
|
+
"homepage": "https://github.com/HexaNona/kasumi-module-template#readme",
|
|
28
|
+
"dependencies": {
|
|
29
|
+
"axios": "^1.7.2",
|
|
30
|
+
"canvas": "^2.11.2",
|
|
31
|
+
"color": "^4.2.3",
|
|
32
|
+
"glob": "^11.0.0",
|
|
33
|
+
"kasumi.js": "^0.6.8",
|
|
34
|
+
"memory-cache": "^0.2.0",
|
|
35
|
+
"prettier": "^3.3.2",
|
|
36
|
+
"rimraf": "^5.0.8",
|
|
37
|
+
"sharp": "^0.33.5",
|
|
38
|
+
"skia-canvas": "^1.0.1",
|
|
39
|
+
"ts-node": "^10.9.1",
|
|
40
|
+
"tsconfig-paths": "^4.1.2",
|
|
41
|
+
"tsconfig-replace-paths": "^0.0.14",
|
|
42
|
+
"typescript": "^5.5.3",
|
|
43
|
+
"upath": "^2.0.1"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@types/color": "^3.0.6",
|
|
47
|
+
"@types/memory-cache": "^0.2.6"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
function convert(scores) {
|
|
2
|
+
let arr = [];
|
|
3
|
+
for (let score of scores) {
|
|
4
|
+
arr.push({
|
|
5
|
+
chart: {
|
|
6
|
+
id: score.type == "dx" ? score.id + 10000 : score.id,
|
|
7
|
+
name: score.song_name,
|
|
8
|
+
difficulty: score.level_index,
|
|
9
|
+
level: 13.7,
|
|
10
|
+
maxDxScore: 6666
|
|
11
|
+
},
|
|
12
|
+
combo: (() => {
|
|
13
|
+
switch (score.fc) {
|
|
14
|
+
case "fc":
|
|
15
|
+
return 1;
|
|
16
|
+
case "fcp":
|
|
17
|
+
return 2;
|
|
18
|
+
case "ap":
|
|
19
|
+
return 3;
|
|
20
|
+
case "app":
|
|
21
|
+
return 4;
|
|
22
|
+
default:
|
|
23
|
+
return 0;
|
|
24
|
+
}
|
|
25
|
+
})(),
|
|
26
|
+
sync: (() => {
|
|
27
|
+
switch (score.fs) {
|
|
28
|
+
case "sync":
|
|
29
|
+
return 1;
|
|
30
|
+
case "fs":
|
|
31
|
+
return 2;
|
|
32
|
+
case "fsp":
|
|
33
|
+
return 3;
|
|
34
|
+
case "fsd":
|
|
35
|
+
return 4;
|
|
36
|
+
case "fsdp":
|
|
37
|
+
return 5;
|
|
38
|
+
default:
|
|
39
|
+
return 0;
|
|
40
|
+
}
|
|
41
|
+
})(),
|
|
42
|
+
achievement: score.achievements,
|
|
43
|
+
dxScore: score.dx_score,
|
|
44
|
+
dxRating: score.dx_rating,
|
|
45
|
+
})
|
|
46
|
+
}
|
|
47
|
+
return arr;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
const myHeaders = new Headers();
|
|
51
|
+
myHeaders.append("Authorization", "YLyt2PK5JIwwIDDIh0MJYXjK38Aim9cMSxiSgMfeTIE=");
|
|
52
|
+
|
|
53
|
+
const requestOptions = {
|
|
54
|
+
method: "GET",
|
|
55
|
+
headers: myHeaders,
|
|
56
|
+
redirect: "follow"
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
fetch("https://maimai.lxns.net/api/v0/maimai/player/211532943892789/bests", requestOptions)
|
|
60
|
+
.then((response) => response.json())
|
|
61
|
+
.then((result) => {
|
|
62
|
+
console.log(JSON.stringify(convert(result.data.dx)) + ",");
|
|
63
|
+
console.log(JSON.stringify(convert(result.data.standard)));
|
|
64
|
+
})
|
|
65
|
+
.catch((error) => console.error(error));
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|