This commit is contained in:
dannylin0711 2023-09-14 13:45:23 +08:00
parent ff0c85c121
commit 3cf798987e
7 changed files with 8365 additions and 6317 deletions

View File

@ -42,6 +42,7 @@ export const EVENT6 = [
'BEGINNER_MUSIC_FOLDER',
'PLAYER_RADAR_ENABLE',
'SINGLE_BATTLE_ENABLE',
// 'USE_CUDA_VIDEO_PRESENTER'
];
export const COURSES6 = [

View File

@ -206,14 +206,15 @@ export const save: EPR = async (info, data, send) => {
if(!_.isNil(course)){
const sid = course.number('ssnid');
const cid = course.number('crsid');
// const skill_type = course.number('st');
const skill_type = course.number('st');
if (!(_.isNil(sid) || _.isNil(cid))){
await DB.Upsert<CourseRecord>(
refid,
{ collection: 'course', sid, cid, version },
{ collection: 'course', sid, cid, version, skill_type },
{
$max: {
score: course.number('sc', 0),
exscore: course.number('ex', 0),
clear: course.number('ct', 0),
grade: course.number('gr', 0),
rate: course.number('ar', 0),
@ -307,6 +308,13 @@ export const load: EPR = async (info, data, send) => {
const courses = await DB.Find<CourseRecord>(refid, { collection: 'course', version });
for(const c of courses){
c.skill_type = c.skill_type ?? 0;
c.exscore = c.exscore ?? 0;
}
const items = await DB.Find<Item>(refid, { collection: 'item' });
const params = await DB.Find<Param>(refid, { collection: 'param' });
let time = new Date();
@ -333,10 +341,10 @@ export const load: EPR = async (info, data, send) => {
const stampB_R = profile.stampB_R ? profile.stampB_R : 0;
const stampC_R = profile.stampC_R ? profile.stampC_R : 0;
const stampD_R = profile.stampD_R ? profile.stampD_R : 0;
const mainbg = profile.mainbg ? profile.mainbg : 0;
const customize = [];
customize.push(bgm, subbg, nemsys, stampA, stampB, stampC, stampD, stampA_R, stampB_R, stampC_R, stampD_R);
customize.push(bgm, subbg, nemsys, stampA, stampB, stampC, stampD, stampA_R, stampB_R, stampC_R, stampD_R, mainbg);
let tempCustom = params.findIndex((e) => (e.type == 2 && e.id == 2))
@ -426,6 +434,7 @@ export const create: EPR = async (info, data, send) => {
stampB_R: 0,
stampC_R: 0,
stampD_R: 0,
mainbg: 0,
appeal_frame: 0,
support_team: 0,

View File

@ -48,6 +48,7 @@ export interface Profile {
stampB_R: number;
stampC_R: number;
stampD_R: number;
mainbg: number;
boothFrame: number[];
}

View File

@ -32,6 +32,8 @@ game
skill_type(_type="s16") #{skill.type}
skill_base_id(__type="s16") #{skill.base}
skill_name_id(__type="s16") #{skill.name}
ea_shop
packet_booster(__type="s32") 1
@ -52,9 +54,9 @@ game
course
ssnid(__type="s16") #{course.sid}
crsid(__type="s16") #{course.cid}
st(__type="s16") 0
st(__type="s16") #{course.skill_type}
sc(__type="s32") #{course.score}
ex(__type="s32") 0
ex(__type="s32") #{course.exscore}
ct(__type="s16") #{course.clear}
gr(__type="s16") #{course.grade}
ar(__type="s16") #{course.rate}

View File

@ -18,11 +18,7 @@ function generateElements(html) {
}
function isSlideShow(num){
if((num >= 166 && num <= 185 )|| (num>=214 && num <=223) || (num>=256 &&num<=272)){ //256-272 214-223
return true;
}else{
return false;
}
return database["subbg"].filter(x => x.value == num)[0]["multi"] ?? false;
}
function isScroll(num){ //238-255 200-213
@ -33,6 +29,10 @@ function isScroll(num){ //238-255 200-213
}
}
function isVideo(num){
return database["subbg"].filter(x => x.value == num)[0]["video"] ?? false;
}
let nemsys_selector = document.querySelector('#nemsys_select');
nemsys_selector.addEventListener('change', ()=>{
@ -134,8 +134,21 @@ subbg_select.addEventListener('change', ()=>{
cnt = 1;
}
}, 1000);
}else if(isVideo(value)){
preview.setAttribute("style", "display: none;")
preview_fade.setAttribute("style", "display: none;")
let video = document.querySelector('#sub_video_pre');
video.setAttribute("style", "display: block;")
video.setAttribute("src", "static/asset/submonitor_bg/subbg_" + zeroPad(value, 4) + ".mp4");
video.setAttribute("autoplay", "");
video.setAttribute("loop", "");
}else{
clearInterval(interval);
let video = document.querySelector('#sub_video_pre');
video.setAttribute("style", "display: none;")
video.pause();
preview.setAttribute("style", "")
preview_fade.setAttribute("style", "")
}
});
@ -174,7 +187,7 @@ $('[name="bgm"]').change(function() {
gain = audioContext.createGain();
play.connect(gain);
gain.connect(audioContext.destination);
gain.gain.value = 0.5;
gain.gain.value = 0.2;
play.buffer = audioBuffer;
play.loop = true;
// play.loopStart = 1.2;
@ -338,6 +351,10 @@ $('[name="stampD_R"]').change(function() {
$('#dr_pre').fadeIn(200);
});
$('[name="mainbg"]').change(function() {
});
// $('#custom_0').on('ended', function() {
// $('#custom_0').currentTime = 0;
@ -448,6 +465,17 @@ document.addEventListener('DOMContentLoaded', function() {
stampB_R.dispatchEvent(new Event('change'));
stampC_R.dispatchEvent(new Event('change'));
stampD_R.dispatchEvent(new Event('change'));
let mainbg = document.querySelector('[name="mainbg"]');
let mainbg_option = ""
json["mainbg"].forEach(x => {
mainbg_option += `<option value="${x.value}">${x.name}</option>`;
});
mainbg.innerHTML = mainbg_option;
mainbg.value = profile_data["mainbg"];
mainbg.dispatchEvent(new Event('change'));
document.querySelector('html.has-aside-left.has-aside-mobile-transition.has-navbar-fixed-top.has-aside-expanded body div#app div#main-content.content div.simplebar-wrapper div.simplebar-mask div.simplebar-offset div.simplebar-content-wrapper div.simplebar-content')
.style["overflow-y"] = "auto";
// document.querySelector('.uiblocker').style.display = 'none';
@ -479,7 +507,7 @@ document.addEventListener('DOMContentLoaded', function() {
play_bgm = !play_bgm;
});
let play_bgm_outer_div = generateElements('<div class="buttons"></div>');
let play_bgm_outer_div = generateElements('<div class="buttons" style="border-top:2px solid #333333;padding-top: 10px; margin-right: 20px;"></div>');
play_bgm_outer_div.append(play_bgm_button);
document.querySelector('#bgm_pre').append(play_bgm_outer_div);
@ -496,7 +524,7 @@ document.addEventListener('DOMContentLoaded', function() {
play_sel = !play_sel;
});
let play_sel_outer_div = generateElements('<div class="buttons"></div>');
let play_sel_outer_div = generateElements('<div class="buttons" style="border-top:2px solid #333333;padding-top: 10px; margin-right: 20px;"></div>');
play_sel_outer_div.append(play_sel_button);
document.querySelector('#sel_pre').append(play_sel_outer_div);
})

File diff suppressed because it is too large Load Diff

View File

@ -185,6 +185,12 @@ div
.select.is-fullwidth
select(name="stampD_R")
//input.input(type="number" step=1 name="stampD", placeholder=profile.stampD)
.field
label.label Main BG
.control
.select.is-fullwidth
select(name="mainbg")
//input.input(type="number" step=1 name="stampD", placeholder=profile.stampD)
.field
button.button.is-primary(type="submit")
span.icon
@ -202,6 +208,7 @@ div
p Submonitor Preview
img(src='static/asset/submonitor_bg/subbg_0000.png' id="sub_pre")
img(src='static/asset/submonitor_bg/subbg_0000.png' id="sub_pre_fade")
video(id='sub_video_pre' style='display:none;')
.tile
.tile.is-parent.btm
.tile.is-child.with_relative
@ -244,11 +251,21 @@ div
p D_R
img(src='static/asset/nostamp.png' id="dr_pre")
img(src='static/asset/nostamp.png' id="dr_pre_fade")
.tile.is-parent.is-vertical(id='bgm_pre')
p BGM preview
audio(controls style="display:none;" src='static/asset/audio/custom_00/0.mp3' type='audio/mp3' id='custom_0')
.tile.is-parent.is-vertical(id='sel_pre')
p Song selection preview
audio(controls style="display:none;" src='static/asset/audio/custom_00/1.mp3' type='audio/mp3' id='custom_1')
.tile
.tile.is-parent.btm
.tile
.tile.is-child(id='bgm_pre')
span BGM preview
audio(controls style="display:none;" src='static/asset/audio/custom_00/0.mp3' type='audio/mp3' id='custom_0')
.tile.is-child(id='sel_pre')
span Song selection preview
audio(controls style="display:none;" src='static/asset/audio/custom_00/1.mp3' type='audio/mp3' id='custom_1')
.tile.is-parent.is-vertical
.tile.is-child(id='mainbg_pre')
p Main BG Preview
video(id='mainbg_video_pre')
div(hidden id='data-pass') !{JSON.stringify(profile)}
script(src="static/asset/js/preview.js")