Pop'n Music plugin v2.0.0

* Big rewrite/reorganization of the code
* Add support for Tune Street, fantasia, Sunny Park, Lapistoria
* Add automatic convertion from plugin v1.x data to v2.x
* Enable/disable score sharing between versions
* Various fixes
This commit is contained in:
cracrayol
2021-04-09 23:08:37 +02:00
parent 718ded19cf
commit ad677b4c2b
16 changed files with 2937 additions and 933 deletions
+93
View File
@@ -0,0 +1,93 @@
export interface Achievements {
collection: 'achievements',
version: string,
}
export interface AchievementsLapistoria extends Achievements {
version: 'v22',
achievements: {
[stamp_id: string]: number;
};
stories: {
[id: string]: {
chapter_id: number;
gauge_point: number;
is_cleared: boolean;
clear_chapter: number;
};
};
items: {
[key: string]: number;
};
charas: {
[chara_id: string]: number;
};
}
export interface AchievementsEclale extends Achievements {
version: 'v23',
medals: {
[id: string]: {
level: number;
exp: number;
set_count: number;
get_count: number;
};
};
items: {
[key: string]: number;
};
charas: {
[chara_id: string]: number;
};
}
export interface AchievementsUsaneko extends Achievements {
version: 'v24' | 'v25',
areas: {
[id: string]: {
chapter_index: number;
gauge_point: number;
is_cleared: boolean;
diary: number;
};
};
courses: {
[id: string]: {
clear_type: number;
clear_rank: number;
total_score: number;
update_count: number;
sheet_num: number;
};
};
fes: {
[id: string]: {
chapter_index: number;
gauge_point: number;
is_cleared: boolean;
};
};
items: {
[key: string]: number;
};
charas: {
[chara_id: string]: number;
};
stamps: {
[stamp_id: string]: number;
};
}
+42
View File
@@ -0,0 +1,42 @@
export interface Phase {
id: number;
p: number;
}
export interface ExtraData {
[field: string]: {
path: string;
pathSrc?: string;
type: string;
default: any;
isArray?: true;
};
};
export interface Profile {
collection: 'profile',
name: string;
dataVersion: number;
}
export interface Params {
collection: 'params',
version: string,
params: {
[key: string]: any;
};
}
export interface Scores {
collection: 'scores',
version: string,
scores: {
[key: string]: {
clear_type?: number;
score: number;
cnt: number;
};
};
}
-40
View File
@@ -1,40 +0,0 @@
export interface Profile {
collection: 'profile',
name: string;
stamps: {
[ver: string]: {
[stamp_id: string]: number;
};
};
medals: {
[ver: string]: {
[id: string]: {
level: number;
exp: number;
set_count: number;
get_count: number;
};
};
};
items: {
[ver: string]: {
[key: string]: number;
};
};
charas: {
[ver: string]: {
[chara_id: string]: number;
};
};
extras: {
[ver: string]: {
[key: string]: any;
};
};
}
-13
View File
@@ -1,13 +0,0 @@
export interface Scores {
collection: 'scores',
scores: {
[key: string]: {
clearmedal?: number;
clear_type?: number;
clear_rank?: number;
score: number;
cnt: number;
};
};
}