From fcd9762fc0aa1062acc2d7c804975612b2b1193d Mon Sep 17 00:00:00 2001 From: tickle Date: Sun, 8 Dec 2019 16:33:16 +0900 Subject: [PATCH 01/14] =?UTF-8?q?[keycon-change:0.1.0]=205key=E3=81=AE?= =?UTF-8?q?=E3=81=8A=E3=81=AB=E3=81=8E=E3=82=8A=E4=B8=AD=E5=A4=AE=E3=81=AE?= =?UTF-8?q?=E3=82=AD=E3=83=BC=E3=82=B3=E3=83=B3=E5=A4=89=E6=9B=B4=E3=80=81?= =?UTF-8?q?7key=E3=81=AE=E3=82=AD=E3=83=BC=E3=82=B3=E3=83=B3=E4=BA=9C?= =?UTF-8?q?=E7=A8=AE=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/lib/danoni_constants.js | 52 +++++++++++++++----------------------- 1 file changed, 20 insertions(+), 32 deletions(-) diff --git a/js/lib/danoni_constants.js b/js/lib/danoni_constants.js index 08d6ac6b..708e67f1 100644 --- a/js/lib/danoni_constants.js +++ b/js/lib/danoni_constants.js @@ -579,6 +579,7 @@ const g_keyObj = { `cleft`, `dleft`, `cdown`, `ddown`, `cup`, `dup`, `cright`, `dright`], chara5_1: [`space`, `left`, `down`, `up`, `right`], + chara7_1: [`left`, `leftdia`, `down`, `space`, `up`, `rightdia`, `right`], chara9A_1: [`left`, `down`, `up`, `right`, `space`, `sleft`, `sdown`, `sup`, `sright`], chara9B_1: [`left`, `down`, `up`, `right`, `space`, `sleft`, `sdown`, `sup`, `sright`], chara9i_1: [`left`, `down`, `up`, `right`, `space`, `sleft`, `sdown`, `sup`, `sright`], @@ -626,6 +627,7 @@ const g_keyObj = { color17_0: [0, 1, 0, 1, 0, 1, 0, 1, 2, 3, 4, 3, 4, 3, 4, 3, 4], color5_1: [2, 0, 0, 0, 0], + color7_1: [0, 1, 0, 2, 0, 1, 0], color9A_1: [0, 0, 0, 0, 2, 3, 3, 3, 3], color9B_1: [0, 0, 0, 0, 2, 3, 3, 3, 3], color9i_1: [2, 2, 2, 2, 2, 0, 0, 0, 0], @@ -667,6 +669,7 @@ const g_keyObj = { shuffle17_0: [0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 2, 2, 2, 2, 2], shuffle5_1: [1, 0, 0, 0, 0], + shuffle7_1: [0, 0, 0, 1, 0, 0, 0], shuffle9A_1: [0, 0, 0, 0, 1, 2, 2, 2, 2], shuffle9B_1: [0, 0, 0, 0, 1, 2, 2, 2, 2], shuffle9i_1: [0, 0, 0, 0, 0, 1, 1, 1, 1], @@ -711,6 +714,7 @@ const g_keyObj = { // - 末尾の番号をカウントアップさせることで実現できる。keyCtrlと合わせること // - 配列の数は、通常パターンと同数で無くてはいけない(keyCtrlも同様) stepRtn5_1: [`onigiri`, 0, -90, 90, 180], + stepRtn7_1: [0, -45, -90, `onigiri`, 90, 135, 180], stepRtn9A_1: [0, -90, 90, 180, `onigiri`, 0, -90, 90, 180], stepRtn9B_1: [0, -90, 90, 180, `onigiri`, 0, -90, 90, 180], stepRtn9i_1: [`monar`, `giko`, `c`, `morara`, `onigiri`, 0, -90, 90, 180], @@ -751,6 +755,7 @@ const g_keyObj = { div17_0: 17, div5_1: 5, + div7_1: 7, div9A_1: 9, div9B_1: 9, div9i_1: 9, @@ -790,6 +795,7 @@ const g_keyObj = { pos17_0: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], pos5_1: [0, 1, 2, 3, 4], + pos7_1: [0, 1, 2, 3, 4, 5, 6], pos9A_1: [0, 1, 2, 3, 4, 5, 6, 7, 8], pos9B_1: [0, 1, 2, 3, 4, 5, 6, 7, 8], pos9i_1: [0, 1, 2, 3, 4, 5, 6, 7, 8], @@ -812,7 +818,7 @@ const g_keyObj = { // - 順番はchara, stepRtnと対応している。 // - 多次元配列内はステップに対応するキーコードを示す。カンマ区切りで複数指定できる。 keyCtrl5_0: [[37], [40], [38, 0], [39], [32, 0]], - keyCtrl7_0: [[83], [68, 0], [70], [32, 0], [74], [75, 0], [76]], + keyCtrl7_0: [[83], [68], [70], [32, 0], [74], [75], [76]], keyCtrl7i_0: [[90], [88], [67], [37], [40], [38, 0], [39]], keyCtrl8_0: [[83], [68, 0], [70], [32, 0], [74], [75, 0], [76], [13, 0]], keyCtrl9A_0: [[83], [68], [69, 82], [70], [32], [74], [75], [73, 0], [76]], @@ -832,7 +838,7 @@ const g_keyObj = { keyCtrl17_0: [[65], [90], [83], [88], [68], [67], [70], [86], [32], [78], [74], [77], [75], [188], [76], [190], [187]], keyCtrl5_0d: [[37], [40], [38, 0], [39], [32, 0]], - keyCtrl7_0d: [[83], [68, 0], [70], [32, 0], [74], [75, 0], [76]], + keyCtrl7_0d: [[83], [68], [70], [32, 0], [74], [75], [76]], keyCtrl7i_0d: [[90], [88], [67], [37], [40], [38, 0], [39]], keyCtrl8_0d: [[83], [68, 0], [70], [32, 0], [74], [75, 0], [76], [13, 0]], keyCtrl9A_0d: [[83], [68], [69, 82], [70], [32], [74], [75], [73, 0], [76]], @@ -856,6 +862,7 @@ const g_keyObj = { // - _0, _0dの数字部分をカウントアップすることで実現できる。 // - 配列数は合わせる必要はあるが、代替キーの数は _X, _Xdで揃っていれば合わせる必要はない。 keyCtrl5_1: [[32, 0], [37], [40], [38, 0], [39]], + keyCtrl7_1: [[83], [69], [70], [32, 71, 72], [74], [73], [76]], keyCtrl9A_1: [[83], [68], [69, 82], [70], [32], [37], [40], [38, 0], [39]], keyCtrl9B_1: [[83], [68], [69, 82], [70], [32], [74], [75], [73, 0], [76]], keyCtrl9i_1: [[65], [83], [68], [70], [32], [37], [40], [38, 0], [39]], @@ -868,6 +875,7 @@ const g_keyObj = { keyCtrl17_1: [[65], [83], [68], [70], [32], [74], [75], [76], [187], [90], [88], [67], [86], [78], [77], [188], [190]], keyCtrl5_1d: [[32, 0], [37], [40], [38, 0], [39]], + keyCtrl7_1d: [[83], [69], [70], [32, 71, 72], [74], [73], [76]], keyCtrl9A_1d: [[83], [68], [69, 82], [70], [32], [37], [40], [38, 0], [39]], keyCtrl9B_1d: [[83], [68], [69, 82], [70], [32], [74], [75], [73, 0], [76]], keyCtrl9i_1d: [[65], [83], [68], [70], [32], [37], [40], [38, 0], [39]], @@ -879,11 +887,11 @@ const g_keyObj = { keyCtrl15B_1d: [[87], [69], [51, 52], [82], [37], [40], [38, 0], [39], [83], [68], [70], [32], [74], [75], [76]], keyCtrl17_1d: [[65], [83], [68], [70], [32], [74], [75], [76], [187], [90], [88], [67], [86], [78], [77], [188], [190]], - keyCtrl5_2: [[37], [40], [32, 0], [38, 0], [39]], + keyCtrl5_2: [[68], [70], [32, 0], [74, 0], [75]], keyCtrl9A_2: [[65], [83], [68], [70], [32], [74], [75], [76], [187]], keyCtrl9B_2: [[83], [68], [69, 82], [70], [32], [37], [40], [38, 0], [39]], - keyCtrl5_2d: [[37], [40], [32, 0], [38, 0], [39]], + keyCtrl5_2d: [[68], [70], [32, 0], [74, 0], [75]], keyCtrl9A_2d: [[65], [83], [68], [70], [32], [74], [75], [76], [187]], keyCtrl9B_2d: [[83], [68], [69, 82], [70], [32], [37], [40], [38, 0], [39]], @@ -914,38 +922,10 @@ const g_keyObj = { keyTitleBack: 46, // 別キー - transKey5_0: '', - transKey7_0: '', - transKey7i_0: '', - transKey8_0: '', - transKey9A_0: '', - transKey9B_0: '', - transKey9i_0: '', - transKey11_0: '', - transKey11L_0: '', - transKey11W_0: '', - transKey12_0: '', - transKey13_0: '', - transKey14_0: '', - transKey14i_0: '', - transKey15A_0: '', - transKey15B_0: '', - transKey16i_0: '', - transKey17_0: '', - - transKey5_1: '', - transKey9A_1: '', transKey9B_1: '9A', - transKey9i_1: '', transKey11_1: '11L', transKey11L_1: '11', - transKey12_1: '', - transKey14_1: '', - transKey15A_1: '', - transKey15B_1: '', - transKey17_1: '', - transKey5_2: '', transKey9A_2: '9B', transKey9B_2: '9A', @@ -1010,6 +990,14 @@ const g_keyObj = { 'Twist': [1, 1, -1, -1, 1, 1, -1], 'Asymmetry': [1, -1, 1, -1, -1, 1, -1], }, + scrollDir7_1: { + '---': [1, 1, 1, 1, 1, 1, 1], + 'Cross': [1, 1, -1, -1, -1, 1, 1], + 'Split': [1, 1, 1, -1, -1, -1, -1], + 'Alternate': [1, -1, 1, -1, 1, -1, 1], + 'Twist': [1, 1, -1, -1, 1, 1, -1], + 'Asymmetry': [1, -1, 1, -1, -1, 1, -1], + }, scrollDir7i_0: { '---': [1, 1, 1, 1, 1, 1, 1], 'Cross': [1, 1, -1, -1, -1, 1, 1], From 6c5e1cb7afc3732e3f201c84085ba1ab87559b26 Mon Sep 17 00:00:00 2001 From: tickle Date: Sun, 8 Dec 2019 22:49:18 +0900 Subject: [PATCH 02/14] =?UTF-8?q?[display-extensions:0.1.0]=20Display?= =?UTF-8?q?=E3=81=AE=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E5=80=A4?= =?UTF-8?q?=E3=82=92=E6=B1=BA=E3=82=81=E3=82=89=E3=82=8C=E3=82=8B=E3=82=88?= =?UTF-8?q?=E3=81=86=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 63 ++++++++++++++++++++++++-------------- js/lib/danoni_constants.js | 4 +++ 2 files changed, 44 insertions(+), 23 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index a6e4498d..daae9a6a 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -2488,7 +2488,8 @@ function headerConvert(_dosObj) { obj.makerView = setVal(_dosObj.makerView, false, C_TYP_BOOLEAN); // オプション利用可否設定 - const usingOptions = [`motion`, `scroll`, `shuffle`, `autoPlay`, `gauge`, `appearance`]; + let usingOptions = [`motion`, `scroll`, `shuffle`, `autoPlay`, `gauge`, `appearance`]; + usingOptions = usingOptions.concat(g_displays); usingOptions.forEach(option => { obj[`${option}Use`] = setVal(_dosObj[`${option}Use`], @@ -2496,6 +2497,10 @@ function headerConvert(_dosObj) { setVal(g_presetSettingUse[option], true, C_TYP_BOOLEAN) : true), C_TYP_BOOLEAN); }); + g_displays.forEach(option => { + g_stateObj[`d_${option.toLowerCase()}`] = (obj[`${option}Use`] ? C_FLG_ON : C_FLG_OFF); + }); + // 別キーパターンの使用有無 obj.transKeyUse = setVal(_dosObj.transKeyUse, true, C_TYP_BOOLEAN); @@ -3966,15 +3971,9 @@ function createSettingsDisplayWindow(_sprite) { `[クリックでON/OFFを切替、灰色でOFF]`); document.querySelector(`#${_sprite}`).appendChild(sdDesc); - makeDisplayButton(`stepZone`, 0, 0); - makeDisplayButton(`judgement`, 1, 0); - makeDisplayButton(`lifeGauge`, 2, 0); - makeDisplayButton(`musicInfo`, 3, 0); - makeDisplayButton(`speed`, 0, 1); - makeDisplayButton(`color`, 1, 1); - makeDisplayButton(`lyrics`, 2, 1); - makeDisplayButton(`background`, 3, 1); - makeDisplayButton(`arrowEffect`, 4, 1); + g_displays.forEach((name, j) => { + makeDisplayButton(name, j % 5, Math.floor(j / 5)); + }); // --------------------------------------------------- // 矢印の見え方 (Appearance) @@ -3990,19 +3989,37 @@ function createSettingsDisplayWindow(_sprite) { function makeDisplayButton(_name, _heightPos, _widthPos) { const flg = g_stateObj[`d_${_name.toLowerCase()}`]; - const lnk = makeSettingLblCssButton(`lnk${_name}`, `${toCapitalize(_name)}`, _heightPos, _ => { - g_stateObj[`d_${_name.toLowerCase()}`] = (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF ? C_FLG_ON : C_FLG_OFF); - if (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF) { - lnk.classList.replace(g_cssObj.button_ON, g_cssObj.button_OFF); - } else { - lnk.classList.replace(g_cssObj.button_OFF, g_cssObj.button_ON); - } - }); - lnk.style.width = `170px`; - lnk.style.left = `calc(30px + 180px * ${_widthPos})`; - lnk.style.borderStyle = `solid`; - lnk.classList.add(`button_${flg}`); - displaySprite.appendChild(lnk); + + if (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_ON) { + const lnk = makeSettingLblCssButton(`lnk${_name}`, `${toCapitalize(_name)}`, _heightPos, _ => { + g_stateObj[`d_${_name.toLowerCase()}`] = (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF ? C_FLG_ON : C_FLG_OFF); + if (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF) { + lnk.classList.replace(g_cssObj.button_ON, g_cssObj.button_OFF); + } else { + lnk.classList.replace(g_cssObj.button_OFF, g_cssObj.button_ON); + } + }); + lnk.style.width = `170px`; + lnk.style.left = `calc(30px + 180px * ${_widthPos})`; + lnk.style.borderStyle = `solid`; + lnk.classList.add(`button_${flg}`); + displaySprite.appendChild(lnk); + } else { + displaySprite.appendChild(makeDisabledDisplayLabel(`lnk${_name}`, _heightPos, _widthPos, toCapitalize(_name))); + } + } + + /** + * 無効化用ラベル作成 + * @param {string} _id + * @param {number} _heightPos + * @param {string} _defaultStr + */ + function makeDisabledDisplayLabel(_id, _heightPos, _widthPos, _defaultStr) { + const lbl = createDivCssLabel(_id, 30 + 180 * _widthPos, C_LEN_SETLBL_HEIGHT * _heightPos, + 170, C_LEN_SETLBL_HEIGHT, C_SIZ_SETLBL, _defaultStr, g_cssObj.settings_Disabled); + lbl.style.textAlign = C_ALIGN_CENTER; + return lbl; } } diff --git a/js/lib/danoni_constants.js b/js/lib/danoni_constants.js index 08d6ac6b..b0881191 100644 --- a/js/lib/danoni_constants.js +++ b/js/lib/danoni_constants.js @@ -278,6 +278,7 @@ const g_stateObj = { d_judgement: C_FLG_ON, d_lifegauge: C_FLG_ON, d_musicinfo: C_FLG_ON, + d_customeffect: C_FLG_ON, d_color: C_FLG_ON, d_speed: C_FLG_ON, d_arroweffect: C_FLG_ON, @@ -325,6 +326,9 @@ let g_volumeNum = g_volumes.length - 1; let g_appearances = [`Visible`, `Hidden`, `Sudden`, `Slit`]; let g_appearanceNum = 0; +let g_displays = [`stepZone`, `judgement`, `lifeGauge`, `musicInfo`, `customEffect`, + `speed`, `color`, `lyrics`, `background`, `arrowEffect`]; + // サイズ(後で指定) let g_sWidth; let g_sHeight; From 6e54691e4893ff2b76b88bc60a0c178e2a8196e6 Mon Sep 17 00:00:00 2001 From: tickle Date: Mon, 9 Dec 2019 21:30:26 +0900 Subject: [PATCH 03/14] =?UTF-8?q?[display-extensions:0.2.0]=20Display?= =?UTF-8?q?=E3=82=AA=E3=83=97=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=AEON/OFF?= =?UTF-8?q?=E3=81=AE=E4=B8=8D=E5=85=B7=E5=90=88=E4=BF=AE=E6=AD=A3=E3=80=80?= =?UTF-8?q?=E4=BB=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit customEffect -> Specialに名称変更 --- js/danoni_main.js | 2 +- js/lib/danoni_constants.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index daae9a6a..1862a12c 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -3990,7 +3990,7 @@ function createSettingsDisplayWindow(_sprite) { const flg = g_stateObj[`d_${_name.toLowerCase()}`]; - if (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_ON) { + if (g_headerObj[`${_name}Use`]) { const lnk = makeSettingLblCssButton(`lnk${_name}`, `${toCapitalize(_name)}`, _heightPos, _ => { g_stateObj[`d_${_name.toLowerCase()}`] = (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF ? C_FLG_ON : C_FLG_OFF); if (g_stateObj[`d_${_name.toLowerCase()}`] === C_FLG_OFF) { diff --git a/js/lib/danoni_constants.js b/js/lib/danoni_constants.js index b0881191..b8f6852a 100644 --- a/js/lib/danoni_constants.js +++ b/js/lib/danoni_constants.js @@ -278,7 +278,7 @@ const g_stateObj = { d_judgement: C_FLG_ON, d_lifegauge: C_FLG_ON, d_musicinfo: C_FLG_ON, - d_customeffect: C_FLG_ON, + d_special: C_FLG_ON, d_color: C_FLG_ON, d_speed: C_FLG_ON, d_arroweffect: C_FLG_ON, @@ -326,7 +326,7 @@ let g_volumeNum = g_volumes.length - 1; let g_appearances = [`Visible`, `Hidden`, `Sudden`, `Slit`]; let g_appearanceNum = 0; -let g_displays = [`stepZone`, `judgement`, `lifeGauge`, `musicInfo`, `customEffect`, +let g_displays = [`stepZone`, `judgement`, `lifeGauge`, `musicInfo`, `special`, `speed`, `color`, `lyrics`, `background`, `arrowEffect`]; // サイズ(後で指定) From a37850c90b1ea68df6f56dba46425a33bfc68702 Mon Sep 17 00:00:00 2001 From: tickle Date: Mon, 9 Dec 2019 21:51:54 +0900 Subject: [PATCH 04/14] =?UTF-8?q?[display-extensions:0.3.0]=20=E3=83=AA?= =?UTF-8?q?=E3=83=90=E3=83=BC=E3=82=B9=E8=B7=9D=E9=9B=A2=E3=81=AE=E5=AE=9A?= =?UTF-8?q?=E7=BE=A9=E3=82=92=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 15 ++++++++------- js/lib/danoni_constants.js | 1 + 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 1862a12c..21c72562 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -2410,6 +2410,7 @@ function headerConvert(_dosObj) { g_stepY = (isNaN(parseFloat(_dosObj.stepY)) ? C_STEP_Y : parseFloat(_dosObj.stepY)); g_stepYR = (isNaN(parseFloat(_dosObj.stepYR)) ? C_STEP_YR : parseFloat(_dosObj.stepYR)); g_distY = g_sHeight - g_stepY + g_stepYR; + g_reverseStepY = g_distY - g_stepY - C_ARW_WIDTH; // musicフォルダ設定 obj.musicFolder = setVal(_dosObj.musicFolder, `music`, C_TYP_STRING); @@ -6233,7 +6234,7 @@ function MainInit() { const stepRoot = createSprite(`mainSprite`, `stepRoot${j}`, g_workObj.stepX[j], - g_stepY + (g_distY - g_stepY - 50) * g_workObj.dividePos[j], + g_stepY + g_reverseStepY * g_workObj.dividePos[j], C_ARW_WIDTH, C_ARW_WIDTH); // 矢印の内側を塗りつぶすか否か @@ -6287,13 +6288,13 @@ function MainInit() { // ステップゾーンの代わり const stepBar0 = createColorObject(`stepBar`, ``, - 0, g_stepY + (g_distY - g_stepY - 50) * (g_stateObj.reverse === C_FLG_OFF ? 0 : 1), + 0, g_stepY + g_reverseStepY * (g_stateObj.reverse === C_FLG_OFF ? 0 : 1), g_sWidth - 50, 1, ``, `lifeBar`); stepBar0.classList.add(g_cssObj.life_Failed); mainSprite.appendChild(stepBar0); const stepBar1 = createColorObject(`stepBar`, ``, - 0, g_stepY + (g_distY - g_stepY - 50) * (g_stateObj.reverse === C_FLG_OFF ? 0 : 1) + C_ARW_WIDTH, + 0, g_stepY + g_reverseStepY * (g_stateObj.reverse === C_FLG_OFF ? 0 : 1) + C_ARW_WIDTH, g_sWidth - 50, 1, ``, `lifeBar`); stepBar1.classList.add(g_cssObj.life_Failed); mainSprite.appendChild(stepBar1); @@ -6315,7 +6316,7 @@ function MainInit() { // フリーズアローヒット部分 for (let j = 0; j < keyNum; j++) { const frzHit = createSprite(`mainSprite`, `frzHit${j}`, - g_workObj.stepX[j], g_stepY + (g_distY - g_stepY - 50) * g_workObj.dividePos[j], + g_workObj.stepX[j], g_stepY + g_reverseStepY * g_workObj.dividePos[j], C_ARW_WIDTH, C_ARW_WIDTH); frzHit.style.opacity = 0; if (isNaN(Number(g_workObj.arrowRtn[j]))) { @@ -6974,7 +6975,7 @@ function MainInit() { const stepRoot = createSprite(`arrowSprite${dividePos}`, `${_name}${_j}_${_arrowCnt}`, g_workObj.stepX[_j], - g_stepY + (g_distY - g_stepY - 50) * dividePos + g_workObj.initY[g_scoreObj.frameNum] * boostSpdDir, + g_stepY + g_reverseStepY * dividePos + g_workObj.initY[g_scoreObj.frameNum] * boostSpdDir, C_ARW_WIDTH, C_ARW_WIDTH); stepRoot.setAttribute(`cnt`, g_workObj.arrivalFrame[g_scoreObj.frameNum] + 1); stepRoot.setAttribute(`boostCnt`, g_workObj.motionFrame[g_scoreObj.frameNum]); @@ -7049,8 +7050,8 @@ function MainInit() { const frzRoot = createSprite(`arrowSprite${dividePos}`, `${_name}${_j}_${_arrowCnt}`, g_workObj.stepX[_j], - g_stepY + (g_distY - g_stepY - 50) * dividePos + g_workObj.initY[g_scoreObj.frameNum] * boostSpdDir, - 50, 100 + frzLength); + g_stepY + g_reverseStepY * dividePos + g_workObj.initY[g_scoreObj.frameNum] * boostSpdDir, + C_ARW_WIDTH, C_ARW_WIDTH + frzLength); frzRoot.setAttribute(`cnt`, g_workObj.arrivalFrame[g_scoreObj.frameNum] + 1); frzRoot.setAttribute(`boostCnt`, g_workObj.motionFrame[g_scoreObj.frameNum]); frzRoot.setAttribute(`judgEndFlg`, `false`); diff --git a/js/lib/danoni_constants.js b/js/lib/danoni_constants.js index b8f6852a..575e84f6 100644 --- a/js/lib/danoni_constants.js +++ b/js/lib/danoni_constants.js @@ -338,6 +338,7 @@ const C_STEP_Y = 70; const C_STEP_YR = 0; let g_stepY; let g_distY; +let g_reverseStepY; let g_stepYR; // キーコンフィグカーソル From bf905027cbbd6f3f4150d3b56f658f9997b30651 Mon Sep 17 00:00:00 2001 From: tickle Date: Mon, 9 Dec 2019 22:04:31 +0900 Subject: [PATCH 05/14] =?UTF-8?q?[display-extensions:0.4.0]=20=E5=88=A4?= =?UTF-8?q?=E5=AE=9A=E4=BD=8D=E7=BD=AE=E3=82=92=E5=A4=89=E6=9B=B4=E3=81=99?= =?UTF-8?q?=E3=82=8B=E3=82=AA=E3=83=97=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0=20#415?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 12 ++++++++---- js/lib/danoni_constants.js | 5 +++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 21c72562..61646e31 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -2412,6 +2412,10 @@ function headerConvert(_dosObj) { g_distY = g_sHeight - g_stepY + g_stepYR; g_reverseStepY = g_distY - g_stepY - C_ARW_WIDTH; + // 矢印・フリーズアロー判定位置補正 + g_diffObj.arrowJdgY = (isNaN(parseFloat(_dosObj.arrowJdgY)) ? 0 : parseFloat(_dosObj.arrowJdgY)); + g_diffObj.frzJdgY = (isNaN(parseFloat(_dosObj.frzJdgY)) ? 0 : parseFloat(_dosObj.frzJdgY)); + // musicフォルダ設定 obj.musicFolder = setVal(_dosObj.musicFolder, `music`, C_TYP_STRING); @@ -6521,28 +6525,28 @@ function MainInit() { infoSprite.appendChild(lblTime2); // 判定キャラクタ表示:矢印 - const charaJ = createDivCssLabel(`charaJ`, g_sWidth / 2 - 200, g_sHeight / 2 - 50, + const charaJ = createDivCssLabel(`charaJ`, g_sWidth / 2 - 200, g_sHeight / 2 - 50 + g_diffObj.arrowJdgY, C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_ii); charaJ.style.textAlign = C_ALIGN_CENTER; charaJ.setAttribute(`cnt`, 0); judgeSprite.appendChild(charaJ); // コンボ表示:矢印 - const comboJ = createDivCssLabel(`comboJ`, g_sWidth / 2 - 50, g_sHeight / 2 - 50, + const comboJ = createDivCssLabel(`comboJ`, g_sWidth / 2 - 50, g_sHeight / 2 - 50 + g_diffObj.arrowJdgY, C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_kita); comboJ.style.textAlign = C_ALIGN_CENTER; comboJ.setAttribute(`cnt`, 0); judgeSprite.appendChild(comboJ); // 判定キャラクタ表示:フリーズアロー - const charaFJ = createDivCssLabel(`charaFJ`, g_sWidth / 2 - 100, g_sHeight / 2, + const charaFJ = createDivCssLabel(`charaFJ`, g_sWidth / 2 - 100, g_sHeight / 2 + g_diffObj.frzJdgY, C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_kita); charaFJ.style.textAlign = C_ALIGN_CENTER; charaFJ.setAttribute(`cnt`, 0); judgeSprite.appendChild(charaFJ); // コンボ表示:フリーズアロー - const comboFJ = createDivCssLabel(`comboFJ`, g_sWidth / 2 + 50, g_sHeight / 2, + const comboFJ = createDivCssLabel(`comboFJ`, g_sWidth / 2 + 50, g_sHeight / 2 + g_diffObj.frzJdgY, C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_ii); comboFJ.style.textAlign = C_ALIGN_CENTER; comboFJ.setAttribute(`cnt`, 0); diff --git a/js/lib/danoni_constants.js b/js/lib/danoni_constants.js index 575e84f6..e05c7fe3 100644 --- a/js/lib/danoni_constants.js +++ b/js/lib/danoni_constants.js @@ -341,6 +341,11 @@ let g_distY; let g_reverseStepY; let g_stepYR; +const g_diffObj = { + arrowJdgY: 0, + frzJdgY: 0, +}; + // キーコンフィグカーソル let g_currentj = 0; let g_currentk = 0; From 8299c29276499150f31736a969e3a90c50542ace Mon Sep 17 00:00:00 2001 From: tickle Date: Mon, 9 Dec 2019 22:59:18 +0900 Subject: [PATCH 06/14] =?UTF-8?q?[display-extension:0.5.0]=20Fast/Slow?= =?UTF-8?q?=E3=81=AE=E5=88=9D=E6=9C=9F=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 64 +++++++++++++++++++++++++++-------------------- 1 file changed, 37 insertions(+), 27 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 61646e31..9c482cbe 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -6524,33 +6524,32 @@ function MainInit() { lblTime1.style.textAlign = C_ALIGN_RIGHT; infoSprite.appendChild(lblTime2); - // 判定キャラクタ表示:矢印 - const charaJ = createDivCssLabel(`charaJ`, g_sWidth / 2 - 200, g_sHeight / 2 - 50 + g_diffObj.arrowJdgY, - C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_ii); - charaJ.style.textAlign = C_ALIGN_CENTER; - charaJ.setAttribute(`cnt`, 0); - judgeSprite.appendChild(charaJ); - - // コンボ表示:矢印 - const comboJ = createDivCssLabel(`comboJ`, g_sWidth / 2 - 50, g_sHeight / 2 - 50 + g_diffObj.arrowJdgY, - C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_kita); - comboJ.style.textAlign = C_ALIGN_CENTER; - comboJ.setAttribute(`cnt`, 0); - judgeSprite.appendChild(comboJ); - - // 判定キャラクタ表示:フリーズアロー - const charaFJ = createDivCssLabel(`charaFJ`, g_sWidth / 2 - 100, g_sHeight / 2 + g_diffObj.frzJdgY, - C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_kita); - charaFJ.style.textAlign = C_ALIGN_CENTER; - charaFJ.setAttribute(`cnt`, 0); - judgeSprite.appendChild(charaFJ); - - // コンボ表示:フリーズアロー - const comboFJ = createDivCssLabel(`comboFJ`, g_sWidth / 2 + 50, g_sHeight / 2 + g_diffObj.frzJdgY, - C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_ii); - comboFJ.style.textAlign = C_ALIGN_CENTER; - comboFJ.setAttribute(`cnt`, 0); - judgeSprite.appendChild(comboFJ); + const jdgGroups = [`J`, `FJ`]; + const jdgX = [g_sWidth / 2 - 200, g_sWidth / 2 - 100]; + const jdgY = [g_sHeight / 2 - 60 + g_diffObj.arrowJdgY, g_sHeight / 2 + 10 + g_diffObj.frzJdgY]; + const jdgCombos = [`kita`, `ii`]; + + jdgGroups.forEach((jdg, j) => { + + // キャラクタ表示 + const charaJ = createDivCssLabel(`chara${jdg}`, jdgX[j], jdgY[j], + C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj.common_ii); + charaJ.style.textAlign = C_ALIGN_CENTER; + charaJ.setAttribute(`cnt`, 0); + judgeSprite.appendChild(charaJ); + + // コンボ表示 + const comboJ = createDivCssLabel(`combo${jdg}`, jdgX[j] + 150, jdgY[j], + C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, C_SIZ_JDGCHARA, ``, g_cssObj[`common_${jdgCombos[j]}`]); + comboJ.style.textAlign = C_ALIGN_CENTER; + judgeSprite.appendChild(comboJ); + + // Fast/Slow表示 + const diffJ = createDivCssLabel(`diff${jdg}`, jdgX[j], jdgY[j] + 25, + C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, 14, ``, g_cssObj.common_combo); + diffJ.style.textAlign = C_ALIGN_CENTER; + judgeSprite.appendChild(diffJ); + }); // パーフェクト演出 const finishView = createDivCssLabel(`finishView`, g_sWidth / 2 - 150, g_sHeight / 2 - 50, @@ -6573,8 +6572,10 @@ function MainInit() { document.querySelector(`#comboJ`).style.display = C_DIS_NONE; document.querySelector(`#charaJ`).style.display = C_DIS_NONE; + document.querySelector(`#diffJ`).style.display = C_DIS_NONE; document.querySelector(`#comboFJ`).style.display = C_DIS_NONE; document.querySelector(`#charaFJ`).style.display = C_DIS_NONE; + document.querySelector(`#diffFJ`).style.display = C_DIS_NONE; } // 曲情報OFF @@ -7460,6 +7461,7 @@ function MainInit() { if (charaJCnt === 0) { document.querySelector(`#charaJ`).innerHTML = ``; document.querySelector(`#comboJ`).innerHTML = ``; + document.querySelector(`#diffJ`).innerHTML = ``; } } let charaFJCnt = document.querySelector(`#charaFJ`).getAttribute(`cnt`); @@ -7468,6 +7470,7 @@ function MainInit() { if (charaFJCnt === 0) { document.querySelector(`#charaFJ`).innerHTML = ``; document.querySelector(`#comboFJ`).innerHTML = ``; + document.querySelector(`#diffFJ`).innerHTML = ``; } } @@ -7741,6 +7744,8 @@ function judgeArrow(_j) { stepDivHit.classList.add(g_cssObj.main_stepShobon); } stepDivHit.setAttribute(`cnt`, C_FRM_HITMOTION); + document.querySelector(`#diffJ`).innerHTML = ` + ${difFrame === 0 ? 'Just!!' : ((difFrame > 0 ? `Slow ${difCnt} Frame` : `Fast ${difCnt} Frame`))}`; arrowSprite.removeChild(judgArrow); g_workObj.judgArrowCnt[_j]++; @@ -7758,6 +7763,7 @@ function judgeArrow(_j) { if (difCnt <= g_judgObj.frzJ[C_JDG_SFSF] && judgEndFlg === `false`) { if (g_headerObj.frzStartjdgUse) { + const difFrame = Number(judgFrz.getAttribute(`cnt`)); if (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo) { if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { judgeIi(difCnt); @@ -7770,6 +7776,9 @@ function judgeArrow(_j) { } g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; } + document.querySelector(`#diffJ`).innerHTML = ` + ${difFrame === 0 ? 'Just!!' : ((difFrame > 0 ? `Slow ${difCnt} Frame` : `Fast ${difCnt} Frame`))} + `; } changeHitFrz(_j, fcurrentNo, `frz`); g_judgObj.lockFlgs[_j] = false; @@ -7941,6 +7950,7 @@ function judgeUwan(difFrame) { changeJudgeCharacter(`uwan`, C_JCR_UWAN); g_resultObj.combo = 0; document.querySelector(`#comboJ`).innerHTML = ``; + document.querySelector(`#diffJ`).innerHTML = ``; lifeDamage(); From 00c52493313cc6c1e19902ad57f5967086c56e95 Mon Sep 17 00:00:00 2001 From: tickle Date: Mon, 9 Dec 2019 23:08:22 +0900 Subject: [PATCH 07/14] =?UTF-8?q?[display-extensions:0.5.1]=20=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 44 ++++++++++++++++++++++---------------------- 1 file changed, 22 insertions(+), 22 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 9c482cbe..6aea0a93 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -7455,24 +7455,17 @@ function MainInit() { } // 判定キャラクタ消去 - let charaJCnt = document.querySelector(`#charaJ`).getAttribute(`cnt`); - if (charaJCnt > 0) { - document.querySelector(`#charaJ`).setAttribute(`cnt`, --charaJCnt); - if (charaJCnt === 0) { - document.querySelector(`#charaJ`).innerHTML = ``; - document.querySelector(`#comboJ`).innerHTML = ``; - document.querySelector(`#diffJ`).innerHTML = ``; - } - } - let charaFJCnt = document.querySelector(`#charaFJ`).getAttribute(`cnt`); - if (charaFJCnt > 0) { - document.querySelector(`#charaFJ`).setAttribute(`cnt`, --charaFJCnt); - if (charaFJCnt === 0) { - document.querySelector(`#charaFJ`).innerHTML = ``; - document.querySelector(`#comboFJ`).innerHTML = ``; - document.querySelector(`#diffFJ`).innerHTML = ``; + jdgGroups.forEach(jdg => { + let charaJCnt = document.querySelector(`#chara${jdg}`).getAttribute(`cnt`); + if (charaJCnt > 0) { + document.querySelector(`#chara${jdg}`).setAttribute(`cnt`, --charaJCnt); + if (charaJCnt === 0) { + document.querySelector(`#chara${jdg}`).innerHTML = ``; + document.querySelector(`#combo${jdg}`).innerHTML = ``; + document.querySelector(`#diff${jdg}`).innerHTML = ``; + } } - } + }); // 曲終了判定 if (g_scoreObj.frameNum >= fullFrame) { @@ -7744,8 +7737,7 @@ function judgeArrow(_j) { stepDivHit.classList.add(g_cssObj.main_stepShobon); } stepDivHit.setAttribute(`cnt`, C_FRM_HITMOTION); - document.querySelector(`#diffJ`).innerHTML = ` - ${difFrame === 0 ? 'Just!!' : ((difFrame > 0 ? `Slow ${difCnt} Frame` : `Fast ${difCnt} Frame`))}`; + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); arrowSprite.removeChild(judgArrow); g_workObj.judgArrowCnt[_j]++; @@ -7776,9 +7768,7 @@ function judgeArrow(_j) { } g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; } - document.querySelector(`#diffJ`).innerHTML = ` - ${difFrame === 0 ? 'Just!!' : ((difFrame > 0 ? `Slow ${difCnt} Frame` : `Fast ${difCnt} Frame`))} - `; + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } changeHitFrz(_j, fcurrentNo, `frz`); g_judgObj.lockFlgs[_j] = false; @@ -7791,6 +7781,16 @@ function judgeArrow(_j) { } } +/** + * タイミングズレを表示 + * @param {number} _difFrame + * @param {number} _difCnt + */ +function displayDiff(_difFrame, _difCnt) { + return ` + ${_difFrame === 0 ? 'Just!!' : ((_difFrame > 0 ? `Slow ${_difCnt} Frame` : `Fast ${_difCnt} Frame`))}`; +} + function lifeRecovery() { let lifeCss; g_workObj.lifeVal += g_workObj.lifeRcv; From da86798bbc050bc65602468ae1ce152d7b320145 Mon Sep 17 00:00:00 2001 From: tickle Date: Tue, 10 Dec 2019 21:07:52 +0900 Subject: [PATCH 08/14] =?UTF-8?q?[display-extensions:0.7.0]=20Fast/Slow?= =?UTF-8?q?=E3=82=92=E3=82=A4=E3=82=A4=E3=83=BB=E3=82=B7=E3=83=A3=E3=82=AD?= =?UTF-8?q?=E3=83=B3=E6=99=82=E3=81=AE=E3=81=BF=E8=A1=A8=E7=A4=BA=E3=81=99?= =?UTF-8?q?=E3=82=8B=E3=82=88=E3=81=86=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 6aea0a93..68be5da5 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -6545,7 +6545,7 @@ function MainInit() { judgeSprite.appendChild(comboJ); // Fast/Slow表示 - const diffJ = createDivCssLabel(`diff${jdg}`, jdgX[j], jdgY[j] + 25, + const diffJ = createDivCssLabel(`diff${jdg}`, jdgX[j] + 150, jdgY[j] + 25, C_LEN_JDGCHARA_WIDTH, C_LEN_JDGCHARA_HEIGHT, 14, ``, g_cssObj.common_combo); diffJ.style.textAlign = C_ALIGN_CENTER; judgeSprite.appendChild(diffJ); @@ -7726,9 +7726,11 @@ function judgeArrow(_j) { if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { judgeIi(difFrame); stepDivHit.classList.add(g_cssObj.main_stepIi); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { judgeShakin(difFrame); stepDivHit.classList.add(g_cssObj.main_stepShakin); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { judgeMatari(difFrame); stepDivHit.classList.add(g_cssObj.main_stepMatari); @@ -7737,7 +7739,6 @@ function judgeArrow(_j) { stepDivHit.classList.add(g_cssObj.main_stepShobon); } stepDivHit.setAttribute(`cnt`, C_FRM_HITMOTION); - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); arrowSprite.removeChild(judgArrow); g_workObj.judgArrowCnt[_j]++; @@ -7758,9 +7759,11 @@ function judgeArrow(_j) { const difFrame = Number(judgFrz.getAttribute(`cnt`)); if (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo) { if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { - judgeIi(difCnt); + judgeIi(difFrame); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { judgeShakin(difCnt); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { judgeMatari(difCnt); } else { @@ -7768,7 +7771,6 @@ function judgeArrow(_j) { } g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; } - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } changeHitFrz(_j, fcurrentNo, `frz`); g_judgObj.lockFlgs[_j] = false; @@ -7912,6 +7914,7 @@ function judgeShakin(difFrame) { function judgeMatari(difFrame) { changeJudgeCharacter(`matari`, C_JCR_MATARI); document.querySelector(`#comboJ`).innerHTML = ``; + document.querySelector(`#diffJ`).innerHTML = ``; finishViewing(); @@ -7931,6 +7934,7 @@ function judgeShobon(difFrame) { changeJudgeCharacter(`shobon`, C_JCR_SHOBON); g_resultObj.combo = 0; document.querySelector(`#comboJ`).innerHTML = ``; + document.querySelector(`#diffJ`).innerHTML = ``; lifeDamage(); From eacf6d80eb24830c20f98359666bd6a75031dd17 Mon Sep 17 00:00:00 2001 From: tickle Date: Tue, 10 Dec 2019 21:48:07 +0900 Subject: [PATCH 09/14] =?UTF-8?q?[display-extensions:0.6.1]=20=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 49 ++++++++++++++++++++++++----------------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 68be5da5..7d0b8c1d 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -7755,22 +7755,21 @@ function judgeArrow(_j) { const judgEndFlg = judgFrz.getAttribute(`judgEndFlg`); if (difCnt <= g_judgObj.frzJ[C_JDG_SFSF] && judgEndFlg === `false`) { - if (g_headerObj.frzStartjdgUse) { + if (g_headerObj.frzStartjdgUse && + (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo)) { const difFrame = Number(judgFrz.getAttribute(`cnt`)); - if (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo) { - if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { - judgeIi(difFrame); - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); - } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { - judgeShakin(difCnt); - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); - } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { - judgeMatari(difCnt); - } else { - judgeShobon(difCnt); - } - g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; + if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { + judgeIi(difFrame); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); + } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { + judgeShakin(difCnt); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); + } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { + judgeMatari(difCnt); + } else { + judgeShobon(difCnt); } + g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; } changeHitFrz(_j, fcurrentNo, `frz`); g_judgObj.lockFlgs[_j] = false; @@ -7927,16 +7926,22 @@ function judgeMatari(difFrame) { } /** - * 判定処理:ショボーン - * @param {number} difFrame + * ダメージ系共通処理 */ -function judgeShobon(difFrame) { - changeJudgeCharacter(`shobon`, C_JCR_SHOBON); +function judgeDamage() { g_resultObj.combo = 0; document.querySelector(`#comboJ`).innerHTML = ``; document.querySelector(`#diffJ`).innerHTML = ``; - lifeDamage(); +} + +/** + * 判定処理:ショボーン + * @param {number} difFrame + */ +function judgeShobon(difFrame) { + changeJudgeCharacter(`shobon`, C_JCR_SHOBON); + judgeDamage(); if (typeof customJudgeShobon === C_TYP_FUNCTION) { customJudgeShobon(difFrame); @@ -7952,11 +7957,7 @@ function judgeShobon(difFrame) { */ function judgeUwan(difFrame) { changeJudgeCharacter(`uwan`, C_JCR_UWAN); - g_resultObj.combo = 0; - document.querySelector(`#comboJ`).innerHTML = ``; - document.querySelector(`#diffJ`).innerHTML = ``; - - lifeDamage(); + judgeDamage(); if (typeof customJudgeUwan === C_TYP_FUNCTION) { customJudgeUwan(difFrame); From dd7594acc78f57458db4931a397aed3481dad138 Mon Sep 17 00:00:00 2001 From: tickle Date: Tue, 10 Dec 2019 22:35:15 +0900 Subject: [PATCH 10/14] =?UTF-8?q?[display-extensions:0.6.2]=20=E3=82=B3?= =?UTF-8?q?=E3=83=BC=E3=83=89=E3=81=AE=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 126 ++++++++++++++++++++++------------------------ 1 file changed, 60 insertions(+), 66 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 7d0b8c1d..d357b0b6 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -6634,11 +6634,13 @@ function MainInit() { const matchKeys = g_workObj.keyCtrl; for (let j = 0; j < keyNum; j++) { - for (let k = 0; k < matchKeys[j].length; k++) { - if (_keyCode === matchKeys[j][k] && !g_workObj.keyHitFlg[j][k]) { + matchKeys[j].forEach((key, k) => { + if (_keyCode === key && !g_workObj.keyHitFlg[j][k] && !g_judgObj.lockFlgs[j]) { + g_judgObj.lockFlgs[j] = true; judgeArrow(j); + g_judgObj.lockFlgs[j] = false; } - } + }); } }, @@ -7702,84 +7704,76 @@ function keyIsDown(_keyCode) { */ function judgeArrow(_j) { - if (!g_judgObj.lockFlgs[_j]) { - g_judgObj.lockFlgs[_j] = true; - - const currentNo = g_workObj.judgArrowCnt[_j]; - const stepDivHit = document.querySelector(`#stepHit${_j}`); - const judgArrow = document.querySelector(`#arrow${_j}_${currentNo}`); + const currentNo = g_workObj.judgArrowCnt[_j]; + const stepDivHit = document.querySelector(`#stepHit${_j}`); + const judgArrow = document.querySelector(`#arrow${_j}_${currentNo}`); + + const fcurrentNo = g_workObj.judgFrzCnt[_j]; + + if (judgArrow !== null) { + const difFrame = Number(judgArrow.getAttribute(`cnt`)); + const difCnt = Math.abs(judgArrow.getAttribute(`cnt`)); + const judgEndFlg = judgArrow.getAttribute(`judgEndFlg`); + const arrowSprite = document.querySelector(`#arrowSprite${judgArrow.getAttribute(`dividePos`)}`); + + if (difCnt <= g_judgObj.arrowJ[C_JDG_UWAN] && judgEndFlg === `false`) { + stepDivHit.style.top = `${parseFloat(judgArrow.getAttribute(`prevPosY`)) - + parseFloat(document.querySelector(`#stepRoot${_j}`).style.top) - 15}px`; + stepDivHit.style.opacity = 0.75; + stepDivHit.classList.remove(g_cssObj.main_stepDefault, g_cssObj.main_stepDummy, g_cssObj.main_stepIi, g_cssObj.main_stepShakin, g_cssObj.main_stepMatari, g_cssObj.main_stepShobon); + + if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { + judgeIi(difFrame); + stepDivHit.classList.add(g_cssObj.main_stepIi); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); + } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { + judgeShakin(difFrame); + stepDivHit.classList.add(g_cssObj.main_stepShakin); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); + } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { + judgeMatari(difFrame); + stepDivHit.classList.add(g_cssObj.main_stepMatari); + } else { + judgeShobon(difFrame); + stepDivHit.classList.add(g_cssObj.main_stepShobon); + } + stepDivHit.setAttribute(`cnt`, C_FRM_HITMOTION); - const fcurrentNo = g_workObj.judgFrzCnt[_j]; + arrowSprite.removeChild(judgArrow); + g_workObj.judgArrowCnt[_j]++; + return; + } + } - if (judgArrow !== null) { - const difFrame = Number(judgArrow.getAttribute(`cnt`)); - const difCnt = Math.abs(judgArrow.getAttribute(`cnt`)); - const judgEndFlg = judgArrow.getAttribute(`judgEndFlg`); - const arrowSprite = document.querySelector(`#arrowSprite${judgArrow.getAttribute(`dividePos`)}`); + const judgFrz = document.querySelector(`#frz${_j}_${fcurrentNo}`); - if (difCnt <= g_judgObj.arrowJ[C_JDG_UWAN] && judgEndFlg === `false`) { - stepDivHit.style.top = `${parseFloat(judgArrow.getAttribute(`prevPosY`)) - - parseFloat(document.querySelector(`#stepRoot${_j}`).style.top) - 15}px`; - stepDivHit.style.opacity = 0.75; - stepDivHit.classList.remove(g_cssObj.main_stepDefault, g_cssObj.main_stepDummy, g_cssObj.main_stepIi, g_cssObj.main_stepShakin, g_cssObj.main_stepMatari, g_cssObj.main_stepShobon); + if (judgFrz !== null) { + const difCnt = Math.abs(judgFrz.getAttribute(`cnt`)); + const judgEndFlg = judgFrz.getAttribute(`judgEndFlg`); + if (difCnt <= g_judgObj.frzJ[C_JDG_SFSF] && judgEndFlg === `false`) { + if (g_headerObj.frzStartjdgUse && + (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo)) { + const difFrame = Number(judgFrz.getAttribute(`cnt`)); if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { judgeIi(difFrame); - stepDivHit.classList.add(g_cssObj.main_stepIi); document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { - judgeShakin(difFrame); - stepDivHit.classList.add(g_cssObj.main_stepShakin); + judgeShakin(difCnt); document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { - judgeMatari(difFrame); - stepDivHit.classList.add(g_cssObj.main_stepMatari); + judgeMatari(difCnt); } else { - judgeShobon(difFrame); - stepDivHit.classList.add(g_cssObj.main_stepShobon); + judgeShobon(difCnt); } - stepDivHit.setAttribute(`cnt`, C_FRM_HITMOTION); - - arrowSprite.removeChild(judgArrow); - g_workObj.judgArrowCnt[_j]++; - - g_judgObj.lockFlgs[_j] = false; - return; - } - } - - const judgFrz = document.querySelector(`#frz${_j}_${fcurrentNo}`); - - if (judgFrz !== null) { - const difCnt = Math.abs(judgFrz.getAttribute(`cnt`)); - const judgEndFlg = judgFrz.getAttribute(`judgEndFlg`); - - if (difCnt <= g_judgObj.frzJ[C_JDG_SFSF] && judgEndFlg === `false`) { - if (g_headerObj.frzStartjdgUse && - (g_workObj.judgFrzHitCnt[_j] === undefined || g_workObj.judgFrzHitCnt[_j] <= fcurrentNo)) { - const difFrame = Number(judgFrz.getAttribute(`cnt`)); - if (difCnt <= g_judgObj.arrowJ[C_JDG_II]) { - judgeIi(difFrame); - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); - } else if (difCnt <= g_judgObj.arrowJ[C_JDG_SHAKIN]) { - judgeShakin(difCnt); - document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); - } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { - judgeMatari(difCnt); - } else { - judgeShobon(difCnt); - } - g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; - } - changeHitFrz(_j, fcurrentNo, `frz`); - g_judgObj.lockFlgs[_j] = false; - return; + g_workObj.judgFrzHitCnt[_j] = fcurrentNo + 1; } + changeHitFrz(_j, fcurrentNo, `frz`); + return; } - const stepDiv = document.querySelector(`#stepDiv${_j}`); - stepDiv.style.display = `inherit`; - g_judgObj.lockFlgs[_j] = false; } + const stepDiv = document.querySelector(`#stepDiv${_j}`); + stepDiv.style.display = `inherit`; } /** From d350cc44d53f6efbb67822481139172688c648aa Mon Sep 17 00:00:00 2001 From: tickle Date: Tue, 10 Dec 2019 22:48:05 +0900 Subject: [PATCH 11/14] =?UTF-8?q?[display-extensions:0.6.2]=20Fast/Slow?= =?UTF-8?q?=E3=81=8C=E9=80=86=E3=81=A0=E3=81=A3=E3=81=9F=E5=95=8F=E9=A1=8C?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index d357b0b6..1f66deb5 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -7782,8 +7782,8 @@ function judgeArrow(_j) { * @param {number} _difCnt */ function displayDiff(_difFrame, _difCnt) { - return ` - ${_difFrame === 0 ? 'Just!!' : ((_difFrame > 0 ? `Slow ${_difCnt} Frame` : `Fast ${_difCnt} Frame`))}`; + return ` + ${_difFrame === 0 ? 'Just!!' : ((_difFrame > 0 ? `Fast ${_difCnt} Frame` : `Slow ${_difCnt} Frame`))}`; } function lifeRecovery() { From e3fe7ebea517f72a4b2a874b7a8e87d070c5d0d0 Mon Sep 17 00:00:00 2001 From: tickle Date: Wed, 11 Dec 2019 19:04:22 +0900 Subject: [PATCH 12/14] =?UTF-8?q?[display-extensions:0.7.0]=20Fast/Slow?= =?UTF-8?q?=E3=81=AE=E7=AF=84=E5=9B=B2=E3=82=92=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 1f66deb5..68a51ae7 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -7733,6 +7733,7 @@ function judgeArrow(_j) { } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { judgeMatari(difFrame); stepDivHit.classList.add(g_cssObj.main_stepMatari); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else { judgeShobon(difFrame); stepDivHit.classList.add(g_cssObj.main_stepShobon); @@ -7763,6 +7764,7 @@ function judgeArrow(_j) { document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else if (difCnt <= g_judgObj.arrowJ[C_JDG_MATARI]) { judgeMatari(difCnt); + document.querySelector(`#diffJ`).innerHTML = displayDiff(difFrame, difCnt); } else { judgeShobon(difCnt); } @@ -7782,8 +7784,8 @@ function judgeArrow(_j) { * @param {number} _difCnt */ function displayDiff(_difFrame, _difCnt) { - return ` - ${_difFrame === 0 ? 'Just!!' : ((_difFrame > 0 ? `Fast ${_difCnt} Frame` : `Slow ${_difCnt} Frame`))}`; + return ` + ${_difCnt <= 1 ? 'Just!!' : ((_difFrame > 1 ? `Fast ${_difCnt} Frame` : `Slow ${_difCnt} Frames`))}`; } function lifeRecovery() { From c9bda67da56300057dbc1bce1c75b0e0da03beb4 Mon Sep 17 00:00:00 2001 From: tickle Date: Sat, 14 Dec 2019 20:17:34 +0900 Subject: [PATCH 13/14] =?UTF-8?q?[display-extensions:0.8.0]=20Fast/Slow?= =?UTF-8?q?=E3=81=AE=E9=9D=9E=E8=A1=A8=E7=A4=BA=E5=8C=96=E3=81=AB=E5=AF=BE?= =?UTF-8?q?=E5=BF=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index 5e53f982..89d09bd5 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -6506,23 +6506,15 @@ function MainInit() { // 判定系OFF設定 if (g_stateObj.d_judgement === C_FLG_OFF) { - document.querySelector(`#lblIi`).style.display = C_DIS_NONE; - document.querySelector(`#lblShakin`).style.display = C_DIS_NONE; - document.querySelector(`#lblMatari`).style.display = C_DIS_NONE; - document.querySelector(`#lblShobon`).style.display = C_DIS_NONE; - document.querySelector(`#lblUwan`).style.display = C_DIS_NONE; - document.querySelector(`#lblMCombo`).style.display = C_DIS_NONE; - - document.querySelector(`#lblKita`).style.display = C_DIS_NONE; - document.querySelector(`#lblIknai`).style.display = C_DIS_NONE; - document.querySelector(`#lblFCombo`).style.display = C_DIS_NONE; - - document.querySelector(`#comboJ`).style.display = C_DIS_NONE; - document.querySelector(`#charaJ`).style.display = C_DIS_NONE; - document.querySelector(`#diffJ`).style.display = C_DIS_NONE; - document.querySelector(`#comboFJ`).style.display = C_DIS_NONE; - document.querySelector(`#charaFJ`).style.display = C_DIS_NONE; - document.querySelector(`#diffFJ`).style.display = C_DIS_NONE; + const hideObjs = [ + `Ii`, `Shakin`, `Matari`, `Shobon`, `Uwan`, `MCombo`, `Kita`, `Iknai`, `FCombo` + ]; + hideObjs.forEach(hideObj => { + document.querySelector(`#lbl${hideObj}`).style.display = C_DIS_NONE; + }); + jdgGroups.forEach(jdg => { + document.querySelector(`#diff${jdg}`).style.display = C_DIS_NONE; + }); } // 曲情報OFF @@ -7955,8 +7947,10 @@ function makeFinishView(_text) { document.querySelector(`#finishView`).style.opacity = 1; document.querySelector(`#charaJ`).innerHTML = ``; document.querySelector(`#comboJ`).innerHTML = ``; + document.querySelector(`#diffJ`).innerHTML = ``; document.querySelector(`#charaFJ`).innerHTML = ``; document.querySelector(`#comboFJ`).innerHTML = ``; + document.querySelector(`#diffFJ`).innerHTML = ``; } function finishViewing() { From 09353a40c21b47537ae38f94230354bfd2048385 Mon Sep 17 00:00:00 2001 From: tickle Date: Sat, 14 Dec 2019 20:53:04 +0900 Subject: [PATCH 14/14] =?UTF-8?q?[ver11.0.0]=20Display=E3=81=AE=E6=8B=A1?= =?UTF-8?q?=E5=BC=B5=E8=A8=AD=E5=AE=9A=E3=82=92=E8=BF=BD=E5=8A=A0=E3=80=80?= =?UTF-8?q?=E4=BB=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/danoni_main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/danoni_main.js b/js/danoni_main.js index d7093cbe..e9847918 100644 --- a/js/danoni_main.js +++ b/js/danoni_main.js @@ -8,7 +8,7 @@ * * https://github.com/cwtickle/danoniplus */ -const g_version = `Ver 10.5.1`; +const g_version = `Ver 11.0.0`; const g_revisedDate = `2019/12/14`; const g_alphaVersion = ``;