mirror of
https://github.com/asphyxia-core/plugins.git
synced 2026-03-21 17:34:46 -05:00
441 lines
8.9 KiB
TypeScript
441 lines
8.9 KiB
TypeScript
import Profile from "../models/profile";
|
|
import {Course} from "../models/course";
|
|
import {emoList, shopList, FestoCourse, courseCategories, COURSE_STATUS} from "../static/data"
|
|
|
|
module.exports = async (data: Profile) => ({
|
|
info: {
|
|
tune_cnt: K.ITEM("s32", data?.tuneCount || 0),
|
|
save_cnt: K.ITEM("s32", data?.saveCount || 0),
|
|
saved_cnt: K.ITEM("s32", data?.savedCount || 0),
|
|
fc_cnt: K.ITEM("s32", data?.fcCount || 0),
|
|
ex_cnt: K.ITEM("s32", data?.exCount || 0),
|
|
clear_cnt: K.ITEM("s32", data?.clearCount || 0),
|
|
match_cnt: K.ITEM("s32", data?.matchCount || 0),
|
|
beat_cnt: K.ITEM("s32", 0),
|
|
mynews_cnt: K.ITEM("s32", 0),
|
|
mtg_entry_cnt: K.ITEM("s32", 0),
|
|
mtg_hold_cnt: K.ITEM("s32", 0),
|
|
mtg_result: K.ITEM("u8", 0),
|
|
bonus_tune_points: K.ITEM("s32", data?.bonusPoints || 0),
|
|
is_bonus_tune_played: K.ITEM("bool", data?.isBonusPlayed || false),
|
|
last_play_time: K.ITEM("s64", data?.lastPlayTime || 0),
|
|
},
|
|
|
|
last: {
|
|
play_time: K.ITEM("s64", data?.lastPlayTime || 0),
|
|
shopname: K.ITEM("str", data.lastShopname),
|
|
areaname: K.ITEM("str", data.lastAreaname),
|
|
music_id: K.ITEM("s32", data.musicId || 0),
|
|
seq_id: K.ITEM("s8", data.seqId || 0),
|
|
seq_edit_id: K.ITEM("str", data.seqEditId || ""),
|
|
sort: K.ITEM("s8", data?.sort || 0),
|
|
category: K.ITEM("s8", data?.category || 0),
|
|
expert_option: K.ITEM("s8", data?.expertOption || 0),
|
|
dig_select: K.ITEM("s32", 0),
|
|
|
|
settings: {
|
|
marker: K.ITEM("s8", data?.marker || 0),
|
|
theme: K.ITEM("s8", data?.theme || 0),
|
|
title: K.ITEM("s16", data?.title || 0),
|
|
parts: K.ITEM("s16", data?.parts || 0),
|
|
rank_sort: K.ITEM("s8", data?.rankSort || 0),
|
|
combo_disp: K.ITEM("s8", data?.comboDisp || 0),
|
|
emblem: K.ARRAY("s16", data?.emblem || [0, 0, 0, 0, 0]),
|
|
matching: K.ITEM("s8", data?.matching || 0),
|
|
hard: K.ITEM("s8", data?.hard || 0),
|
|
hazard: K.ITEM("s8", data?.hazard || 0),
|
|
},
|
|
},
|
|
|
|
item: {
|
|
music_list: K.ARRAY("s32", new Array(64).fill(-1)),
|
|
secret_list: K.ARRAY("s32", new Array(64).fill(-1)),
|
|
theme_list: K.ARRAY("s32", new Array(16).fill(-1)),
|
|
marker_list: K.ARRAY("s32", new Array(16).fill(-1)),
|
|
title_list: K.ARRAY("s32", new Array(160).fill(-1)),
|
|
parts_list: K.ARRAY("s32", data?.partsList || new Array(160).fill(0)),
|
|
emblem_list: K.ARRAY("s32", new Array(96).fill(-1)),
|
|
commu_list: K.ARRAY("s32", data?.commuList || new Array(16).fill(0)),
|
|
new: {
|
|
secret_list: K.ARRAY("s32", new Array(64).fill(0)),
|
|
theme_list: K.ARRAY("s32", new Array(16).fill(0)),
|
|
marker_list: K.ARRAY("s32", new Array(16).fill(0)),
|
|
},
|
|
},
|
|
|
|
rivallist: {
|
|
rival: [].map((rival) => ({
|
|
jid: K.ITEM("s32", rival.jubeatId),
|
|
name: K.ITEM("str", rival.name),
|
|
career: {
|
|
level: K.ITEM("s16", 0),
|
|
},
|
|
})),
|
|
},
|
|
|
|
lab_edit_seq: K.ATTR({ count: "0" }, { seq: [] }),
|
|
fc_challenge: {
|
|
today: {
|
|
music_id: K.ITEM("s32", -1),
|
|
state: K.ITEM("u8", 0),
|
|
},
|
|
whim: {
|
|
music_id: K.ITEM("s32", -1),
|
|
state: K.ITEM("u8", 0),
|
|
},
|
|
},
|
|
official_news: {
|
|
news_list: { news: [] },
|
|
},
|
|
news: {
|
|
checked: K.ITEM("s16", 0),
|
|
checked_flag: K.ITEM("u32", 0),
|
|
},
|
|
history: K.ATTR({ count: "0" }, { tune: [] }),
|
|
free_first_play: {
|
|
is_available: K.ITEM("bool", data?.isFirstplay || false),
|
|
},
|
|
event_info: { event: [] },
|
|
jbox: {
|
|
point: K.ITEM("s32", 0),
|
|
emblem: {
|
|
normal: { index: K.ITEM("s16", 2) },
|
|
premium: { index: K.ITEM("s16", 1) },
|
|
},
|
|
},
|
|
new_music: {},
|
|
navi: {
|
|
flag: K.ITEM("u64", BigInt(data?.navi || 0)),
|
|
},
|
|
gift_list: {},
|
|
question_list: {},
|
|
team_battle: {},
|
|
server: {},
|
|
course_list: {
|
|
course: await (async () =>{
|
|
let courseData = await DB.Find<Course>(data.__refid, { collection: "course" });
|
|
let courseStatus = {};
|
|
courseData.forEach(course =>{
|
|
courseStatus[course.courseId] |= (course.seen ? COURSE_STATUS.SEEN : 0);
|
|
courseStatus[course.courseId] |= (course.played ? COURSE_STATUS.PLAYED : 0);
|
|
courseStatus[course.courseId] |= (course.cleared ? COURSE_STATUS.CLEARED : 0);
|
|
});
|
|
return FestoCourse.map((course, i) =>
|
|
K.ATTR({ id: String(i + 1) }, { status: K.ITEM("s8", courseStatus[i+1] || 0) })
|
|
);
|
|
})()
|
|
|
|
},
|
|
category_list: {
|
|
category: courseCategories.map((categorie, i) =>
|
|
K.ATTR(
|
|
{ id: String(i + 1)},
|
|
{
|
|
is_display: K.ITEM("bool", true),
|
|
}
|
|
)
|
|
)
|
|
},
|
|
fill_in_category: {
|
|
no_gray_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
all_yellow_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
full_combo_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
excellent_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
normal: {
|
|
no_gray_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
all_yellow_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
full_combo_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
excellent_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
},
|
|
hard: {
|
|
no_gray_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
all_yellow_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
full_combo_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
excellent_flag_list: K.ARRAY("s32", [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
]),
|
|
},
|
|
},
|
|
emo_list: {
|
|
emo: emoList.map((emo, i) => {
|
|
return K.ATTR({ id: String(i + 1) }, { num: K.ITEM("s32", 0) });
|
|
}),
|
|
},
|
|
eamuse_gift_list: { gift: [] },
|
|
department: {
|
|
shop_list: { shop: [] },
|
|
},
|
|
|
|
clan_course_list: {},
|
|
|
|
team: K.ATTR(
|
|
{ id: "0" },
|
|
{
|
|
section: K.ITEM("s32", 0),
|
|
street: K.ITEM("s32", 0),
|
|
house_number_1: K.ITEM("s32", 0),
|
|
house_number_2: K.ITEM("s32", 0),
|
|
|
|
move: K.ATTR({
|
|
id: "1",
|
|
section: "1",
|
|
street: "1",
|
|
house_number_1: "1",
|
|
house_number_2: "1",
|
|
}),
|
|
}
|
|
),
|
|
|
|
daily_bonus_list: {},
|
|
ticket_list: {},
|
|
|
|
digdig: {
|
|
flag: K.ITEM("u64", BigInt(0)),
|
|
|
|
main: {
|
|
stage: K.ATTR(
|
|
{ number: "0" },
|
|
{
|
|
point: K.ITEM("s32", 0),
|
|
param: K.ITEM("s32", 0),
|
|
}
|
|
),
|
|
},
|
|
|
|
eternal: {
|
|
ratio: K.ITEM("s32", 0),
|
|
used_point: K.ITEM("s64", BigInt(0)),
|
|
point: K.ITEM("s64", BigInt(0)),
|
|
|
|
cube: {
|
|
state: K.ITEM("s8", 0),
|
|
|
|
item: [],
|
|
},
|
|
|
|
norma: {
|
|
till_time: K.ITEM("s64", BigInt(0)),
|
|
kind: K.ITEM("s32", 0),
|
|
value: K.ITEM("s32", 0),
|
|
param: K.ITEM("s32", 0),
|
|
},
|
|
|
|
old: {
|
|
need_point: K.ITEM("s32", 0),
|
|
point: K.ITEM("s32", 0),
|
|
excavated_point: K.ITEM("s32", 0),
|
|
excavated: K.ITEM("s32", 0),
|
|
param: K.ITEM("s32", 0),
|
|
|
|
music_list: {},
|
|
},
|
|
},
|
|
},
|
|
|
|
unlock: {},
|
|
|
|
generic_dig: {},
|
|
|
|
}); |