maidraw 0.9.5 → 0.10.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.
- package/assets/themes/chunithm/best/luminousLandscape/new/manifest.json +58 -32
- package/assets/themes/chunithm/best/luminousLandscape/recents/manifest.json +57 -31
- package/assets/themes/chunithm/best/luminousPlusLandscape/new/manifest.json +57 -31
- package/assets/themes/chunithm/best/luminousPlusLandscape/recents/manifest.json +57 -31
- package/assets/themes/chunithm/best/verseLandscape/new/manifest.json +57 -31
- package/assets/themes/chunithm/best/verseLandscape/recents/manifest.json +57 -31
- package/assets/themes/chunithm/chart/jp/verse/manifest.json +73 -71
- package/assets/themes/maimai/best50/cn/2024Landscape/manifest.json +90 -54
- package/assets/themes/maimai/best50/cn/2024Portrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/cn/2025Landscape/manifest.json +90 -54
- package/assets/themes/maimai/best50/cn/2025Portrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/common/prism/plus/background.png +0 -0
- package/assets/themes/maimai/best50/jp/buddiesLandscape/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/buddiesPlusLandscape/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/buddiesPlusPortrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/buddiesPortrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/finaleLandscape/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/finalePortrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/jp/prismLandscape/manifest.json +90 -54
- package/assets/themes/maimai/best50/jp/prismPlusLandscape/manifest.json +90 -54
- package/assets/themes/maimai/best50/jp/prismPlusPortrait/manifest.json +92 -55
- package/assets/themes/maimai/best50/jp/prismPortrait/manifest.json +89 -53
- package/assets/themes/maimai/best50/salt/2026landscape/manifest.json +89 -53
- package/assets/themes/maimai/chart/jp/prism/manifest.json +100 -96
- package/assets/themes/ongeki/jp/brightMemoryLandscape/classic/manifest.json +101 -30
- package/assets/themes/ongeki/jp/brightMemoryLandscape/refresh/manifest.json +78 -30
- package/assets/themes/ongeki/jp/refreshLandscape/classic/manifest.json +101 -2
- package/assets/themes/ongeki/jp/refreshLandscape/refresh/manifest.json +78 -30
- package/dist/chu/index.d.ts +14 -4
- package/dist/chu/index.js +16 -4
- package/dist/chu/index.js.map +1 -1
- package/dist/chu/lib/{index.d.ts → adapter/index.d.ts} +1 -1
- package/dist/chu/lib/{index.js → adapter/index.js} +1 -1
- package/dist/chu/lib/adapter/index.js.map +1 -0
- package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +1 -1
- package/dist/chu/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +5 -5
- package/dist/chu/lib/adapter/kamaiTachi/index.js.map +1 -0
- package/dist/chu/lib/{lxns → adapter/lxns}/index.d.ts +1 -1
- package/dist/chu/lib/{lxns → adapter/lxns}/index.js +4 -4
- package/dist/chu/lib/adapter/lxns/index.js.map +1 -0
- package/dist/chu/{chart → lib}/database.d.ts +3 -3
- package/dist/chu/{chart → lib}/database.js +2 -2
- package/dist/chu/lib/database.js.map +1 -0
- package/dist/chu/lib/util.d.ts +149 -0
- package/dist/chu/lib/util.js +270 -0
- package/dist/chu/lib/util.js.map +1 -0
- package/dist/chu/painter/best50/index.d.ts +120 -0
- package/dist/chu/painter/best50/index.js +158 -0
- package/dist/chu/painter/best50/index.js.map +1 -0
- package/dist/chu/painter/chart/index.d.ts +170 -0
- package/dist/chu/painter/chart/index.js +116 -0
- package/dist/chu/painter/chart/index.js.map +1 -0
- package/dist/chu/painter/index.d.ts +194 -0
- package/dist/chu/painter/index.js +1105 -0
- package/dist/chu/painter/index.js.map +1 -0
- package/dist/geki/index.d.ts +10 -4
- package/dist/geki/index.js +12 -4
- package/dist/geki/index.js.map +1 -1
- package/dist/geki/lib/adapter/index.js.map +1 -0
- package/dist/geki/lib/adapter/kamaiTachi/index.js.map +1 -0
- package/dist/geki/{chart → lib}/database.d.ts +1 -1
- package/dist/geki/{chart → lib}/database.js +2 -2
- package/dist/geki/lib/database.js.map +1 -0
- package/dist/geki/painter/best50/index.d.ts +122 -0
- package/dist/geki/painter/best50/index.js +197 -0
- package/dist/geki/painter/best50/index.js.map +1 -0
- package/dist/geki/painter/index.d.ts +88 -0
- package/dist/geki/painter/index.js +448 -0
- package/dist/geki/painter/index.js.map +1 -0
- package/dist/lib/cache.d.ts +1 -0
- package/dist/lib/cache.js +6 -1
- package/dist/lib/cache.js.map +1 -1
- package/dist/lib/painter.d.ts +100 -0
- package/dist/lib/painter.js +216 -0
- package/dist/lib/painter.js.map +1 -0
- package/dist/lib/util.d.ts +6 -282
- package/dist/lib/util.js +50 -540
- package/dist/lib/util.js.map +1 -1
- package/dist/mai/index.d.ts +22 -6
- package/dist/mai/index.js +24 -6
- package/dist/mai/index.js.map +1 -1
- package/dist/mai/lib/{divingFish → adapter/divingFish}/index.d.ts +6 -6
- package/dist/mai/lib/{divingFish → adapter/divingFish}/index.js +29 -30
- package/dist/mai/lib/adapter/divingFish/index.js.map +1 -0
- package/dist/mai/lib/{index.d.ts → adapter/index.d.ts} +11 -11
- package/dist/mai/lib/{index.js → adapter/index.js} +2 -2
- package/dist/{geki/bests/lib → mai/lib/adapter}/index.js.map +1 -1
- package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.d.ts +84 -42
- package/dist/mai/lib/{kamaiTachi → adapter/kamaiTachi}/index.js +36 -29
- package/dist/mai/lib/adapter/kamaiTachi/index.js.map +1 -0
- package/dist/mai/lib/{lxns → adapter/lxns}/index.d.ts +12 -12
- package/dist/mai/lib/{lxns → adapter/lxns}/index.js +29 -30
- package/dist/mai/lib/adapter/lxns/index.js.map +1 -0
- package/dist/mai/lib/{maishift → adapter/maishift}/index.d.ts +4 -4
- package/dist/mai/lib/{maishift → adapter/maishift}/index.js +20 -20
- package/dist/mai/lib/adapter/maishift/index.js.map +1 -0
- package/dist/mai/{chart → lib}/database.d.ts +4 -5
- package/dist/mai/{chart → lib}/database.js +12 -6
- package/dist/mai/lib/database.js.map +1 -0
- package/dist/mai/lib/util.d.ts +134 -0
- package/dist/mai/lib/util.js +264 -0
- package/dist/mai/lib/util.js.map +1 -0
- package/dist/mai/painter/best50/index.d.ts +140 -0
- package/dist/mai/painter/best50/index.js +176 -0
- package/dist/mai/painter/best50/index.js.map +1 -0
- package/dist/mai/painter/chart/index.d.ts +195 -0
- package/dist/mai/painter/chart/index.js +115 -0
- package/dist/mai/painter/chart/index.js.map +1 -0
- package/dist/mai/painter/index.d.ts +237 -0
- package/dist/mai/painter/index.js +1431 -0
- package/dist/mai/painter/index.js.map +1 -0
- package/dist/mai/painter/level50/index.d.ts +28 -0
- package/dist/mai/painter/level50/index.js +129 -0
- package/dist/mai/painter/level50/index.js.map +1 -0
- package/dist/mai/type.d.ts +110 -0
- package/dist/mai/type.js +73 -1
- package/dist/mai/type.js.map +1 -1
- package/package.json +56 -55
- package/dist/chu/bests/best50.d.ts +0 -37
- package/dist/chu/bests/best50.js +0 -742
- package/dist/chu/bests/best50.js.map +0 -1
- package/dist/chu/bests/index.d.ts +0 -1
- package/dist/chu/bests/index.js +0 -6
- package/dist/chu/bests/index.js.map +0 -1
- package/dist/chu/bests/type.d.ts +0 -122
- package/dist/chu/bests/type.js +0 -3
- package/dist/chu/bests/type.js.map +0 -1
- package/dist/chu/chart/database.js.map +0 -1
- package/dist/chu/chart/index.d.ts +0 -212
- package/dist/chu/chart/index.js +0 -1064
- package/dist/chu/chart/index.js.map +0 -1
- package/dist/chu/lib/index.js.map +0 -1
- package/dist/chu/lib/kamaiTachi/index.js.map +0 -1
- package/dist/chu/lib/lxns/index.js.map +0 -1
- package/dist/geki/bests/best50.d.ts +0 -35
- package/dist/geki/bests/best50.js +0 -821
- package/dist/geki/bests/best50.js.map +0 -1
- package/dist/geki/bests/index.d.ts +0 -1
- package/dist/geki/bests/index.js +0 -6
- package/dist/geki/bests/index.js.map +0 -1
- package/dist/geki/bests/lib/kamaiTachi/index.js.map +0 -1
- package/dist/geki/bests/type.d.ts +0 -122
- package/dist/geki/bests/type.js +0 -3
- package/dist/geki/bests/type.js.map +0 -1
- package/dist/geki/chart/database.js.map +0 -1
- package/dist/geki/chart/index.d.ts +0 -4
- package/dist/geki/chart/index.js +0 -32
- package/dist/geki/chart/index.js.map +0 -1
- package/dist/mai/best50/index.d.ts +0 -271
- package/dist/mai/best50/index.js +0 -915
- package/dist/mai/best50/index.js.map +0 -1
- package/dist/mai/chart/database.js.map +0 -1
- package/dist/mai/chart/index.d.ts +0 -238
- package/dist/mai/chart/index.js +0 -1281
- package/dist/mai/chart/index.js.map +0 -1
- package/dist/mai/level50/index.d.ts +0 -28
- package/dist/mai/level50/index.js +0 -774
- package/dist/mai/level50/index.js.map +0 -1
- package/dist/mai/lib/divingFish/index.js.map +0 -1
- package/dist/mai/lib/index.js.map +0 -1
- package/dist/mai/lib/kamaiTachi/index.js.map +0 -1
- package/dist/mai/lib/lxns/index.js.map +0 -1
- package/dist/mai/lib/maishift/index.js.map +0 -1
- /package/dist/geki/{bests/lib → lib/adapter}/index.d.ts +0 -0
- /package/dist/geki/{bests/lib → lib/adapter}/index.js +0 -0
- /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.d.ts +0 -0
- /package/dist/geki/{bests/lib → lib/adapter}/kamaiTachi/index.js +0 -0
package/dist/mai/index.d.ts
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
|
-
import * as bests from "./best50";
|
|
2
|
-
import * as chart from "./chart";
|
|
3
|
-
import * as level50 from "./level50";
|
|
4
1
|
import Bunyan from "bunyan";
|
|
2
|
+
import * as database from "./lib/database";
|
|
3
|
+
import * as chart from "./painter/chart";
|
|
4
|
+
import * as bests from "./painter/best50";
|
|
5
|
+
import * as level50 from "./painter/level50";
|
|
6
|
+
import * as lxns from "./lib/adapter/lxns";
|
|
7
|
+
import * as maishift from "./lib/adapter/maishift";
|
|
8
|
+
import * as divingFish from "./lib/adapter/divingFish";
|
|
9
|
+
import * as kamaiTachi from "./lib/adapter/kamaiTachi";
|
|
10
|
+
import * as types from "./type";
|
|
5
11
|
export declare class Maimai {
|
|
6
12
|
static logger: Bunyan;
|
|
7
13
|
}
|
|
8
14
|
export declare namespace Maimai {
|
|
9
|
-
export import
|
|
10
|
-
export import
|
|
11
|
-
|
|
15
|
+
export import Types = types;
|
|
16
|
+
export import Database = database.Database;
|
|
17
|
+
namespace Adapters {
|
|
18
|
+
export import LXNS = lxns.LXNS;
|
|
19
|
+
export import KamaiTachi = kamaiTachi.KamaiTachi;
|
|
20
|
+
export import DivingFish = divingFish.DivingFish;
|
|
21
|
+
export import Maishift = maishift.Maishift;
|
|
22
|
+
}
|
|
23
|
+
namespace Painters {
|
|
24
|
+
export import Best50 = bests.Best50Painter;
|
|
25
|
+
export import Level50 = level50.Level50Painter;
|
|
26
|
+
export import Chart = chart.ChartPainter;
|
|
27
|
+
}
|
|
12
28
|
}
|
package/dist/mai/index.js
CHANGED
|
@@ -27,10 +27,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
29
|
exports.Maimai = void 0;
|
|
30
|
-
const bests = __importStar(require("./best50"));
|
|
31
|
-
const chart = __importStar(require("./chart"));
|
|
32
|
-
const level50 = __importStar(require("./level50"));
|
|
33
30
|
const bunyan_1 = __importDefault(require("bunyan"));
|
|
31
|
+
const database = __importStar(require("./lib/database"));
|
|
32
|
+
const chart = __importStar(require("./painter/chart"));
|
|
33
|
+
const bests = __importStar(require("./painter/best50"));
|
|
34
|
+
const level50 = __importStar(require("./painter/level50"));
|
|
35
|
+
const lxns = __importStar(require("./lib/adapter/lxns"));
|
|
36
|
+
const maishift = __importStar(require("./lib/adapter/maishift"));
|
|
37
|
+
const divingFish = __importStar(require("./lib/adapter/divingFish"));
|
|
38
|
+
const kamaiTachi = __importStar(require("./lib/adapter/kamaiTachi"));
|
|
39
|
+
const types = __importStar(require("./type"));
|
|
34
40
|
class Maimai {
|
|
35
41
|
static logger = new bunyan_1.default({
|
|
36
42
|
name: "maidraw.maimai",
|
|
@@ -65,8 +71,20 @@ class Maimai {
|
|
|
65
71
|
}
|
|
66
72
|
exports.Maimai = Maimai;
|
|
67
73
|
(function (Maimai) {
|
|
68
|
-
Maimai.
|
|
69
|
-
Maimai.
|
|
70
|
-
|
|
74
|
+
Maimai.Types = types;
|
|
75
|
+
Maimai.Database = database.Database;
|
|
76
|
+
let Adapters;
|
|
77
|
+
(function (Adapters) {
|
|
78
|
+
Adapters.LXNS = lxns.LXNS;
|
|
79
|
+
Adapters.KamaiTachi = kamaiTachi.KamaiTachi;
|
|
80
|
+
Adapters.DivingFish = divingFish.DivingFish;
|
|
81
|
+
Adapters.Maishift = maishift.Maishift;
|
|
82
|
+
})(Adapters = Maimai.Adapters || (Maimai.Adapters = {}));
|
|
83
|
+
let Painters;
|
|
84
|
+
(function (Painters) {
|
|
85
|
+
Painters.Best50 = bests.Best50Painter;
|
|
86
|
+
Painters.Level50 = level50.Level50Painter;
|
|
87
|
+
Painters.Chart = chart.ChartPainter;
|
|
88
|
+
})(Painters = Maimai.Painters || (Maimai.Painters = {}));
|
|
71
89
|
})(Maimai || (exports.Maimai = Maimai = {}));
|
|
72
90
|
//# sourceMappingURL=index.js.map
|
package/dist/mai/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mai/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oDAA4B;AAE5B,yDAA2C;AAE3C,uDAAyC;AACzC,wDAA0C;AAC1C,2DAA6C;AAE7C,yDAA2C;AAC3C,iEAAmD;AACnD,qEAAuD;AACvD,qEAAuD;AAEvD,8CAAgC;AAEhC,MAAa,MAAM;IACR,MAAM,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;QAC9B,IAAI,EAAE,gBAAgB;QACtB,OAAO,EAAE;YACL;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,CAAC,GAAG,EAAE;oBACT,QAAQ,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBAC5B,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,MAAM;4BACP,OAAO,gBAAM,CAAC,IAAI,CAAC;wBACvB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB,KAAK,OAAO;4BACR,OAAO,gBAAM,CAAC,KAAK,CAAC;wBACxB;4BACI,OAAO,gBAAM,CAAC,IAAI,CAAC;oBAC3B,CAAC;gBACL,CAAC,CAAC,EAAE;aACP;YACD;gBACI,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,gBAAM,CAAC,KAAK;aACtB;SACJ;KACJ,CAAC,CAAC;;AA9BP,wBA+BC;AACD,WAAiB,MAAM;IACL,YAAK,GAAG,KAAK,CAAC;IAEd,eAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAE3C,IAAiB,QAAQ,CAKxB;IALD,WAAiB,QAAQ;QACP,aAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACjB,mBAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,mBAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACnC,iBAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC/C,CAAC,EALgB,QAAQ,GAAR,eAAQ,KAAR,eAAQ,QAKxB;IAED,IAAiB,QAAQ,CAIxB;IAJD,WAAiB,QAAQ;QACP,eAAM,GAAG,KAAK,CAAC,aAAa,CAAC;QAC7B,gBAAO,GAAG,OAAO,CAAC,cAAc,CAAC;QACjC,cAAK,GAAG,KAAK,CAAC,YAAY,CAAC;IAC7C,CAAC,EAJgB,QAAQ,GAAR,eAAQ,KAAR,eAAQ,QAIxB;AACL,CAAC,EAjBgB,MAAM,sBAAN,MAAM,QAiBtB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import { IChart, IScore } from "../../../type";
|
|
1
2
|
import ScoreTrackerAdapter from "..";
|
|
2
|
-
import { Best50 } from "../../best50";
|
|
3
3
|
export declare namespace DivingFish {
|
|
4
4
|
interface IPlayResult {
|
|
5
5
|
achievements: number;
|
|
@@ -64,16 +64,16 @@ export declare class DivingFish extends ScoreTrackerAdapter {
|
|
|
64
64
|
baseURL?: string;
|
|
65
65
|
});
|
|
66
66
|
getPlayerBest50(username: string): Promise<{
|
|
67
|
-
new:
|
|
68
|
-
old:
|
|
67
|
+
new: IScore[];
|
|
68
|
+
old: IScore[];
|
|
69
69
|
} | null>;
|
|
70
|
-
getMaiDrawChartList(): Promise<
|
|
70
|
+
getMaiDrawChartList(): Promise<IChart[]>;
|
|
71
71
|
getPlayerInfo(username: string): Promise<{
|
|
72
72
|
name: string;
|
|
73
73
|
rating: number;
|
|
74
74
|
} | null>;
|
|
75
|
-
getPlayerRawBest50(username: string): Promise<
|
|
76
|
-
getSong(id: string): Promise<
|
|
75
|
+
getPlayerRawBest50(username: string): Promise<DivingFish.IBest50Response | undefined>;
|
|
76
|
+
getSong(id: string): Promise<DivingFish.ISongData | null>;
|
|
77
77
|
getSongList(): Promise<DivingFish.ISongListResponse>;
|
|
78
78
|
private toMaiDrawScore;
|
|
79
79
|
getPlayerProfilePicture(username: string): Promise<Buffer | null>;
|
|
@@ -4,10 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.DivingFish = void 0;
|
|
7
|
-
const type_1 = require("
|
|
7
|
+
const type_1 = require("../../../type");
|
|
8
8
|
const __1 = __importDefault(require(".."));
|
|
9
|
-
const
|
|
10
|
-
const best50_1 = require("../../best50");
|
|
9
|
+
const database_1 = require("../../database");
|
|
11
10
|
class DivingFish extends __1.default {
|
|
12
11
|
constructor({ auth, baseURL = "https://www.diving-fish.com/api/maimaidxprober/", }) {
|
|
13
12
|
super({ baseURL });
|
|
@@ -19,10 +18,10 @@ class DivingFish extends __1.default {
|
|
|
19
18
|
return null;
|
|
20
19
|
}
|
|
21
20
|
let chartList = [];
|
|
22
|
-
if (
|
|
21
|
+
if (database_1.Database.hasLocalDatabase()) {
|
|
23
22
|
chartList = pbs.records
|
|
24
23
|
.map((chart) => {
|
|
25
|
-
return
|
|
24
|
+
return database_1.Database.getLocalChart(chart.song_id, chart.level_index);
|
|
26
25
|
})
|
|
27
26
|
.filter((v) => v !== null)
|
|
28
27
|
.map((v) => {
|
|
@@ -118,64 +117,64 @@ class DivingFish extends __1.default {
|
|
|
118
117
|
combo: (() => {
|
|
119
118
|
switch (score.fc) {
|
|
120
119
|
case "fc":
|
|
121
|
-
return
|
|
120
|
+
return type_1.EComboTypes.FULL_COMBO;
|
|
122
121
|
case "fcp":
|
|
123
|
-
return
|
|
122
|
+
return type_1.EComboTypes.FULL_COMBO_PLUS;
|
|
124
123
|
case "ap":
|
|
125
|
-
return
|
|
124
|
+
return type_1.EComboTypes.ALL_PERFECT;
|
|
126
125
|
case "app":
|
|
127
|
-
return
|
|
126
|
+
return type_1.EComboTypes.ALL_PERFECT_PLUS;
|
|
128
127
|
default:
|
|
129
|
-
return
|
|
128
|
+
return type_1.EComboTypes.NONE;
|
|
130
129
|
}
|
|
131
130
|
})(),
|
|
132
131
|
sync: (() => {
|
|
133
132
|
switch (score.fs) {
|
|
134
133
|
case "sync":
|
|
135
|
-
return
|
|
134
|
+
return type_1.ESyncTypes.SYNC_PLAY;
|
|
136
135
|
case "fs":
|
|
137
|
-
return
|
|
136
|
+
return type_1.ESyncTypes.FULL_SYNC;
|
|
138
137
|
case "fsp":
|
|
139
|
-
return
|
|
138
|
+
return type_1.ESyncTypes.FULL_SYNC_PLUS;
|
|
140
139
|
case "fsd":
|
|
141
|
-
return
|
|
140
|
+
return type_1.ESyncTypes.FULL_SYNC_DX;
|
|
142
141
|
case "fsdp":
|
|
143
|
-
return
|
|
142
|
+
return type_1.ESyncTypes.FULL_SYNC_DX_PLUS;
|
|
144
143
|
default:
|
|
145
|
-
return
|
|
144
|
+
return type_1.ESyncTypes.NONE;
|
|
146
145
|
}
|
|
147
146
|
})(),
|
|
148
147
|
achievement: score.achievements,
|
|
149
148
|
achievementRank: (() => {
|
|
150
149
|
switch (score.rate) {
|
|
151
150
|
case "c":
|
|
152
|
-
return
|
|
151
|
+
return type_1.EAchievementTypes.C;
|
|
153
152
|
case "b":
|
|
154
|
-
return
|
|
153
|
+
return type_1.EAchievementTypes.B;
|
|
155
154
|
case "bb":
|
|
156
|
-
return
|
|
155
|
+
return type_1.EAchievementTypes.BB;
|
|
157
156
|
case "bbb":
|
|
158
|
-
return
|
|
157
|
+
return type_1.EAchievementTypes.BBB;
|
|
159
158
|
case "a":
|
|
160
|
-
return
|
|
159
|
+
return type_1.EAchievementTypes.A;
|
|
161
160
|
case "aa":
|
|
162
|
-
return
|
|
161
|
+
return type_1.EAchievementTypes.AA;
|
|
163
162
|
case "aaa":
|
|
164
|
-
return
|
|
163
|
+
return type_1.EAchievementTypes.AAA;
|
|
165
164
|
case "s":
|
|
166
|
-
return
|
|
165
|
+
return type_1.EAchievementTypes.S;
|
|
167
166
|
case "sp":
|
|
168
|
-
return
|
|
167
|
+
return type_1.EAchievementTypes.SP;
|
|
169
168
|
case "ss":
|
|
170
|
-
return
|
|
169
|
+
return type_1.EAchievementTypes.SS;
|
|
171
170
|
case "ssp":
|
|
172
|
-
return
|
|
171
|
+
return type_1.EAchievementTypes.SSP;
|
|
173
172
|
case "sss":
|
|
174
|
-
return
|
|
173
|
+
return type_1.EAchievementTypes.SSS;
|
|
175
174
|
case "sssp":
|
|
176
|
-
return
|
|
175
|
+
return type_1.EAchievementTypes.SSSP;
|
|
177
176
|
default:
|
|
178
|
-
return
|
|
177
|
+
return type_1.EAchievementTypes.D;
|
|
179
178
|
}
|
|
180
179
|
})(),
|
|
181
180
|
dxRating: score.ra,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/mai/lib/adapter/divingFish/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Cache } from "
|
|
1
|
+
import { Cache } from "../../../lib/cache";
|
|
2
2
|
import axios, { AxiosInstance } from "axios";
|
|
3
|
-
import {
|
|
3
|
+
import { IScore } from "../../type";
|
|
4
4
|
export default abstract class ScoreTrackerAdapter {
|
|
5
5
|
private static _cache;
|
|
6
6
|
protected get cache(): Cache;
|
|
@@ -16,8 +16,8 @@ export default abstract class ScoreTrackerAdapter {
|
|
|
16
16
|
cacheTTL?: number, options?: axios.AxiosRequestConfig): Promise<T | undefined>;
|
|
17
17
|
protected post<T>(endpoint: string, data?: any): Promise<T | undefined>;
|
|
18
18
|
abstract getPlayerBest50(username: string): Promise<{
|
|
19
|
-
new:
|
|
20
|
-
old:
|
|
19
|
+
new: IScore[];
|
|
20
|
+
old: IScore[];
|
|
21
21
|
} | null>;
|
|
22
22
|
abstract getPlayerInfo(username: string): Promise<{
|
|
23
23
|
name: string;
|
|
@@ -25,14 +25,14 @@ export default abstract class ScoreTrackerAdapter {
|
|
|
25
25
|
} | null>;
|
|
26
26
|
abstract getPlayerProfilePicture(username: string): Promise<Buffer | null>;
|
|
27
27
|
abstract getPlayerScore(username: string, chartId: number): Promise<{
|
|
28
|
-
basic:
|
|
29
|
-
advanced:
|
|
30
|
-
expert:
|
|
31
|
-
master:
|
|
32
|
-
remaster:
|
|
33
|
-
utage:
|
|
28
|
+
basic: IScore | null;
|
|
29
|
+
advanced: IScore | null;
|
|
30
|
+
expert: IScore | null;
|
|
31
|
+
master: IScore | null;
|
|
32
|
+
remaster: IScore | null;
|
|
33
|
+
utage: IScore | null;
|
|
34
34
|
}>;
|
|
35
35
|
abstract getPlayerLevel50(username: string, level: number, page: number, options?: {
|
|
36
36
|
percise: boolean;
|
|
37
|
-
}): Promise<
|
|
37
|
+
}): Promise<IScore[] | null>;
|
|
38
38
|
}
|
|
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const cache_1 = require("
|
|
7
|
-
const mai_1 = require("
|
|
6
|
+
const cache_1 = require("../../../lib/cache");
|
|
7
|
+
const mai_1 = require("../..");
|
|
8
8
|
const axios_1 = __importDefault(require("axios"));
|
|
9
9
|
class ScoreTrackerAdapter {
|
|
10
10
|
static _cache = new cache_1.Cache();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/mai/lib/adapter/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ScoreTrackerAdapter from "..";
|
|
2
|
-
import {
|
|
2
|
+
import { IScore } from "../../../type";
|
|
3
3
|
export declare class KamaiTachi extends ScoreTrackerAdapter {
|
|
4
4
|
private currentVersion;
|
|
5
5
|
private currentRegion;
|
|
@@ -9,19 +9,20 @@ export declare class KamaiTachi extends ScoreTrackerAdapter {
|
|
|
9
9
|
region?: "DX" | "EX" | "CN";
|
|
10
10
|
});
|
|
11
11
|
versions(): KamaiTachiBuilder;
|
|
12
|
-
getPlayerPB(userId: string): Promise<
|
|
12
|
+
getPlayerPB(userId: string): Promise<KamaiTachi.IResponse<{
|
|
13
13
|
charts: KamaiTachi.IChart[];
|
|
14
14
|
pbs: KamaiTachi.IPb[];
|
|
15
15
|
songs: KamaiTachi.ISong[];
|
|
16
16
|
}> | undefined>;
|
|
17
|
+
getScoreHistory(userId: string, chartId: string): Promise<KamaiTachi.IResponse<KamaiTachi.IScore[]> | undefined>;
|
|
17
18
|
private toMaiDrawScore;
|
|
18
19
|
private getDatabaseDifficulty;
|
|
19
20
|
getPlayerBest50(userId: string, { omnimix, use, }?: {
|
|
20
21
|
omnimix?: boolean;
|
|
21
22
|
use?: "AP" | "FC" | "ALL";
|
|
22
23
|
}): Promise<{
|
|
23
|
-
new:
|
|
24
|
-
old:
|
|
24
|
+
new: IScore[];
|
|
25
|
+
old: IScore[];
|
|
25
26
|
} | null>;
|
|
26
27
|
getPlayerInfo(userId: string, options?: {
|
|
27
28
|
omnimix?: boolean;
|
|
@@ -33,51 +34,51 @@ export declare class KamaiTachi extends ScoreTrackerAdapter {
|
|
|
33
34
|
private getPlayerProfileRaw;
|
|
34
35
|
getPlayerProfilePicture(userId: string): Promise<Buffer | null>;
|
|
35
36
|
getPlayerScore(username: string, chartId: number): Promise<{
|
|
36
|
-
basic:
|
|
37
|
-
advanced:
|
|
38
|
-
expert:
|
|
39
|
-
master:
|
|
40
|
-
remaster:
|
|
41
|
-
utage:
|
|
37
|
+
basic: IScore | null;
|
|
38
|
+
advanced: IScore | null;
|
|
39
|
+
expert: IScore | null;
|
|
40
|
+
master: IScore | null;
|
|
41
|
+
remaster: IScore | null;
|
|
42
|
+
utage: IScore | null;
|
|
42
43
|
}>;
|
|
43
44
|
getPlayerLevel50(username: string, level: number, page: number, options?: {
|
|
44
45
|
percise: boolean;
|
|
45
|
-
}): Promise<
|
|
46
|
+
}): Promise<IScore[] | null>;
|
|
46
47
|
private levelBoundChecker;
|
|
47
48
|
}
|
|
48
49
|
export declare class KamaiTachiBuilder {
|
|
49
|
-
maimai(region?: "DX" | "EX"):
|
|
50
|
-
maimaiPlus(region?: "DX" | "EX"):
|
|
51
|
-
green(region?: "DX" | "EX"):
|
|
52
|
-
greenPlus(region?: "DX" | "EX"):
|
|
53
|
-
orange(region?: "DX" | "EX"):
|
|
54
|
-
orangePlus(region?: "DX" | "EX"):
|
|
55
|
-
pink(region?: "DX" | "EX"):
|
|
56
|
-
pinkPlus(region?: "DX" | "EX"):
|
|
57
|
-
murasaki(region?: "DX" | "EX"):
|
|
58
|
-
murasakiPlus(region?: "DX" | "EX"):
|
|
59
|
-
milk(region?: "DX" | "EX"):
|
|
60
|
-
milkPlus(region?: "DX" | "EX"):
|
|
61
|
-
finale(region?: "DX" | "EX"):
|
|
62
|
-
dx(region?: "DX" | "EX"):
|
|
63
|
-
dxPlus(region?: "DX" | "EX"):
|
|
64
|
-
splash(region?: "DX" | "EX"):
|
|
65
|
-
splashPlus(region?: "DX" | "EX"):
|
|
66
|
-
universe(region?: "DX" | "EX"):
|
|
67
|
-
universePlus(region?: "DX" | "EX"):
|
|
68
|
-
festival(region?: "DX" | "EX"):
|
|
69
|
-
festivalPlus(region?: "DX" | "EX"):
|
|
70
|
-
buddies(region?: "DX" | "EX"):
|
|
71
|
-
buddiesPlus(region?: "DX" | "EX"):
|
|
72
|
-
prism(region?: "DX" | "EX"):
|
|
73
|
-
prismPlus(region?: "DX" | "EX"):
|
|
50
|
+
maimai(region?: "DX" | "EX"): KamaiTachi;
|
|
51
|
+
maimaiPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
52
|
+
green(region?: "DX" | "EX"): KamaiTachi;
|
|
53
|
+
greenPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
54
|
+
orange(region?: "DX" | "EX"): KamaiTachi;
|
|
55
|
+
orangePlus(region?: "DX" | "EX"): KamaiTachi;
|
|
56
|
+
pink(region?: "DX" | "EX"): KamaiTachi;
|
|
57
|
+
pinkPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
58
|
+
murasaki(region?: "DX" | "EX"): KamaiTachi;
|
|
59
|
+
murasakiPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
60
|
+
milk(region?: "DX" | "EX"): KamaiTachi;
|
|
61
|
+
milkPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
62
|
+
finale(region?: "DX" | "EX"): KamaiTachi;
|
|
63
|
+
dx(region?: "DX" | "EX"): KamaiTachi;
|
|
64
|
+
dxPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
65
|
+
splash(region?: "DX" | "EX"): KamaiTachi;
|
|
66
|
+
splashPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
67
|
+
universe(region?: "DX" | "EX"): KamaiTachi;
|
|
68
|
+
universePlus(region?: "DX" | "EX"): KamaiTachi;
|
|
69
|
+
festival(region?: "DX" | "EX"): KamaiTachi;
|
|
70
|
+
festivalPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
71
|
+
buddies(region?: "DX" | "EX"): KamaiTachi;
|
|
72
|
+
buddiesPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
73
|
+
prism(region?: "DX" | "EX"): KamaiTachi;
|
|
74
|
+
prismPlus(region?: "DX" | "EX"): KamaiTachi;
|
|
74
75
|
CN(): {
|
|
75
|
-
DX():
|
|
76
|
-
DX2021():
|
|
77
|
-
DX2022():
|
|
78
|
-
DX2023():
|
|
79
|
-
DX2024():
|
|
80
|
-
DX2025():
|
|
76
|
+
DX(): KamaiTachi;
|
|
77
|
+
DX2021(): KamaiTachi;
|
|
78
|
+
DX2022(): KamaiTachi;
|
|
79
|
+
DX2023(): KamaiTachi;
|
|
80
|
+
DX2024(): KamaiTachi;
|
|
81
|
+
DX2025(): KamaiTachi;
|
|
81
82
|
};
|
|
82
83
|
}
|
|
83
84
|
export declare namespace KamaiTachi {
|
|
@@ -111,6 +112,47 @@ export declare namespace KamaiTachi {
|
|
|
111
112
|
searchTerms: string[];
|
|
112
113
|
title: string;
|
|
113
114
|
}
|
|
115
|
+
interface IScore {
|
|
116
|
+
calculatedData: {
|
|
117
|
+
rate: number;
|
|
118
|
+
};
|
|
119
|
+
chartID: string;
|
|
120
|
+
comment: string | null;
|
|
121
|
+
game: string;
|
|
122
|
+
highlight: boolean;
|
|
123
|
+
importType: string;
|
|
124
|
+
isPrimary: boolean;
|
|
125
|
+
playtype: string;
|
|
126
|
+
scoreData: {
|
|
127
|
+
percent: number;
|
|
128
|
+
lamp: string;
|
|
129
|
+
judgements: {
|
|
130
|
+
pcrit?: number;
|
|
131
|
+
perfect?: number;
|
|
132
|
+
great?: number;
|
|
133
|
+
good?: number;
|
|
134
|
+
miss?: number;
|
|
135
|
+
};
|
|
136
|
+
optional: {
|
|
137
|
+
fast: number;
|
|
138
|
+
slow: number;
|
|
139
|
+
maxCombo: number;
|
|
140
|
+
enumIndexes: any;
|
|
141
|
+
};
|
|
142
|
+
grade: string;
|
|
143
|
+
enumIndexes: {
|
|
144
|
+
lamp: number;
|
|
145
|
+
grade: number;
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
scoreID: string;
|
|
149
|
+
scoreMeta: any;
|
|
150
|
+
service: string;
|
|
151
|
+
songID: number;
|
|
152
|
+
timeAchieved: number;
|
|
153
|
+
timeAdded: number;
|
|
154
|
+
userID: number;
|
|
155
|
+
}
|
|
114
156
|
interface IPb {
|
|
115
157
|
chartID: string;
|
|
116
158
|
userID: number;
|
|
@@ -4,11 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.KamaiTachiBuilder = exports.KamaiTachi = void 0;
|
|
7
|
-
const type_1 = require("../../type");
|
|
8
7
|
const __1 = __importDefault(require(".."));
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
8
|
+
const util_1 = require("../../util");
|
|
9
|
+
const type_1 = require("../../../type");
|
|
10
|
+
const database_1 = require("../../database");
|
|
12
11
|
class KamaiTachi extends __1.default {
|
|
13
12
|
currentVersion;
|
|
14
13
|
currentRegion;
|
|
@@ -23,8 +22,11 @@ class KamaiTachi extends __1.default {
|
|
|
23
22
|
async getPlayerPB(userId) {
|
|
24
23
|
return this.get(`/api/v1/users/${userId}/games/maimaidx/Single/pbs/all`, undefined, 60 * 1000);
|
|
25
24
|
}
|
|
25
|
+
async getScoreHistory(userId, chartId) {
|
|
26
|
+
return this.get(`/api/v1/users/${userId}/games/maimaidx/Single/scores/${chartId}`, undefined, 60 * 1000);
|
|
27
|
+
}
|
|
26
28
|
toMaiDrawScore(score, chart, song) {
|
|
27
|
-
const localChart =
|
|
29
|
+
const localChart = database_1.Database.getLocalChart(chart.data.inGameID, this.getDatabaseDifficulty(chart));
|
|
28
30
|
const internalLevel = localChart
|
|
29
31
|
? localChart.events
|
|
30
32
|
.filter((v) => v.type === "existence")
|
|
@@ -70,60 +72,65 @@ class KamaiTachi extends __1.default {
|
|
|
70
72
|
combo: (() => {
|
|
71
73
|
switch (score.scoreData.lamp) {
|
|
72
74
|
case "FULL COMBO":
|
|
73
|
-
return
|
|
75
|
+
return type_1.EComboTypes.FULL_COMBO;
|
|
74
76
|
case "FULL COMBO+":
|
|
75
|
-
return
|
|
77
|
+
return type_1.EComboTypes.FULL_COMBO_PLUS;
|
|
76
78
|
case "ALL PERFECT":
|
|
77
|
-
return
|
|
79
|
+
return type_1.EComboTypes.ALL_PERFECT;
|
|
78
80
|
case "ALL PERFECT+":
|
|
79
|
-
return
|
|
81
|
+
return type_1.EComboTypes.ALL_PERFECT_PLUS;
|
|
80
82
|
default:
|
|
81
|
-
return
|
|
83
|
+
return type_1.EComboTypes.NONE;
|
|
82
84
|
}
|
|
83
85
|
})(),
|
|
84
|
-
sync:
|
|
86
|
+
sync: type_1.ESyncTypes.NONE,
|
|
85
87
|
achievement: score.scoreData.percent,
|
|
86
88
|
achievementRank: (() => {
|
|
87
89
|
switch (score.scoreData.grade) {
|
|
88
90
|
case "C":
|
|
89
|
-
return
|
|
91
|
+
return type_1.EAchievementTypes.C;
|
|
90
92
|
case "B":
|
|
91
|
-
return
|
|
93
|
+
return type_1.EAchievementTypes.B;
|
|
92
94
|
case "BB":
|
|
93
|
-
return
|
|
95
|
+
return type_1.EAchievementTypes.BB;
|
|
94
96
|
case "BBB":
|
|
95
|
-
return
|
|
97
|
+
return type_1.EAchievementTypes.BBB;
|
|
96
98
|
case "A":
|
|
97
|
-
return
|
|
99
|
+
return type_1.EAchievementTypes.A;
|
|
98
100
|
case "AA":
|
|
99
|
-
return
|
|
101
|
+
return type_1.EAchievementTypes.AA;
|
|
100
102
|
case "AAA":
|
|
101
|
-
return
|
|
103
|
+
return type_1.EAchievementTypes.AAA;
|
|
102
104
|
case "S":
|
|
103
|
-
return
|
|
105
|
+
return type_1.EAchievementTypes.S;
|
|
104
106
|
case "S+":
|
|
105
|
-
return
|
|
107
|
+
return type_1.EAchievementTypes.SP;
|
|
106
108
|
case "SS":
|
|
107
|
-
return
|
|
109
|
+
return type_1.EAchievementTypes.SS;
|
|
108
110
|
case "SS+":
|
|
109
|
-
return
|
|
111
|
+
return type_1.EAchievementTypes.SSP;
|
|
110
112
|
case "SSS":
|
|
111
|
-
return
|
|
113
|
+
return type_1.EAchievementTypes.SSS;
|
|
112
114
|
case "SSS+":
|
|
113
|
-
return
|
|
115
|
+
return type_1.EAchievementTypes.SSSP;
|
|
114
116
|
case "D":
|
|
115
117
|
default:
|
|
116
|
-
return
|
|
118
|
+
return type_1.EAchievementTypes.D;
|
|
117
119
|
}
|
|
118
120
|
})(),
|
|
119
121
|
dxRating: internalLevel
|
|
120
|
-
? util_1.
|
|
122
|
+
? util_1.MaimaiUtil.calculateRating(internalLevel, score.scoreData.percent)
|
|
121
123
|
: score.calculatedData.rate,
|
|
122
124
|
dxScore: (() => {
|
|
123
125
|
return ((score.scoreData.judgements.pcrit || 0) * 3 +
|
|
124
126
|
(score.scoreData.judgements.perfect || 0) * 2 +
|
|
125
127
|
(score.scoreData.judgements.great || 0));
|
|
126
128
|
})(),
|
|
129
|
+
optionalData: {
|
|
130
|
+
kt: {
|
|
131
|
+
chartId: chart.chartID,
|
|
132
|
+
},
|
|
133
|
+
},
|
|
127
134
|
};
|
|
128
135
|
}
|
|
129
136
|
getDatabaseDifficulty(chart) {
|
|
@@ -162,11 +169,11 @@ class KamaiTachi extends __1.default {
|
|
|
162
169
|
}
|
|
163
170
|
}
|
|
164
171
|
const filterIsLocalChartNewVersion = (score) => {
|
|
165
|
-
return (
|
|
172
|
+
return (database_1.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name ==
|
|
166
173
|
this.currentVersion[this.currentRegion]);
|
|
167
174
|
};
|
|
168
175
|
const filterIsLocalChartOldVersion = (score) => {
|
|
169
|
-
const addVersion =
|
|
176
|
+
const addVersion = database_1.Database.getLocalChart(score.chart.data.inGameID, this.getDatabaseDifficulty(score.chart))?.addVersion[this.currentRegion]?.name;
|
|
170
177
|
if (!addVersion)
|
|
171
178
|
return false;
|
|
172
179
|
return (KamaiTachi.compareGameVersions(this.currentVersion, KamaiTachi.getGameVersion(addVersion)) > 0);
|
|
@@ -183,7 +190,7 @@ class KamaiTachi extends __1.default {
|
|
|
183
190
|
}
|
|
184
191
|
}
|
|
185
192
|
let newScores = [], oldScores = [];
|
|
186
|
-
if (
|
|
193
|
+
if (database_1.Database.hasLocalDatabase()) {
|
|
187
194
|
newScores = pbs.filter(filterIsLocalChartNewVersion);
|
|
188
195
|
oldScores = pbs.filter(filterIsLocalChartOldVersion);
|
|
189
196
|
}
|