mirror of
https://github.com/asphyxia-core/plugins.git
synced 2026-03-21 17:34:46 -05:00
IIDX: Initial support added for Pinky Crush
This commit is contained in:
parent
3bad80d504
commit
4427834df4
|
|
@ -1,6 +1,6 @@
|
|||
# beatmaniaIIDX
|
||||
|
||||
Plugin Version: **v0.1.16**
|
||||
Plugin Version: **v0.1.17**
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -23,6 +23,7 @@ Supported Versions
|
|||
- beatmaniaIIDX 29 CastHour (2022082400)
|
||||
- beatmaniaIIDX 30 RESIDENT (2023090500)
|
||||
- beatmaniaIIDX 31 EPOLIS (2024082600)
|
||||
- beatmaniaIIDX 32 Pinky Crush (2025082500)
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -43,9 +44,8 @@ Known Issues
|
|||
- LEGGENDARIA play records before HEROIC VERSE may not display on higher version due to missing conversion code
|
||||
- SUPER FUTURE 2323 play records doesn't display on other version due to missing conversion code
|
||||
- ONE MORE EXTRA STAGE progress won't save (can't test this due to skill issue)
|
||||
- Some of licensed songs are locked behind due to missing license element (needs to be verified)
|
||||
- Some of licensed songs are locked behind (kinda solved with music\_open but needs to be verified)
|
||||
- Some of badges aren't saving in RESIDENT ~ (needs to figure out name to id)
|
||||
- QPRO may have wrong item if you equipped item from STEP UP result (this probably caused by qpro\_secret\_flg being -1)
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -161,6 +161,10 @@ Changelogs
|
|||
- Fixed where unable to login (tricoro, CastHour, Rootage)
|
||||
- Fixed where unable to specify rival in WebUI
|
||||
- Fixed where music.arenaCPU isn't working as intended due to change of type (EPOLIS ~)
|
||||
- Fixed where qpro head equip request handle as hand equip (@anzuwork)
|
||||
- Added error message for invalid score database entries
|
||||
- Reverted `v0.1.15` dev mode related code changes (now requires proper dev setup, refer parent README.md)
|
||||
- WebUI is now display values of corresponding version
|
||||
|
||||
**v0.1.17**
|
||||
- Added Initial support for Pinky Crush
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
"15": {
|
||||
"music_id": [ 25090, 23068, 19004, 29045 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
"kind": 0
|
||||
},
|
||||
"16": {
|
||||
"music_id": [ 23005, 27078, 22065, 27060 ],
|
||||
|
|
@ -44,5 +44,51 @@
|
|||
"kind": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"32": {
|
||||
"0": {
|
||||
"15": {
|
||||
"music_id": [ 19022, 30033, 27013, 29045 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"16": {
|
||||
"music_id": [ 27034, 24023, 16009, 25085 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"17": {
|
||||
"music_id": [ 26087, 19002, 29050, 30024 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"18": {
|
||||
"music_id": [ 30052, 18032, 16020, 12004 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
}
|
||||
},
|
||||
"1": {
|
||||
"15": {
|
||||
"music_id": [ 12002, 31063, 23046, 30020 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"16": {
|
||||
"music_id": [ 26106, 14021, 29052, 23075 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"17": {
|
||||
"music_id": [ 29042, 26043, 17017, 28005 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
},
|
||||
"18": {
|
||||
"music_id": [ 25007, 29017, 19002, 9028 ],
|
||||
"class_id": [ 3, 3, 3, 3 ],
|
||||
"kind": 0
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,5 +56,27 @@
|
|||
"31110": { "kind": 0 },
|
||||
"31112": { "kind": 0 },
|
||||
"31113": { "kind": 0 }
|
||||
},
|
||||
"32": {
|
||||
"32022": { "kind": 0 },
|
||||
"32049": { "kind": 0 },
|
||||
"32078": { "kind": 0 },
|
||||
"32079": { "kind": 0 },
|
||||
"32080": { "kind": 0 },
|
||||
"32081": { "kind": 0 },
|
||||
"32082": { "kind": 0 },
|
||||
"32083": { "kind": 0 },
|
||||
"32084": { "kind": 0 },
|
||||
"32085": { "kind": 0 },
|
||||
"32096": { "kind": 0 },
|
||||
"32097": { "kind": 0 },
|
||||
"32098": { "kind": 0 },
|
||||
"32019": { "kind": 0 },
|
||||
"32101": { "kind": 0 },
|
||||
"32102": { "kind": 0 },
|
||||
"32103": { "kind": 0 },
|
||||
"32104": { "kind": 0 },
|
||||
"32110": { "kind": 0 },
|
||||
"32111": { "kind": 0 }
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,17 +19,14 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
// following datas are made up needs to figure out correct way to do it //
|
||||
let music_open = JSON.parse(await IO.ReadFile("data/music_open.json", "utf-8"));
|
||||
if (!_.isNil(music_open[version])) {
|
||||
result = {
|
||||
...result,
|
||||
music_open: [],
|
||||
}
|
||||
result = Object.assign(result, { music_open: [] });
|
||||
|
||||
Object.keys(music_open).forEach(v => {
|
||||
Object.keys(music_open[v]).forEach(m => {
|
||||
if (parseInt(v) > version) return;
|
||||
if (Number(v) > version) return;
|
||||
|
||||
result.music_open.push({
|
||||
music_id: K.ITEM("s32", parseInt(m)),
|
||||
music_id: K.ITEM("s32", Number(m)),
|
||||
kind: K.ITEM("s32", music_open[v][m].kind),
|
||||
});
|
||||
});
|
||||
|
|
@ -37,16 +34,14 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
}
|
||||
|
||||
switch (version) {
|
||||
case 31:
|
||||
result.arena_schedule = {
|
||||
...result.arena_schedule,
|
||||
rule_type: K.ITEM("u8", 0), // arena rule for online //
|
||||
}
|
||||
case 32:
|
||||
result.arena_schedule.phase = K.ITEM("u8", 3);
|
||||
result.arena_schedult = Object.assign(result.arena_schedule, { season: K.ITEM("u8", 0) }); // arena season for online //
|
||||
|
||||
result = {
|
||||
...result,
|
||||
grade_course: [],
|
||||
}
|
||||
case 31:
|
||||
result.arena_schedult = Object.assign(result.arena_schedule, { rule_type: K.ITEM("u8", 0) }); // arena rule for online //
|
||||
|
||||
result = Object.assign(result, { grade_course: [] });
|
||||
|
||||
// following datas are made up needs to figure out correct way to do it //
|
||||
let grade = JSON.parse(await IO.ReadFile("data/grade.json", "utf-8"));
|
||||
|
|
@ -54,8 +49,8 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
Object.keys(grade[version]).forEach(s => {
|
||||
Object.keys(grade[version][s]).forEach(c => {
|
||||
result.grade_course.push({
|
||||
play_style: K.ITEM("s32", parseInt(s)),
|
||||
grade_id: K.ITEM("s32", parseInt(c)),
|
||||
play_style: K.ITEM("s32", Number(s)),
|
||||
grade_id: K.ITEM("s32", Number(c)),
|
||||
is_valid: K.ITEM("bool", true),
|
||||
music_id_0: K.ITEM("s32", grade[version][s][c].music_id[0]),
|
||||
class_id_0: K.ITEM("s32", grade[version][s][c].class_id[0]),
|
||||
|
|
@ -109,8 +104,7 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
|
||||
switch (version) {
|
||||
case 29:
|
||||
result = {
|
||||
...result,
|
||||
result = Object.assign(result, {
|
||||
CommonBossPhase: K.ATTR({ val: String(3) }),
|
||||
Event1InternalPhase: K.ATTR({ val: String(U.GetConfig("ch_event")) }),
|
||||
ExtraBossEventPhase: K.ATTR({ val: String(U.GetConfig("ch_extraboss")) }),
|
||||
|
|
@ -119,11 +113,10 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
isEiseiOpenFlg: K.ATTR({ val: String(Number(U.GetConfig("Eisei"))) }),
|
||||
WorldTourismOpenList: K.ATTR({ val: String(-1) }),
|
||||
BPLBattleOpenPhase: K.ATTR({ val: String(2) }),
|
||||
}
|
||||
});
|
||||
break;
|
||||
case 30:
|
||||
result = {
|
||||
...result,
|
||||
result = Object.assign(result, {
|
||||
CommonBossPhase: K.ATTR({ val: String(3) }),
|
||||
Event1InternalPhase: K.ATTR({ val: String(U.GetConfig("rs_event")) }),
|
||||
ExtraBossEventPhase: K.ATTR({ val: String(U.GetConfig("rs_extraboss")) }),
|
||||
|
|
@ -132,7 +125,7 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
isEiseiOpenFlg: K.ATTR({ val: String(Number(U.GetConfig("Eisei"))) }),
|
||||
WorldTourismOpenList: K.ATTR({ val: String(-1) }),
|
||||
BPLBattleOpenPhase: K.ATTR({ val: String(2) }),
|
||||
}
|
||||
})
|
||||
break;
|
||||
case 31:
|
||||
let totalMetron = 0;
|
||||
|
|
@ -148,8 +141,7 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
});
|
||||
}
|
||||
|
||||
result = {
|
||||
...result,
|
||||
Object.assign(result, {
|
||||
CommonBossPhase: K.ATTR({ val: String(3) }),
|
||||
Event1Value: K.ATTR({ val: String(U.GetConfig("ep_event")) }),
|
||||
Event1Phase: K.ATTR({ val: String(U.GetConfig("ep_event1")) }),
|
||||
|
|
@ -162,7 +154,19 @@ export const gssysteminfo: EPR = async (info, data, send) => {
|
|||
UnlockLeggendaria: K.ATTR({ val: String(1) }),
|
||||
BPLSerialCodePhase: K.ATTR({ val: String(0) }),
|
||||
Event1AllPlayerTotalGetMetron: K.ATTR({ val: String(totalMetron) }), // total amount of all users metron //
|
||||
}
|
||||
});
|
||||
break;
|
||||
case 32:
|
||||
result = Object.assign(result, {
|
||||
Event1Value: K.ATTR({ val: String(U.GetConfig("pc_event")) }), // TEST //
|
||||
Event1Phase: K.ATTR({ val: String(U.GetConfig("pc_event1")) }), // TEST //
|
||||
Event2Phase: K.ATTR({ val: String(U.GetConfig("pc_event2")) }), // TEST //
|
||||
ExtraBossEventPhase: K.ATTR({ val: String(U.GetConfig("pc_extraboss")) }), // TEST //
|
||||
isNewSongAnother12OpenFlg: K.ATTR({ val: String(Number(U.GetConfig("NewSongAnother12"))) }),
|
||||
isKiwamiOpenFlg: K.ATTR({ val: String(Number(U.GetConfig("Eisei"))) }),
|
||||
WorldTourismOpenList: K.ATTR({ val: String(-1) }),
|
||||
OldBPLBattleOpenPhase: K.ATTR({ val: String(3) }),
|
||||
});
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -6,13 +6,13 @@ import { badge } from "../models/badge";
|
|||
|
||||
export const graderaised: EPR = async (info, data, send) => {
|
||||
const version = GetVersion(info);
|
||||
const iidxid = parseInt($(data).attr().iidxid);
|
||||
const iidxid = Number($(data).attr().iidxid);
|
||||
const refid = await IDtoRef(iidxid);
|
||||
const gid = parseInt($(data).attr().gid);
|
||||
const gtype = parseInt($(data).attr().gtype);
|
||||
const gid = Number($(data).attr().gid);
|
||||
const gtype = Number($(data).attr().gtype);
|
||||
|
||||
let cflg = parseInt($(data).attr().cflg);
|
||||
let achi = parseInt($(data).attr().achi);
|
||||
let cflg = Number($(data).attr().cflg);
|
||||
let achi = Number($(data).attr().achi);
|
||||
|
||||
let pcdata = await DB.FindOne<pcdata>(refid, { collection: "pcdata", version: version });
|
||||
let grade = await DB.FindOne<grade>(refid, {
|
||||
|
|
@ -22,7 +22,7 @@ export const graderaised: EPR = async (info, data, send) => {
|
|||
gradeId: gid,
|
||||
});
|
||||
|
||||
if (version >= 23) cflg = parseInt($(data).attr().cstage);
|
||||
if (version >= 23) cflg = Number($(data).attr().cstage);
|
||||
|
||||
const isTDJ = !_.isNil($(data).element("lightning_play_data")); // lightning model //
|
||||
const hasEiseiData = (!_.isNil($(data).element("eisei_data")) || !_.isNil($(data).element("eisei_grade_data")) || !_.isNil($(data).element("kiwami_data")));
|
||||
|
|
@ -40,20 +40,20 @@ export const graderaised: EPR = async (info, data, send) => {
|
|||
|
||||
switch (version) {
|
||||
case 27:
|
||||
eisei_clear_type = parseInt($(data).attr("eisei_data").clear_type);
|
||||
eisei_grade_id = parseInt($(data).attr("eisei_data").grade_id);
|
||||
eisei_grade_type = parseInt($(data).attr("eisei_data").grade_type);
|
||||
eisei_stage_num = parseInt($(data).attr("eisei_data").stage_num);
|
||||
eisei_clear_type = Number($(data).attr("eisei_data").clear_type);
|
||||
eisei_grade_id = Number($(data).attr("eisei_data").grade_id);
|
||||
eisei_grade_type = Number($(data).attr("eisei_data").grade_type);
|
||||
eisei_stage_num = Number($(data).attr("eisei_data").stage_num);
|
||||
|
||||
eisei_past_achievement = $(data).element("eisei_data").numbers("past_achievement");
|
||||
eisei_max_past_achievement = $(data).element("eisei_data").numbers("max_past_achievement");
|
||||
break;
|
||||
case 30:
|
||||
eisei_clear_type = parseInt($(data).element("eisei_data").attr().clear_type);
|
||||
eisei_grade_id = parseInt($(data).element("eisei_data").attr().grade_id);
|
||||
eisei_grade_type = parseInt($(data).element("eisei_data").attr().grade_type);
|
||||
eisei_stage_num = parseInt($(data).element("eisei_data").attr().stage_num);
|
||||
eisei_option = parseInt($(data).element("eisei_data").attr().option);
|
||||
eisei_clear_type = Number($(data).element("eisei_data").attr().clear_type);
|
||||
eisei_grade_id = Number($(data).element("eisei_data").attr().grade_id);
|
||||
eisei_grade_type = Number($(data).element("eisei_data").attr().grade_type);
|
||||
eisei_stage_num = Number($(data).element("eisei_data").attr().stage_num);
|
||||
eisei_option = Number($(data).element("eisei_data").attr().option);
|
||||
|
||||
eisei_past_achievement = $(data).element("eisei_data").numbers("past_achievement");
|
||||
eisei_past_selected_course = $(data).element("eisei_data").numbers("past_selected_course");
|
||||
|
|
@ -61,11 +61,12 @@ export const graderaised: EPR = async (info, data, send) => {
|
|||
eisei_max_past_selected_course = $(data).element("eisei_data").numbers("max_past_selected_course");
|
||||
break;
|
||||
case 31:
|
||||
eisei_clear_type = parseInt($(data).attr("kiwami_data").clear_type);
|
||||
eisei_grade_id = parseInt($(data).attr("kiwami_data").grade_id);
|
||||
eisei_grade_type = parseInt($(data).attr("kiwami_data").grade_type);
|
||||
eisei_stage_num = parseInt($(data).attr("kiwami_data").stage_num);
|
||||
eisei_option = parseInt($(data).attr("kiwami_data").option);
|
||||
case 32:
|
||||
eisei_clear_type = Number($(data).attr("kiwami_data").clear_type);
|
||||
eisei_grade_id = Number($(data).attr("kiwami_data").grade_id);
|
||||
eisei_grade_type = Number($(data).attr("kiwami_data").grade_type);
|
||||
eisei_stage_num = Number($(data).attr("kiwami_data").stage_num);
|
||||
eisei_option = Number($(data).attr("kiwami_data").option);
|
||||
|
||||
eisei_past_achievement = $(data).element("kiwami_data").numbers("past_achievement");
|
||||
eisei_past_selected_course = $(data).element("kiwami_data").numbers("past_selected_course");
|
||||
|
|
@ -74,10 +75,10 @@ export const graderaised: EPR = async (info, data, send) => {
|
|||
break;
|
||||
|
||||
default:
|
||||
eisei_clear_type = parseInt($(data).attr("eisei_grade_data").clear_type);
|
||||
eisei_grade_id = parseInt($(data).attr("eisei_grade_data").grade_id);
|
||||
eisei_grade_type = parseInt($(data).attr("eisei_grade_data").grade_type);
|
||||
eisei_stage_num = parseInt($(data).attr("eisei_grade_data").stage_num);
|
||||
eisei_clear_type = Number($(data).attr("eisei_grade_data").clear_type);
|
||||
eisei_grade_id = Number($(data).attr("eisei_grade_data").grade_id);
|
||||
eisei_grade_type = Number($(data).attr("eisei_grade_data").grade_type);
|
||||
eisei_stage_num = Number($(data).attr("eisei_grade_data").stage_num);
|
||||
|
||||
eisei_past_achievement = $(data).element("eisei_grade_data").numbers("past_achievement");
|
||||
eisei_past_selected_course = $(data).element("eisei_grade_data").numbers("past_selected_course");
|
||||
|
|
@ -181,11 +182,11 @@ export const graderaised: EPR = async (info, data, send) => {
|
|||
collection: "badge",
|
||||
version: version,
|
||||
category_name: "grade",
|
||||
flg_id: parseInt($(data).attr("badge").badge_flg_id),
|
||||
flg_id: Number($(data).attr("badge").badge_flg_id),
|
||||
},
|
||||
{
|
||||
$set: {
|
||||
flg: parseInt($(data).attr("badge").badge_flg),
|
||||
flg: Number($(data).attr("badge").badge_flg),
|
||||
}
|
||||
}
|
||||
);
|
||||
|
|
|
|||
|
|
@ -1,9 +1,10 @@
|
|||
import { IDtoRef, GetVersion, OldMidToNewMid, NewMidToOldMid, ReftoProfile, ReftoPcdata, ClidToPlaySide, ReftoQPRO, NumArrayToString, OldMidToVerMid } from "../util";
|
||||
import { IDtoRef, GetVersion, OldMidToNewMid, NewMidToOldMid, ReftoProfile, ReftoPcdata, ClidToPlaySide, ReftoQPRO, NumArrayToString, OldMidToVerMid, GetWeekId } from "../util";
|
||||
import { score, score_top } from "../models/score";
|
||||
import { profile } from "../models/profile";
|
||||
import { shop_data } from "../models/shop";
|
||||
import { tutorial } from "../models/tutorial";
|
||||
import { badge } from "../models/badge";
|
||||
import { activity_mybest } from "../models/activity";
|
||||
|
||||
export const musicgetrank: EPR = async (info, data, send) => {
|
||||
const version = GetVersion(info);
|
||||
|
|
@ -689,6 +690,51 @@ export const musicreg: EPR = async (info, data, send) => {
|
|||
}
|
||||
}
|
||||
|
||||
let date = new Date();
|
||||
if (!_.isNil($(data).element("best_result"))) {
|
||||
await DB.Upsert<activity_mybest>(
|
||||
refid,
|
||||
{
|
||||
collection: "activity_mybest",
|
||||
version: version,
|
||||
|
||||
play_style: Number($(data).attr("best_result").play_style),
|
||||
play_side: Number($(data).attr("best_result").play_side),
|
||||
music_id: Number($(data).attr("best_result").music_id),
|
||||
note_id: Number($(data).attr("best_result").note_id),
|
||||
},
|
||||
{
|
||||
$set: {
|
||||
target_graph: Number($(data).attr("best_result").target_graph),
|
||||
target_score: Number($(data).attr("best_result").target_score),
|
||||
pacemaker: Number($(data).attr("best_result").pacemaker),
|
||||
best_clear: Number($(data).attr("best_result").best_clear),
|
||||
best_score: Number($(data).attr("best_result").best_score),
|
||||
best_misscount: Number($(data).attr("best_result").best_misscount),
|
||||
now_clear: Number($(data).attr("best_result").now_clear),
|
||||
now_score: Number($(data).attr("best_result").now_score),
|
||||
now_misscount: Number($(data).attr("best_result").now_misscount),
|
||||
now_pgreat: Number($(data).attr("best_result").now_pgreat),
|
||||
now_great: Number($(data).attr("best_result").now_great),
|
||||
now_good: Number($(data).attr("best_result").now_good),
|
||||
now_bad: Number($(data).attr("best_result").now_bad),
|
||||
now_poor: Number($(data).attr("best_result").now_poor),
|
||||
now_combo: Number($(data).attr("best_result").now_combo),
|
||||
now_fast: Number($(data).attr("best_result").now_fast),
|
||||
now_slow: Number($(data).attr("best_result").now_slow),
|
||||
option: Number($(data).attr("best_result").option),
|
||||
option_2: Number($(data).attr("best_result").option2),
|
||||
ghost_gauge_data: $(data).element("best_result").buffer("ghost_gauge_data").toString("base64"),
|
||||
gauge_type: Number($(data).attr("best_result").gauge_type),
|
||||
result_type: Number($(data).attr("best_result").result_type),
|
||||
is_special_result: Number($(data).element("best_result").bool("is_special_result")),
|
||||
|
||||
update_date: Math.floor(date.valueOf() / 1000),
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
let shop_rank = -1, shop_rank_data = [];
|
||||
let scores: any[][];
|
||||
scores = (
|
||||
|
|
@ -769,14 +815,9 @@ export const musicreg: EPR = async (info, data, send) => {
|
|||
}
|
||||
});
|
||||
|
||||
if (version > 23) {
|
||||
crate = Math.round((cflgs / shop_rank_data.length) * 1000);
|
||||
frate = Math.round((fcflgs / shop_rank_data.length) * 1000);
|
||||
}
|
||||
else {
|
||||
crate = Math.round((cflgs / shop_rank_data.length) * 100);
|
||||
frate = Math.round((fcflgs / shop_rank_data.length) * 100);
|
||||
}
|
||||
let rate = version > 23 ? 1000 : 100;
|
||||
crate = Math.round((cflgs / shop_rank_data.length) * rate);
|
||||
frate = Math.round((fcflgs / shop_rank_data.length) * rate);
|
||||
|
||||
let result: any = {
|
||||
"@attr": {
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -5,21 +5,21 @@ import { GetVersion, IDtoRef } from "../util";
|
|||
export const rankingentry: EPR = async (info, data, send) => {
|
||||
// pside //
|
||||
const version = GetVersion(info);
|
||||
const refid = await IDtoRef(parseInt($(data).attr().iidxid));
|
||||
const refid = await IDtoRef(Number($(data).attr().iidxid));
|
||||
|
||||
const coid = parseInt($(data).attr().coid);
|
||||
const clid = parseInt($(data).attr().clid);
|
||||
const coid = Number($(data).attr().coid);
|
||||
const clid = Number($(data).attr().clid);
|
||||
|
||||
const opname = $(data).attr().opname;
|
||||
const oppid = parseInt($(data).attr().oppid);
|
||||
const pgnum = parseInt($(data).attr().pgnum);
|
||||
const gnum = parseInt($(data).attr().gnum);
|
||||
const opt = parseInt($(data).attr().opt);
|
||||
const opt2 = parseInt($(data).attr().opt2);
|
||||
const clr = parseInt($(data).attr().clr);
|
||||
const oppid = Number($(data).attr().oppid);
|
||||
const pgnum = Number($(data).attr().pgnum);
|
||||
const gnum = Number($(data).attr().gnum);
|
||||
const opt = Number($(data).attr().opt);
|
||||
const opt2 = Number($(data).attr().opt2);
|
||||
const clr = Number($(data).attr().clr);
|
||||
|
||||
const exscore = (pgnum * 2 + gnum);
|
||||
const cstage = parseInt($(data).attr().cstage);
|
||||
const cstage = Number($(data).attr().cstage);
|
||||
|
||||
const expert_data = await DB.FindOne<expert>(refid, {
|
||||
collection: "expert",
|
||||
|
|
@ -123,16 +123,16 @@ export const rankingentry: EPR = async (info, data, send) => {
|
|||
|
||||
export const rankingoentry: EPR = async (info, data, send) => {
|
||||
const version = GetVersion(info);
|
||||
const refid = await IDtoRef(parseInt($(data).attr().iidxid));
|
||||
const refid = await IDtoRef(Number($(data).attr().iidxid));
|
||||
|
||||
const coid = parseInt($(data).attr().coid);
|
||||
const clid = parseInt($(data).attr().clid);
|
||||
const coid = Number($(data).attr().coid);
|
||||
const clid = Number($(data).attr().clid);
|
||||
|
||||
const pgnum = parseInt($(data).attr().pgnum);
|
||||
const gnum = parseInt($(data).attr().gnum);
|
||||
const opt = parseInt($(data).attr().opt);
|
||||
const opt2 = parseInt($(data).attr().opt2);
|
||||
const clr = parseInt($(data).attr().clr);
|
||||
const pgnum = Number($(data).attr().pgnum);
|
||||
const gnum = Number($(data).attr().gnum);
|
||||
const opt = Number($(data).attr().opt);
|
||||
const opt2 = Number($(data).attr().opt2);
|
||||
const clr = Number($(data).attr().clr);
|
||||
|
||||
const exscore = (pgnum * 2 + gnum);
|
||||
|
||||
|
|
@ -146,8 +146,8 @@ export const rankinggetranker: EPR = async (info, data, send) => {
|
|||
const ranking = await DB.Find<ranking>({
|
||||
collection: "ranking",
|
||||
version: version,
|
||||
coid: parseInt($(data).attr().coid),
|
||||
clid: parseInt($(data).attr().clid),
|
||||
coid: Number($(data).attr().coid),
|
||||
clid: Number($(data).attr().clid),
|
||||
});
|
||||
let result = {
|
||||
ranker: [],
|
||||
|
|
|
|||
|
|
@ -207,24 +207,24 @@ export const updateCustomSettings = async (data) => {
|
|||
});
|
||||
|
||||
let customize = {
|
||||
frame: parseInt(data.frame),
|
||||
turntable: parseInt(data.turntable),
|
||||
note_burst: parseInt(data.note_burst),
|
||||
menu_music: parseInt(data.menu_music),
|
||||
lane_cover: parseInt(data.lane_cover),
|
||||
category_vox: parseInt(data.category_vox),
|
||||
note_skin: parseInt(data.note_skin),
|
||||
full_combo_splash: parseInt(data.full_combo_splash),
|
||||
frame: Number(data.frame),
|
||||
turntable: Number(data.turntable),
|
||||
note_burst: Number(data.note_burst),
|
||||
menu_music: Number(data.menu_music),
|
||||
lane_cover: Number(data.lane_cover),
|
||||
category_vox: Number(data.category_vox),
|
||||
note_skin: Number(data.note_skin),
|
||||
full_combo_splash: Number(data.full_combo_splash),
|
||||
disable_musicpreview: StoB(data.disable_musicpreview),
|
||||
|
||||
note_beam: parseInt(data.note_beam),
|
||||
judge_font: parseInt(data.judge_font),
|
||||
pacemaker_cover: parseInt(data.pacemaker_cover),
|
||||
note_beam: Number(data.note_beam),
|
||||
judge_font: Number(data.judge_font),
|
||||
pacemaker_cover: Number(data.pacemaker_cover),
|
||||
vefx_lock: StoB(data.vefx_lock),
|
||||
effect: parseInt(data.effect),
|
||||
bomb_size: parseInt(data.bomb_size),
|
||||
effect: Number(data.effect),
|
||||
bomb_size: Number(data.bomb_size),
|
||||
disable_hcn_color: StoB(data.disable_hcn_color),
|
||||
first_note_preview: parseInt(data.first_note_preview),
|
||||
first_note_preview: Number(data.first_note_preview),
|
||||
|
||||
rank_folder: StoB(data.rank_folder),
|
||||
clear_folder: StoB(data.clear_folder),
|
||||
|
|
@ -240,17 +240,17 @@ export const updateCustomSettings = async (data) => {
|
|||
hide_iidxid: StoB(data.hide_iidxid),
|
||||
disable_beginner_option: StoB(data.disable_beginner_option),
|
||||
|
||||
qpro_head: parseInt(data.qpro_head),
|
||||
qpro_hair: parseInt(data.qpro_hair),
|
||||
qpro_face: parseInt(data.qpro_face),
|
||||
qpro_hand: parseInt(data.qpro_hand),
|
||||
qpro_body: parseInt(data.qpro_body),
|
||||
qpro_back: parseInt(data.qpro_back),
|
||||
qpro_head: Number(data.qpro_head),
|
||||
qpro_hair: Number(data.qpro_hair),
|
||||
qpro_face: Number(data.qpro_face),
|
||||
qpro_hand: Number(data.qpro_hand),
|
||||
qpro_body: Number(data.qpro_body),
|
||||
qpro_back: Number(data.qpro_back),
|
||||
}
|
||||
|
||||
await DB.Upsert<custom>(data.refid, {
|
||||
collection: "custom",
|
||||
version: parseInt(data.version)
|
||||
version: Number(data.version)
|
||||
},
|
||||
{
|
||||
$set: customize
|
||||
|
|
@ -270,12 +270,12 @@ export const updateCustomSettings = async (data) => {
|
|||
if (data.version > 27) {
|
||||
await DB.Upsert<lightning_custom>(data.refid, {
|
||||
collection: "lightning_custom",
|
||||
version: parseInt(data.version)
|
||||
version: Number(data.version)
|
||||
},
|
||||
{
|
||||
$set: {
|
||||
premium_skin: parseInt(data.lm_skin),
|
||||
premium_bg: parseInt(data.lm_bg),
|
||||
premium_skin: Number(data.lm_skin),
|
||||
premium_bg: Number(data.lm_bg),
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
|
|||
|
|
@ -484,11 +484,36 @@ export function register() {
|
|||
default: 3,
|
||||
});
|
||||
|
||||
// Pinky Crush //
|
||||
R.Config("pc_event", {
|
||||
name: "Event Phase (PC)",
|
||||
desc: "ピンキージャンプアップ! / ピンキーアンダーグラウンド",
|
||||
type: "integer",
|
||||
default: 2,
|
||||
});
|
||||
R.Config("pc_event1", {
|
||||
name: "ピンキージャンプアップ!",
|
||||
desc: "ピンキージャンプアップ! Phase",
|
||||
type: "integer",
|
||||
default: 3,
|
||||
});
|
||||
R.Config("pc_event2", {
|
||||
name: "ピンキーアンダーグラウンド",
|
||||
desc: "ピンキーアンダーグラウンド Phase",
|
||||
type: "integer",
|
||||
default: 3,
|
||||
});
|
||||
R.Config("pc_extraboss", {
|
||||
name: "Extra Boss Phase (PC)",
|
||||
type: "integer",
|
||||
default: 3,
|
||||
});
|
||||
|
||||
// TODO:: Make a list of customize items //
|
||||
R.WebUIEvent("iidxGetProfile", async (data, send: WebUISend) => {
|
||||
const pcdata = await DB.FindOne(data.refid, {
|
||||
collection: "pcdata",
|
||||
version: parseInt(data.version),
|
||||
version: Number(data.version),
|
||||
});
|
||||
|
||||
return send.json({
|
||||
|
|
@ -498,12 +523,12 @@ export function register() {
|
|||
R.WebUIEvent("iidxGetSetting", async (data, send: WebUISend) => {
|
||||
const custom = await DB.FindOne(data.refid, {
|
||||
collection: "custom",
|
||||
version: parseInt(data.version),
|
||||
version: Number(data.version),
|
||||
});
|
||||
|
||||
const lm_custom = await DB.FindOne(data.refid, {
|
||||
collection: "lightning_custom",
|
||||
version: parseInt(data.version),
|
||||
version: Number(data.version),
|
||||
});
|
||||
|
||||
return send.json({
|
||||
|
|
@ -529,6 +554,7 @@ export function register() {
|
|||
R.Route(`IIDX29${method}`, handler);
|
||||
R.Route(`IIDX30${method}`, handler);
|
||||
R.Route(`IIDX31${method}`, handler);
|
||||
R.Route(`IIDX32${method}`, handler);
|
||||
};
|
||||
|
||||
MultiRoute("pc.common", pccommon);
|
||||
|
|
|
|||
50
iidx@asphyxia/models/activity.ts
Normal file
50
iidx@asphyxia/models/activity.ts
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
export interface activity {
|
||||
collection: "activity";
|
||||
version: number;
|
||||
|
||||
date: number;
|
||||
play_style: number;
|
||||
|
||||
music_num: number;
|
||||
play_time: number;
|
||||
keyboard_num: number;
|
||||
scratch_num: number;
|
||||
clear_update_num: number[];
|
||||
score_update_num: number[];
|
||||
}
|
||||
|
||||
export interface activity_mybest {
|
||||
collection: "activity_mybest";
|
||||
version: number;
|
||||
|
||||
play_style: number;
|
||||
play_side: number;
|
||||
music_id: number;
|
||||
note_id: number;
|
||||
|
||||
target_graph: number;
|
||||
target_score: number;
|
||||
pacemaker: number;
|
||||
best_clear: number;
|
||||
best_score: number;
|
||||
best_misscount: number;
|
||||
now_clear: number;
|
||||
now_score: number;
|
||||
now_misscount: number;
|
||||
now_pgreat: number;
|
||||
now_great: number;
|
||||
now_good: number;
|
||||
now_bad: number;
|
||||
now_poor: number;
|
||||
now_combo: number;
|
||||
now_fast: number;
|
||||
now_slow: number;
|
||||
option: number;
|
||||
option_2: number;
|
||||
ghost_gauge_data: string;
|
||||
gauge_type: number;
|
||||
result_type: number;
|
||||
is_special_result: number;
|
||||
|
||||
update_date: number;
|
||||
}
|
||||
10
iidx@asphyxia/models/extraboss.ts
Normal file
10
iidx@asphyxia/models/extraboss.ts
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
export interface extra_boss {
|
||||
collection: "extra_boss";
|
||||
version: number;
|
||||
phase: number;
|
||||
|
||||
extra: number;
|
||||
extra_b: number;
|
||||
onemore: number;
|
||||
onemore_b: number;
|
||||
}
|
||||
|
|
@ -107,6 +107,15 @@ export interface lightning_musicfilter {
|
|||
value1: number;
|
||||
}
|
||||
|
||||
export interface lightning_musicfilter_sort {
|
||||
collection: "lightning_musicfilter_sort";
|
||||
version: number;
|
||||
|
||||
play_style: number;
|
||||
folder_id: number;
|
||||
sort: number;
|
||||
}
|
||||
|
||||
export interface musicfilter_data {
|
||||
play_style: number;
|
||||
folder_id: number;
|
||||
|
|
@ -116,6 +125,12 @@ export interface musicfilter_data {
|
|||
value1: number;
|
||||
}
|
||||
|
||||
export interface musicfilter_sort_data {
|
||||
play_style: number;
|
||||
folder_id: number;
|
||||
sort: number;
|
||||
}
|
||||
|
||||
export const lm_playdata = {
|
||||
sp_num: 0,
|
||||
dp_num: 0,
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ export interface pcdata {
|
|||
mcomb: number;
|
||||
ncomb: number;
|
||||
mode: number;
|
||||
category: number; // attribute (Pinky Crush) //
|
||||
pmode: number;
|
||||
liflen: number;
|
||||
judge: number; // attribute (tricoro) //
|
||||
|
|
@ -33,6 +34,7 @@ export interface pcdata {
|
|||
fcombo: number[];
|
||||
ngrade: number; // attribute (BISTROVER) //
|
||||
rtype: number; // attribute (Heroic Verse) //
|
||||
bgnflg: number; // attribute (Pinky Crush) //
|
||||
player_kind: number; // attribute (EPOLIS) //
|
||||
gpos: number;
|
||||
|
||||
|
|
@ -92,13 +94,16 @@ export interface pcdata {
|
|||
d_visualization: number;
|
||||
s_classic_hispeed: number; // EPOLIS //
|
||||
d_classic_hispeed: number;
|
||||
movie_thumbnail: number; // Pinky Crush //
|
||||
|
||||
secret_flg1: string[]; // secret (Heroic Verse) //
|
||||
secret_flg2: string[];
|
||||
secret_flg3: string[];
|
||||
secret_flg4: string[];
|
||||
secret_flg5: string[]; // secret (Pinky Crush) //
|
||||
|
||||
leggendaria_flg1: string[]; // leggendaria (BISTROVER) //
|
||||
leggendaria_flg2: string[]; // leggendaria (Pinky Crush) //
|
||||
|
||||
dr_sprank: number[]; // djrank (Heroic Verse) //
|
||||
dr_sppoint: number[];
|
||||
|
|
@ -153,6 +158,10 @@ export interface pcdata {
|
|||
st_dp_mission: number;
|
||||
st_sp_level: number;
|
||||
st_dp_level: number;
|
||||
st_sp_level_h: number; // Pinky Crush //
|
||||
st_dp_level_h: number;
|
||||
st_sp_level_exh: number; // Pinky Crush //
|
||||
st_dp_level_exh: number;
|
||||
st_sp_mplay: number;
|
||||
st_dp_mplay: number;
|
||||
st_last_select: number;
|
||||
|
|
@ -1576,3 +1585,126 @@ export const IIDX31_pcdata = {
|
|||
event_last_select_id: -1,
|
||||
event_skip: false,
|
||||
}
|
||||
|
||||
export const IIDX32_pcdata = {
|
||||
version: 32,
|
||||
|
||||
spnum: 0,
|
||||
dpnum: 0,
|
||||
sach: 0,
|
||||
dach: 0,
|
||||
mode: 0,
|
||||
category: 0,
|
||||
pmode: 0,
|
||||
ngrade: 0,
|
||||
rtype: 0,
|
||||
bgnflg: 0,
|
||||
player_kind: 0,
|
||||
sp_opt: 0,
|
||||
dp_opt: 0,
|
||||
dp_opt2: 0,
|
||||
gpos: 0,
|
||||
s_sorttype: 0,
|
||||
d_sorttype: 0,
|
||||
s_pace: 0,
|
||||
d_pace: 0,
|
||||
s_gno: 0,
|
||||
d_gno: 0,
|
||||
s_sub_gno: 0,
|
||||
d_sub_gno: 0,
|
||||
s_gtype: 0,
|
||||
d_gtype: 0,
|
||||
s_sdlen: 0,
|
||||
d_sdlen: 0,
|
||||
s_sdtype: 0,
|
||||
d_sdtype: 0,
|
||||
s_timing: 0,
|
||||
d_timing: 0,
|
||||
s_notes: 0,
|
||||
d_notes: 0,
|
||||
s_judge: 0,
|
||||
d_judge: 0,
|
||||
s_judgeAdj: 0,
|
||||
d_judgeAdj: 0,
|
||||
s_hispeed: 0,
|
||||
d_hispeed: 0,
|
||||
s_liflen: 0,
|
||||
d_liflen: 0,
|
||||
s_disp_judge: 0,
|
||||
d_disp_judge: 0,
|
||||
s_opstyle: 0,
|
||||
d_opstyle: 0,
|
||||
s_graph_score: 0,
|
||||
d_graph_score: 0,
|
||||
s_auto_scrach: 0,
|
||||
d_auto_scrach: 0,
|
||||
s_gauge_disp: 0,
|
||||
d_gauge_disp: 0,
|
||||
s_lane_brignt: 0,
|
||||
d_lane_brignt: 0,
|
||||
s_camera_layout: 0,
|
||||
d_camera_layout: 0,
|
||||
s_ghost_score: 0,
|
||||
d_ghost_score: 0,
|
||||
s_tsujigiri_disp: 0,
|
||||
d_tsujigiri_disp: 0,
|
||||
s_auto_adjust: 0,
|
||||
d_auto_adjust: 0,
|
||||
s_timing_split: 0,
|
||||
d_timing_split: 0,
|
||||
s_visualization: 0,
|
||||
d_visualization: 0,
|
||||
s_classic_hispeed: 0,
|
||||
d_classic_hispeed: 0,
|
||||
movie_thumbnail: 0,
|
||||
|
||||
secret_flg1: Array<string>(3).fill("-1"),
|
||||
secret_flg2: Array<string>(3).fill("-1"),
|
||||
secret_flg3: Array<string>(3).fill("-1"),
|
||||
secret_flg4: Array<string>(3).fill("-1"),
|
||||
secret_flg5: Array<string>(3).fill("-1"),
|
||||
|
||||
leggendaria_flg1: Array<string>(3).fill("-1"),
|
||||
leggendaria_flg2: Array<string>(3).fill("-1"),
|
||||
|
||||
tourism_secret_flg1: Array<string>(3).fill("-1"),
|
||||
tourism_secret_flg2: Array<string>(3).fill("-1"),
|
||||
|
||||
nr_spradar: Array<number>(6).fill(0),
|
||||
nr_dpradar: Array<number>(6).fill(0),
|
||||
|
||||
st_enemy_damage: 0,
|
||||
st_progress: 0,
|
||||
st_total_point: 0,
|
||||
st_enemy_defeat_flg: 0,
|
||||
st_is_track_ticket: false,
|
||||
st_sp_level: 0,
|
||||
st_dp_level: 0,
|
||||
st_sp_level_h: 0,
|
||||
st_dp_level_h: 0,
|
||||
st_sp_level_exh: 0,
|
||||
st_dp_level_exh: 0,
|
||||
st_sp_fluctuation: 0,
|
||||
st_dp_fluctuation: 0,
|
||||
st_mission_clear_num: 0,
|
||||
st_sp_mplay: 0,
|
||||
st_dp_mplay: 0,
|
||||
st_tips_read_list: 0,
|
||||
|
||||
sgid: -1,
|
||||
dgid: -1,
|
||||
|
||||
achi_lastweekly: 0,
|
||||
achi_pack: 0,
|
||||
achi_packcomp: 0,
|
||||
achi_rivalcrush: 0,
|
||||
achi_visitflg: 0,
|
||||
achi_weeklynum: 0,
|
||||
|
||||
deller: 0,
|
||||
orb: 0,
|
||||
present_orb: 0,
|
||||
|
||||
event_play_num: 0,
|
||||
event_last_select_id: -1,
|
||||
}
|
||||
|
|
|
|||
155
iidx@asphyxia/pug/LDJ/32pcget.pug
Normal file
155
iidx@asphyxia/pug/LDJ/32pcget.pug
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
IIDX32pc(status="0")
|
||||
pcdata(id=profile.id idstr=profile.idstr name=profile.name pid=profile.pid spnum=pcdata.spnum dpnum=pcdata.dpnum sach=pcdata.sach dach=pcdata.dach mode=pcdata.mode category=pcdata.category pmode=pcdata.pmode ngrade=pcdata.ngrade rtype=pcdata.rtype bgnflg=pcdata.bgnflg player_kind=pcdata.player_kind sp_opt=pcdata.sp_opt dp_opt=pcdata.dp_opt dp_opt2=pcdata.dp_opt2 gpos=pcdata.gpos s_sorttype=pcdata.s_sorttype d_sorttype=pcdata.d_sorttype s_pace=pcdata.s_pace d_pace=pcdata.d_pace s_gno=pcdata.s_gno d_gno=pcdata.d_gno s_sub_gno=pcdata.s_sub_gno d_sub_gno=pcdata.d_sub_gno s_gtype=pcdata.s_gtype d_gtype=pcdata.d_gtype s_sdlen=pcdata.s_sdlen d_sdlen=pcdata.d_sdlen s_sdtype=pcdata.s_sdtype d_sdtype=pcdata.d_sdtype s_timing=pcdata.s_timing d_timing=pcdata.d_timing s_notes=pcdata.s_notes d_notes=pcdata.d_notes s_judge=pcdata.s_judge d_judge=pcdata.d_judge s_judgeAdj=pcdata.s_judgeAdj d_judgeAdj=pcdata.d_judgeAdj s_hispeed=pcdata.s_hispeed d_hispeed=pcdata.d_hispeed s_liflen=pcdata.s_liflen d_liflen=pcdata.d_liflen s_disp_judge=pcdata.s_disp_judge d_disp_judge=pcdata.d_disp_judge s_opstyle=pcdata.s_opstyle d_opstyle=pcdata.d_opstyle s_graph_score=pcdata.s_graph_score d_graph_score=pcdata.d_graph_score s_auto_scrach=pcdata.s_auto_scrach d_auto_scrach=pcdata.d_auto_scrach s_gauge_disp=pcdata.s_gauge_disp d_gauge_disp=pcdata.d_gauge_disp s_lane_brignt=pcdata.s_lane_brignt d_lane_brignt=pcdata.d_lane_brignt s_camera_layout=pcdata.s_camera_layout d_camera_layout=pcdata.d_camera_layout s_ghost_score=pcdata.s_ghost_score d_ghost_score=pcdata.d_ghost_score s_tsujigiri_disp=pcdata.s_tsujigiri_disp d_tsujigiri_disp=pcdata.d_tsujigiri_disp s_auto_adjust=pcdata.s_auto_adjust d_auto_adjust=pcdata.d_auto_adjust s_timing_split=pcdata.s_timing_split d_timing_split=pcdata.d_timing_split s_visualization=pcdata.s_visualization d_visualization=pcdata.d_visualization s_classic_hispeed=pcdata.s_classic_hispeed d_classic_hispeed=pcdata.d_classic_hispeed movie_thumbnail=pcdata.movie_thumbnail)
|
||||
lightning_play_data(dpnum=lm_playdata.dp_num spnum=lm_playdata.sp_num)
|
||||
lightning_setting(headphone_vol=lm_settings.headphone_vol resistance_dp_left=lm_settings.resistance_dp_left resistance_dp_right=lm_settings.resistance_dp_right resistance_sp_left=lm_settings.resistance_sp_left resistance_sp_right=lm_settings.resistance_sp_right keyboard_kind=lm_settings.keyboard_kind brightness=lm_settings.brightness)
|
||||
slider(__type="s32" __count="7") #{lm_settings.slider[0]} #{lm_settings.slider[1]} #{lm_settings.slider[2]} #{lm_settings.slider[3]} #{lm_settings.slider[4]} #{lm_settings.slider[5]} #{lm_settings.slider[6]}
|
||||
light(__type="bool" __count="10") #{lm_settings.light[0]} #{lm_settings.light[1]} #{lm_settings.light[2]} #{lm_settings.light[3]} #{lm_settings.light[4]} #{lm_settings.light[5]} #{lm_settings.light[6]} #{lm_settings.light[7]} #{lm_settings.light[8]} #{lm_settings.light[9]}
|
||||
concentration(__type="bool") #{lm_settings.concentration}
|
||||
spdp_rival(flg="-1")
|
||||
bind_eaappli
|
||||
ea_premium_course
|
||||
dellar_bonus(rate="100")
|
||||
secret
|
||||
flg1(__type="s64" __count="3") -1 -1 -1
|
||||
flg2(__type="s64" __count="3") -1 -1 -1
|
||||
flg3(__type="s64" __count="3") -1 -1 -1
|
||||
flg4(__type="s64" __count="3") -1 -1 -1
|
||||
flg5(__type="s64" __count="3") -1 -1 -1
|
||||
leggendaria
|
||||
flg1(__type="s64" __count="3") -1 -1 -1
|
||||
flg2(__type="s64" __count="3") -1 -1 -1
|
||||
music_memo
|
||||
- for (let m of mArray)
|
||||
folder(play_style=m.play_style folder_id=m.folder_idx name=m.folder_name)
|
||||
music_id(__type="s32" __count="10") #{m.music_ids[0]} #{m.music_ids[1]} #{m.music_ids[2]} #{m.music_ids[3]} #{m.music_ids[4]} #{m.music_ids[5]} #{m.music_ids[6]} #{m.music_ids[7]} #{m.music_ids[8]} #{m.music_ids[9]}
|
||||
music_filter
|
||||
- for (let f of fArray)
|
||||
folder(play_style=f.play_style folder_id=f.folder_id filter_id=f.filter_id value0=f.value0 value1=f.value1)
|
||||
is_valid(__type="bool") #{f.is_valid}
|
||||
- for (let fs of fsArray)
|
||||
sort(play_style=fs.play_style folder_id=fs.folder_id sort=fs.sort)
|
||||
qpro_secret
|
||||
head(__type="s64" __count="7") #{custom.qpro_secret_head[0]} #{custom.qpro_secret_head[1]} #{custom.qpro_secret_head[2]} #{custom.qpro_secret_head[3]} #{custom.qpro_secret_head[4]} #{custom.qpro_secret_head[5]} #{custom.qpro_secret_head[6]}
|
||||
hair(__type="s64" __count="7") #{custom.qpro_secret_hair[0]} #{custom.qpro_secret_hair[1]} #{custom.qpro_secret_hair[2]} #{custom.qpro_secret_hair[3]} #{custom.qpro_secret_hair[4]} #{custom.qpro_secret_hair[5]} #{custom.qpro_secret_hair[6]}
|
||||
face(__type="s64" __count="7") #{custom.qpro_secret_face[0]} #{custom.qpro_secret_face[1]} #{custom.qpro_secret_face[2]} #{custom.qpro_secret_face[3]} #{custom.qpro_secret_face[4]} #{custom.qpro_secret_face[5]} #{custom.qpro_secret_face[6]}
|
||||
body(__type="s64" __count="7") #{custom.qpro_secret_body[0]} #{custom.qpro_secret_body[1]} #{custom.qpro_secret_body[2]} #{custom.qpro_secret_body[3]} #{custom.qpro_secret_body[4]} #{custom.qpro_secret_body[5]} #{custom.qpro_secret_body[6]}
|
||||
hand(__type="s64" __count="7") #{custom.qpro_secret_hand[0]} #{custom.qpro_secret_hand[1]} #{custom.qpro_secret_hand[2]} #{custom.qpro_secret_hand[3]} #{custom.qpro_secret_hand[4]} #{custom.qpro_secret_hand[5]} #{custom.qpro_secret_hand[6]}
|
||||
back(__type="s64" __count="7") #{custom.qpro_secret_back[0]} #{custom.qpro_secret_back[1]} #{custom.qpro_secret_back[2]} #{custom.qpro_secret_back[3]} #{custom.qpro_secret_back[4]} #{custom.qpro_secret_back[5]} #{custom.qpro_secret_back[6]}
|
||||
grade(sgid=pcdata.sgid dgid=pcdata.dgid)
|
||||
- for (let d of dArray)
|
||||
g(__type="u8" __count="4") #{d[0]} #{d[1]} #{d[2]} #{d[3]}
|
||||
kiwami_data
|
||||
- for (let ed of eArray)
|
||||
detail(grade_type=ed.grade_type grade_id=ed.grade_id option=ed.option stage_num=ed.stage_num clear_type=ed.clear_type)
|
||||
past(__type="s32" __count="3") #{ed.past[0]} #{ed.past[1]} #{ed.past[2]}
|
||||
selected_course(__type="s32" __count="3") #{ed.selected_course[0]} #{ed.selected_course[1]} #{ed.selected_course[2]}
|
||||
max_past(__type="s32" __count="3") #{ed.max_past[0]} #{ed.max_past[1]} #{ed.max_past[2]}
|
||||
max_selected_course(__type="s32" __count="3") #{ed.max_selected_course[0]} #{ed.max_selected_course[1]} #{ed.max_selected_course[2]}
|
||||
skin(__type="s32" __count="20") #{appendsettings} #{custom.note_burst} #{custom.bomb_size} #{custom.turntable} #{custom.judge_font} #{custom.note_skin} #{custom.note_size} #{Number(custom.disable_musicpreview)} #{Number(custom.vefx_lock)} #{custom.effect} #{custom.menu_music} #{Number(custom.disable_hcn_color)} #{custom.first_note_preview} #{custom.lane_cover} #{custom.pacemaker_cover} #{custom.lift_cover} #{custom.note_beam} #{custom.note_beam_size} #{custom.full_combo_splash} #{custom.frame}
|
||||
tdjskin(__type="s32" __count="4") #{lm_custom.premium_skin} #{lm_custom.premium_bg} 0 0
|
||||
qprodata(__type="u32" __count="6") #{custom.qpro_head} #{custom.qpro_hair} #{custom.qpro_face} #{custom.qpro_hand} #{custom.qpro_body} #{custom.qpro_back}
|
||||
rlist
|
||||
- for (let rd of rArray)
|
||||
rival(spdp=rd.play_style id=rd.profile[2] id_str=rd.profile[3] djname=rd.profile[0] pid=rd.profile[1] sg=rd.pcdata[0] dg=rd.pcdata[1] sa=rd.pcdata[2] da=rd.pcdata[3])
|
||||
is_robo(__type="bool") 0
|
||||
qprodata(body=rd.qprodata[3] face=rd.qprodata[2] hair=rd.qprodata[0] hand=rd.qprodata[4] head=rd.qprodata[1] back=rd.qprodata[5])
|
||||
shop(name=shop_data.opname)
|
||||
rlist_sub
|
||||
notes_radar(style="0")
|
||||
radar_score(__type="s32" __count="6") #{pcdata.nr_spradar[0]} #{pcdata.nr_spradar[1]} #{pcdata.nr_spradar[2]} #{pcdata.nr_spradar[3]} #{pcdata.nr_spradar[4]} #{pcdata.nr_spradar[5]}
|
||||
notes_radar(style="1")
|
||||
radar_score(__type="s32" __count="6") #{pcdata.nr_dpradar[0]} #{pcdata.nr_dpradar[1]} #{pcdata.nr_dpradar[2]} #{pcdata.nr_dpradar[3]} #{pcdata.nr_dpradar[4]} #{pcdata.nr_dpradar[5]}
|
||||
visitor(anum="10" snum="10" pnum="10" vs_flg="1")
|
||||
step(enemy_damage=pcdata.st_enemy_damage progress=pcdata.st_progress total_point=pcdata.st_total_point enemy_defeat_flg=pcdata.st_enemy_defeat_flg sp_level=pcdata.st_sp_level dp_level=pcdata.st_dp_level sp_level_h=pcdata.st_sp_level_h dp_level_h=pcdata.st_dp_level_h sp_level_exh=pcdata.st_sp_level_exh dp_level_exh=pcdata.st_dp_level_exh sp_fluctuation=pcdata.st_sp_fluctuation dp_fluctuation=pcdata.st_dp_fluctuation mission_clear_num=pcdata.st_mission_clear_num sp_mplay=pcdata.st_sp_mplay dp_mplay=pcdata.st_dp_mplay tips_read_list=pcdata.st_tips_read_list)
|
||||
is_track_ticket(__type="bool") #{pcdata.st_is_track_ticket}
|
||||
packinfo(music_0="-1" music_1="-1" music_2="-1" pack_id="1")
|
||||
achievements(pack=pcdata.achi_pack pack_comp=pcdata.achi_packcomp last_weekly=pcdata.achi_lastweekly weekly_num=pcdata.achi_weeklynum visit_flg=pcdata.achi_visitflg rival_crush=pcdata.achi_rivalcrush)
|
||||
deller(deller=pcdata.deller)
|
||||
orb_data(rest_orb=pcdata.orb present_orb=pcdata.present_orb)
|
||||
old_linkage_secret_flg(triple_tribe="-1" triple_tribe_2="-1")
|
||||
arena_data(play_num="2" play_num_dp="1" play_num_sp="1" prev_best_class_sp="20" prev_best_class_dp="20")
|
||||
achieve_data(play_style="0" arena_class="20" rating_value="20" now_top_class_continuing="0" best_top_class_continuing="0" win_count="0" now_winning_streak_count="0" best_winning_streak_count="0" perfect_win_count="0" counterattack_num="0" mission_clear_num="0")
|
||||
achieve_data(play_style="1" arena_class="20" rating_value="20" now_top_class_continuing="0" best_top_class_continuing="0" win_count="0" now_winning_streak_count="0" best_winning_streak_count="0" perfect_win_count="0" counterattack_num="0" mission_clear_num="0")
|
||||
cube_data(cube="0" season_id="0")
|
||||
//-chat_data(chat_type_0="CHAT CUSTOM 1" chat_type_1="CHAT CUSTOM 2" chat_type_2="CHAT CUSTOM 3" chat_type_3="CHAT CUSTOM 4")
|
||||
is_chat_0(__type="bool") 1
|
||||
is_chat_1(__type="bool") 1
|
||||
is_chat_2(__type="bool") 1
|
||||
is_chat_3(__type="bool") 1
|
||||
default_chat
|
||||
skin_customize_flg(skin_frame_flg="-1" skin_turntable_flg="-1" skin_bomb_flg="-1" skin_bgm_flg="-1" skin_lane_flg0="-1" skin_lane_flg1="-1" skin_lane_flg2="-1" skin_lane_flg3="-1" skin_lane_flg4="-1" skin_lane_flg5="-1" skin_notes_flg="-1" skin_fullcombo_flg="-1" skin_keybeam_flg="-1" skin_judgestring_flg="-1")
|
||||
tdjskin_customize_flg(skin_submonitor_flg="-1" skin_subbg_flg="-1")
|
||||
event_1(event_play_num=pcdata.event_play_num last_select_booth_id=pcdata.event_last_select_id)
|
||||
if pcdata.event_skip == true
|
||||
is_skip
|
||||
- for (let evt of evtArray)
|
||||
booth_data(booth_id=evt.booth_id play_num=evt.play_num play_num_uc=evt.play_num_uc success_num=evt.success_num last_select_qpro_index=evt.last_select_qpro_index booth_prog=evt.booth_prog customer_n=evt.customer_n customer_h=evt.customer_h customer_a=evt.customer_a customer_l=evt.customer_l hire_num=evt.hire_num)
|
||||
flg_l(__type="bool") #{evt.flg_l}
|
||||
- for (let evt2 of evtArray2)
|
||||
booth_qpro_data(booth_id=evt2.booth_id index=evt2.index head_parts=evt2.head_parts hair_parts=evt2.hair_parts face_parts=evt2.face_parts body_parts=evt2.body_parts hand_parts=evt2.hand_parts param_n=evt2.param_n param_h=evt2.param_h param_a=evt2.param_a param_l=evt2.param_l exp=evt2.exp performance_date=evt2.performance_date)
|
||||
- for (let evtRival of evtArray3)
|
||||
rival(index=evtRival.index name=evtRival.name iidx_id=evtRival.iidx_id head=evtRival.head hair=evtRival.hair face=evtRival.face body=evtRival.body hand=evtRival.hand back=evtRival.back)
|
||||
if pinky_ug != null
|
||||
event_2(event_play_num=pinky_ug.event_play_num last_select_hall_id=pinky_ug.last_select_hall_id)
|
||||
- for (let evt4 of pinky_ug_hall)
|
||||
hall_data(hall_id=evt4.hall_id play_num=evt4.play_num last_select_skill_index=evt4.last_select_skill_index hall_prog=evt4.hall_prog defeat_num=evt4.defeat_num pp_0=evt4.pp_0 pp_1=evt4.pp_1 pp_2=evt4.pp_2 pp_3=evt4.pp_3 pp_4=evt4.pp_4 pp_5=evt4.pp_5 skill_1=evt4.skill_1 skill_2=evt4.skill_2 skill_3=evt4.skill_3 cool_1=evt4.cool_1 cool_2=evt4.cool_2 cool_3=evt4.cool_3 param_1=evt4.param_1 param_2=evt4.param_2 param_3=evt4.param_3)
|
||||
- for (let evt5 of pinky_ug_qpro)
|
||||
hall_qpro_data(hall_id=evt5.hall_id index=evt5.index head_parts=evt5.head_parts hair_parts=evt5.hair_parts face_parts=evt5.face_parts body_parts=evt5.body_parts hand_parts=evt5.hand_parts)
|
||||
- for (let evtRival of evtArray3)
|
||||
rival(index=evtRival.index name=evtRival.name iidx_id=evtRival.iidx_id head=evtRival.head hair=evtRival.hair face=evtRival.face body=evtRival.body hand=evtRival.hand back=evtRival.back)
|
||||
ultimate_mobile_link(music_list="-1")
|
||||
link_flag
|
||||
valkyrie_linkage(music_list_1="-1" music_list_2="-1" music_list_3="-1")
|
||||
ccj_linkage(music_list="-1")
|
||||
triple_tribe_3(music_list="-1")
|
||||
triple_tribe_4(music_list="-1")
|
||||
//-reflecbeat_event(music_list="-1")
|
||||
//-beatstream_event(music_list="-1")
|
||||
//-museca_event(music_list="-1")
|
||||
//-pawapuro(prog="" power="")
|
||||
language_setting(language=profile.language)
|
||||
movie_agreement(agreement_version="1")
|
||||
movie_setting
|
||||
hide_name(__type="bool") 0
|
||||
- for (let ebe of ebeArray)
|
||||
extra_boss_event(phase=ebe.phase extra=ebe.extra extra_b=ebe.extra_b onemore=ebe.onemore onemore_b=ebe.onemore_b)
|
||||
world_tourism
|
||||
- for (let wd of wArray)
|
||||
tour_data(tour_id=wd.tour_id progress=wd.progress)
|
||||
world_tourism_secret_flg
|
||||
flg1(__type="s64" __count="3") -1 -1 -1
|
||||
flg2(__type="s64" __count="3") -1 -1 -1
|
||||
world_tourism_setting
|
||||
booster(__type="bool") 1
|
||||
badge
|
||||
- for (let b of bArray)
|
||||
badge_data(category_id=b.id badge_flg_id=b.flg_id badge_flg=b.flg)
|
||||
activity
|
||||
today(day_id=activityDayId date=activityTimestamp)
|
||||
if activityTodaySP != null
|
||||
today_data(play_style=activityTodaySP.play_style music_num=activityTodaySP.music_num play_time=activityTodaySP.play_time keyboard_num=activityTodaySP.keyboard_num scratch_num=activityTodaySP.scratch_num)
|
||||
clear_update_num(__type="s32" __count="13") #{activityTodaySP.clear_update_num[0]} #{activityTodaySP.clear_update_num[1]} #{activityTodaySP.clear_update_num[2]} #{activityTodaySP.clear_update_num[3]} #{activityTodaySP.clear_update_num[4]} #{activityTodaySP.clear_update_num[5]} #{activityTodaySP.clear_update_num[6]} #{activityTodaySP.clear_update_num[7]} #{activityTodaySP.clear_update_num[8]} #{activityTodaySP.clear_update_num[9]} #{activityTodaySP.clear_update_num[10]} #{activityTodaySP.clear_update_num[11]} #{activityTodaySP.clear_update_num[12]}
|
||||
score_update_num(__type="s32" __count="13") #{activityTodaySP.score_update_num[0]} #{activityTodaySP.score_update_num[1]} #{activityTodaySP.score_update_num[2]} #{activityTodaySP.score_update_num[3]} #{activityTodaySP.score_update_num[4]} #{activityTodaySP.score_update_num[5]} #{activityTodaySP.score_update_num[6]} #{activityTodaySP.score_update_num[7]} #{activityTodaySP.score_update_num[8]} #{activityTodaySP.score_update_num[9]} #{activityTodaySP.score_update_num[10]} #{activityTodaySP.score_update_num[11]} #{activityTodaySP.score_update_num[12]}
|
||||
if activityTodayDP != null
|
||||
today_data(play_style=activityTodayDP.play_style music_num=activityTodayDP.music_num play_time=activityTodayDP.play_time keyboard_num=activityTodayDP.keyboard_num scratch_num=activityTodayDP.scratch_num)
|
||||
clear_update_num(__type="s32" __count="13") #{activityTodayDP.clear_update_num[0]} #{activityTodayDP.clear_update_num[1]} #{activityTodayDP.clear_update_num[2]} #{activityTodayDP.clear_update_num[3]} #{activityTodayDP.clear_update_num[4]} #{activityTodayDP.clear_update_num[5]} #{activityTodayDP.clear_update_num[6]} #{activityTodayDP.clear_update_num[7]} #{activityTodayDP.clear_update_num[8]} #{activityTodayDP.clear_update_num[9]} #{activityTodayDP.clear_update_num[10]} #{activityTodayDP.clear_update_num[11]} #{activityTodayDP.clear_update_num[12]}
|
||||
score_update_num(__type="s32" __count="13") #{activityTodayDP.score_update_num[0]} #{activityTodayDP.score_update_num[1]} #{activityTodayDP.score_update_num[2]} #{activityTodayDP.score_update_num[3]} #{activityTodayDP.score_update_num[4]} #{activityTodayDP.score_update_num[5]} #{activityTodayDP.score_update_num[6]} #{activityTodayDP.score_update_num[7]} #{activityTodayDP.score_update_num[8]} #{activityTodayDP.score_update_num[9]} #{activityTodayDP.score_update_num[10]} #{activityTodayDP.score_update_num[11]} #{activityTodayDP.score_update_num[12]}
|
||||
weekly
|
||||
week_data(play_style="0")
|
||||
- for (let a of activityWeekSP)
|
||||
week(week_index=a.week_index week_id=a.week_id date=a.date music_num=a.music_num play_time=a.play_time keyboard_num=a.keyboard_num scratch_num=a.scratch_num)
|
||||
clear_update_num(__type="s32" __count="13") #{a.clear_update_num[0]} #{a.clear_update_num[1]} #{a.clear_update_num[2]} #{a.clear_update_num[3]} #{a.clear_update_num[4]} #{a.clear_update_num[5]} #{a.clear_update_num[6]} #{a.clear_update_num[7]} #{a.clear_update_num[8]} #{a.clear_update_num[9]} #{a.clear_update_num[10]} #{a.clear_update_num[11]} #{a.clear_update_num[12]}
|
||||
score_update_num(__type="s32" __count="13") #{a.score_update_num[0]} #{a.score_update_num[1]} #{a.score_update_num[2]} #{a.score_update_num[3]} #{a.score_update_num[4]} #{a.score_update_num[5]} #{a.score_update_num[6]} #{a.score_update_num[7]} #{a.score_update_num[8]} #{a.score_update_num[9]} #{a.score_update_num[10]} #{a.score_update_num[11]} #{a.score_update_num[12]}
|
||||
week_data(play_style="1")
|
||||
- for (let b of activityWeekDP)
|
||||
week(week_index=b.week_index week_id=b.week_id date=b.date music_num=b.music_num play_time=b.play_time keyboard_num=b.keyboard_num scratch_num=b.scratch_num)
|
||||
clear_update_num(__type="s32" __count="13") #{b.clear_update_num[0]} #{b.clear_update_num[1]} #{b.clear_update_num[2]} #{b.clear_update_num[3]} #{b.clear_update_num[4]} #{b.clear_update_num[5]} #{b.clear_update_num[6]} #{b.clear_update_num[7]} #{b.clear_update_num[8]} #{b.clear_update_num[9]} #{b.clear_update_num[10]} #{b.clear_update_num[11]} #{b.clear_update_num[12]}
|
||||
score_update_num(__type="s32" __count="13") #{b.score_update_num[0]} #{b.score_update_num[1]} #{b.score_update_num[2]} #{b.score_update_num[3]} #{b.score_update_num[4]} #{b.score_update_num[5]} #{b.score_update_num[6]} #{b.score_update_num[7]} #{b.score_update_num[8]} #{b.score_update_num[9]} #{b.score_update_num[10]} #{b.score_update_num[11]} #{b.score_update_num[12]}
|
||||
mynews
|
||||
- for (let a of activityMynews)
|
||||
detail(play_style=a.play_style kind=a.kind news_no=a.news_no index=a.index day_id=a.day_id music_id=a.music_id note_id=a.note_id best_score=a.best_score now_score=a.now_score now_clear=a.now_clear news_time=a.news_time)
|
||||
best_result
|
||||
- for (let a of activityMybest)
|
||||
best_data(play_style=a.play_style kind=a.kind play_side=a.play_side music_id=a.music_id note_id=a.note_id target_graph=a.target_graph target_score=a.target_score pacemaker=a.pacemaker best_clear=a.best_clear best_score=a.best_score best_misscount=a.best_misscount now_clear=a.now_clear now_score=a.now_score now_misscount=a.now_misscount now_pgreat=a.now_pgreat now_great=a.now_great now_good=a.now_good now_bad=a.now_bad now_poor=a.now_poor now_combo=a.now_combo now_fast=a.now_fast now_slow=a.now_slow option=a.option option2=a.option_2 gauge_type=a.gauge_type result_type=a.result_type update_date=a.update_date)
|
||||
ghost_gauge_data(__type="bin") #{a.ghost_gauge_data}
|
||||
is_special_result(__type="bool") #{a.is_special_result}
|
||||
|
|
@ -98,7 +98,7 @@ export function GetVersion(info: EamuseInfo) {
|
|||
case "JDZ": return 18;
|
||||
case "KDZ": return 19;
|
||||
case "LDJ":
|
||||
version = parseInt(info.module.slice(4, 6));
|
||||
version = Number(info.module.slice(4, 6));
|
||||
if (_.isNaN(version)) version = 20;
|
||||
break;
|
||||
}
|
||||
|
|
@ -240,3 +240,7 @@ export async function ReftoQPRO(refid: string, version: number) {
|
|||
|
||||
return qpro_data;
|
||||
}
|
||||
|
||||
export function GetWeekId(date: Date) {
|
||||
return Math.ceil((((date.getTime() - Date.UTC(date.getFullYear(), 0, 1)) / 86400000) + new Date(date.getFullYear(), 0, 1).getDay()) / 7);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,7 +21,8 @@
|
|||
28,
|
||||
29,
|
||||
30,
|
||||
31
|
||||
31,
|
||||
32
|
||||
];
|
||||
|
||||
div
|
||||
|
|
|
|||
|
|
@ -23,7 +23,8 @@
|
|||
28,
|
||||
29,
|
||||
30,
|
||||
31
|
||||
31,
|
||||
32
|
||||
];
|
||||
|
||||
div
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user