danoniplus 30.2.1 → 30.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/danoni/danoni5.html +1 -1
- package/js/danoni_main.js +24 -13
- package/package.json +1 -1
package/danoni/danoni5.html
CHANGED
|
@@ -81,7 +81,7 @@ onigiri,0,-90,90,180,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,gik
|
|
|
81
81
|
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,12,12,12,12,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W
|
|
82
82
|
|
|
|
83
83
|
|
|
84
|
-
|divTr=7$7$7$12
|
|
84
|
+
|divTr=7$7$7$12|
|
|
85
85
|
|keyCtrlTr=
|
|
86
86
|
37/0,40/0,38/0,39/0,32/0,90/0,88/0,67/0,37/0,40/0,38/0,39/0,37/0,40/0,38/0,39/0,87/0,69/0,51/52,82/0,49/50,84/0,89/0,48/189,85/0,73/0,56/57/0,79/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0,32/0,78/0,74/0,77/0,75/0,188/0,76/0,190/0
|
|
87
87
|
32/0,37/0,40/0,38/0,39/0,90/0,88/0,67/0,37/0,40/0,38/0,39/0,37/0,40/0,38/0,39/0,87/0,69/0,51/52,82/0,49/50,84/0,89/0,48/189,85/0,73/0,56/57/0,79/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0,32/0,78/0,74/0,77/0,75/0,188/0,76/0,190/0
|
package/js/danoni_main.js
CHANGED
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Source by tickle
|
|
6
6
|
* Created : 2018/10/08
|
|
7
|
-
* Revised : 2023/02/
|
|
7
|
+
* Revised : 2023/02/26
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 30.2.
|
|
12
|
-
const g_revisedDate = `2023/02/
|
|
11
|
+
const g_version = `Ver 30.2.3`;
|
|
12
|
+
const g_revisedDate = `2023/02/26`;
|
|
13
13
|
const g_alphaVersion = ``;
|
|
14
14
|
|
|
15
15
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
@@ -3634,6 +3634,12 @@ const keysConvert = (_dosObj, { keyExtraList = _dosObj.keyExtraList.split(`,`) }
|
|
|
3634
3634
|
g_keyObj[`divMax${ptnName}`] = setVal(tmpDivPtn[1], -1, C_TYP_FLOAT);
|
|
3635
3635
|
}
|
|
3636
3636
|
}
|
|
3637
|
+
} else if (g_keyObj[`chara${newKey}_0`] !== undefined) {
|
|
3638
|
+
// 特に指定が無い場合はcharaX_Yの配列長で決定
|
|
3639
|
+
for (let k = 0; k < tmpMinPatterns; k++) {
|
|
3640
|
+
const ptnName = `${newKey}_${k + dfPtnNum}`;
|
|
3641
|
+
g_keyObj[`div${ptnName}`] = g_keyObj[`chara${newKey}_0`].length;
|
|
3642
|
+
}
|
|
3637
3643
|
}
|
|
3638
3644
|
|
|
3639
3645
|
// ステップゾーン位置 (posX_Y)
|
|
@@ -3641,8 +3647,7 @@ const keysConvert = (_dosObj, { keyExtraList = _dosObj.keyExtraList.split(`,`) }
|
|
|
3641
3647
|
loopFunc: (k, keyheader) => {
|
|
3642
3648
|
const ptnName = `${newKey}_${k + dfPtnNum}`;
|
|
3643
3649
|
if (g_keyObj[`divMax${ptnName}`] === undefined || g_keyObj[`divMax${ptnName}`] === -1) {
|
|
3644
|
-
|
|
3645
|
-
g_keyObj[`divMax${ptnName}`] = g_keyObj[`${keyheader}_${k + dfPtnNum}`][posLength - 1] + 1;
|
|
3650
|
+
g_keyObj[`divMax${ptnName}`] = Math.max(...g_keyObj[`${keyheader}_${k + dfPtnNum}`]) + 1;
|
|
3646
3651
|
}
|
|
3647
3652
|
}
|
|
3648
3653
|
});
|
|
@@ -3672,6 +3677,14 @@ const keysConvert = (_dosObj, { keyExtraList = _dosObj.keyExtraList.split(`,`) }
|
|
|
3672
3677
|
|
|
3673
3678
|
// シャッフルグループ (shuffleX_Y)
|
|
3674
3679
|
newKeyTripleParam(newKey, `shuffle`);
|
|
3680
|
+
if (g_keyObj[`shuffle${newKey}_${dfPtnNum}_0`] === undefined) {
|
|
3681
|
+
// 特に指定が無い場合はcolorX_Yの配列長で決定
|
|
3682
|
+
for (let k = 0; k < tmpMinPatterns; k++) {
|
|
3683
|
+
const ptnName = `${newKey}_${k + dfPtnNum}`;
|
|
3684
|
+
g_keyObj[`shuffle${ptnName}_0`] = [...Array(g_keyObj[`color${ptnName}`].length)].fill(0);
|
|
3685
|
+
g_keyObj[`shuffle${ptnName}`] = structuredClone(g_keyObj[`shuffle${ptnName}_0`]);
|
|
3686
|
+
}
|
|
3687
|
+
}
|
|
3675
3688
|
|
|
3676
3689
|
// キーグループ (keyGroupX_Y)
|
|
3677
3690
|
newKeyMultiParam(newKey, `keyGroup`, toSplitArrayStr);
|
|
@@ -6422,9 +6435,9 @@ const getKeyInfo = _ => {
|
|
|
6422
6435
|
const keyCtrlPtn = `${g_keyObj.currentKey}_${g_keyObj.currentPtn}`;
|
|
6423
6436
|
const keyNum = g_keyObj[`chara${keyCtrlPtn}`].length;
|
|
6424
6437
|
const posMax = (g_keyObj[`divMax${keyCtrlPtn}`] !== undefined ?
|
|
6425
|
-
g_keyObj[`divMax${keyCtrlPtn}`] : g_keyObj[`pos${keyCtrlPtn}`]
|
|
6438
|
+
g_keyObj[`divMax${keyCtrlPtn}`] : Math.max(...g_keyObj[`pos${keyCtrlPtn}`]) + 1);
|
|
6426
6439
|
const divideCnt = g_keyObj[`div${keyCtrlPtn}`] - 1;
|
|
6427
|
-
const keyGroupMaps = setVal(g_keyObj[`keyGroup${keyCtrlPtn}`], [...Array(keyNum)].fill([0]), C_TYP_STRING);
|
|
6440
|
+
const keyGroupMaps = setVal(g_keyObj[`keyGroup${keyCtrlPtn}`], [...Array(keyNum)].fill([`0`]), C_TYP_STRING);
|
|
6428
6441
|
const keyGroupList = makeDedupliArray(keyGroupMaps.flat()).sort((a, b) => parseInt(a) - parseInt(b));
|
|
6429
6442
|
|
|
6430
6443
|
return {
|
|
@@ -7393,14 +7406,12 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7393
7406
|
}
|
|
7394
7407
|
|
|
7395
7408
|
// キー変化定義
|
|
7396
|
-
obj.keychFrames = [];
|
|
7409
|
+
obj.keychFrames = [0];
|
|
7410
|
+
obj.keychTarget = [`0`];
|
|
7397
7411
|
if (hasVal(_dosObj[`keych${setScoreIdHeader(g_stateObj.scoreId, g_stateObj.scoreLockFlg)}_data`])) {
|
|
7398
7412
|
const keychdata = splitLF2(_dosObj[`keych${setScoreIdHeader(g_stateObj.scoreId, g_stateObj.scoreLockFlg)}_data`], `,`);
|
|
7399
|
-
obj.keychFrames
|
|
7400
|
-
obj.keychTarget
|
|
7401
|
-
} else {
|
|
7402
|
-
obj.keychFrames = [0];
|
|
7403
|
-
obj.keychTarget = [0];
|
|
7413
|
+
obj.keychFrames.push(...keychdata.filter((val, j) => j % 2 === 0));
|
|
7414
|
+
obj.keychTarget.push(...keychdata.filter((val, j) => j % 2 === 1));
|
|
7404
7415
|
}
|
|
7405
7416
|
|
|
7406
7417
|
return obj;
|