danoniplus 41.3.0 → 41.3.1
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/js/danoni_main.js +43 -41
- package/package.json +1 -1
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 : 2025/05/
|
|
7
|
+
* Revised : 2025/05/15
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 41.3.
|
|
12
|
-
const g_revisedDate = `2025/05/
|
|
11
|
+
const g_version = `Ver 41.3.1`;
|
|
12
|
+
const g_revisedDate = `2025/05/15`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -3448,55 +3448,60 @@ const headerConvert = _dosObj => {
|
|
|
3448
3448
|
}
|
|
3449
3449
|
|
|
3450
3450
|
// 曲名
|
|
3451
|
-
obj.musicTitles = [];
|
|
3452
|
-
obj.musicTitlesForView = [];
|
|
3453
|
-
obj.artistNames = [];
|
|
3454
|
-
obj.artistUrls = [];
|
|
3455
|
-
obj.
|
|
3456
|
-
obj.
|
|
3451
|
+
obj.musicTitles = [`musicName`];
|
|
3452
|
+
obj.musicTitlesForView = [[`musicName`]];
|
|
3453
|
+
obj.artistNames = [``];
|
|
3454
|
+
obj.artistUrls = [``];
|
|
3455
|
+
obj.bpms = [`----`];
|
|
3456
|
+
obj.musicNos = hasVal(_dosObj.musicNo)
|
|
3457
|
+
? splitLF2(_dosObj.musicNo).map(Number).map(val => isNaN(val) ? 0 : val)
|
|
3458
|
+
: fillArray(_dosObj.difData?.split(`$`).length ?? 1);
|
|
3457
3459
|
|
|
3458
3460
|
const dosMusicTitle = getHeader(_dosObj, `musicTitle`);
|
|
3461
|
+
let alternativeTitle;
|
|
3459
3462
|
if (hasVal(dosMusicTitle)) {
|
|
3460
3463
|
const musicData = splitLF2(dosMusicTitle);
|
|
3461
3464
|
|
|
3462
|
-
|
|
3463
|
-
|
|
3464
|
-
}
|
|
3465
|
-
|
|
3466
|
-
for (let j = 0; j < musicData.length; j++) {
|
|
3465
|
+
const lastIdx = Math.max(...obj.musicNos, musicData.length - 1);
|
|
3466
|
+
for (let j = 0; j <= lastIdx; j++) {
|
|
3467
3467
|
const musics = splitComma(musicData[j]);
|
|
3468
3468
|
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
obj.
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3475
|
-
|
|
3476
|
-
|
|
3477
|
-
|
|
3469
|
+
obj.musicTitles[j] = hasVal(musics[0])
|
|
3470
|
+
? escapeHtml(getMusicNameSimple(musics[0]))
|
|
3471
|
+
: obj.musicTitles[0];
|
|
3472
|
+
obj.musicTitlesForView[j] = hasVal(musics[0])
|
|
3473
|
+
? escapeHtmlForArray(getMusicNameMultiLine(musics[0]))
|
|
3474
|
+
: obj.musicTitlesForView[0];
|
|
3475
|
+
obj.artistNames[j] = hasVal(musics[1])
|
|
3476
|
+
? escapeHtml(musics[1])
|
|
3477
|
+
: obj.artistNames[0];
|
|
3478
|
+
obj.artistUrls[j] = musics[2] || obj.artistUrls[0];
|
|
3479
|
+
obj.bpms[j] = musics[4] || obj.bpms[0];
|
|
3480
|
+
|
|
3481
|
+
// 代替タイトル名
|
|
3478
3482
|
if (j === 0) {
|
|
3479
|
-
|
|
3480
|
-
obj.musicTitleForView = obj.musicTitlesForView[0];
|
|
3481
|
-
obj.artistName = obj.artistNames[0];
|
|
3482
|
-
if (obj.artistName === ``) {
|
|
3483
|
-
makeWarningWindow(g_msgInfoObj.E_0011);
|
|
3484
|
-
obj.artistName = `artistName`;
|
|
3485
|
-
}
|
|
3486
|
-
obj.artistUrl = obj.artistUrls[0];
|
|
3487
|
-
if (hasVal(musics[3])) {
|
|
3488
|
-
obj.musicTitles[0] = escapeHtml(getMusicNameSimple(musics[3]));
|
|
3489
|
-
obj.musicTitlesForView[0] = escapeHtmlForArray(getMusicNameMultiLine(musics[3]));
|
|
3490
|
-
}
|
|
3483
|
+
alternativeTitle = musics[3];
|
|
3491
3484
|
}
|
|
3492
3485
|
}
|
|
3493
3486
|
|
|
3494
3487
|
} else {
|
|
3495
3488
|
makeWarningWindow(g_msgInfoObj.E_0012);
|
|
3496
|
-
|
|
3497
|
-
|
|
3489
|
+
}
|
|
3490
|
+
|
|
3491
|
+
// 単一作品用の項目としての管理変数
|
|
3492
|
+
obj.musicTitle = obj.musicTitles[0];
|
|
3493
|
+
obj.musicTitleForView = obj.musicTitlesForView[0];
|
|
3494
|
+
obj.artistName = obj.artistNames[0];
|
|
3495
|
+
if (obj.artistName === ``) {
|
|
3496
|
+
makeWarningWindow(g_msgInfoObj.E_0011);
|
|
3498
3497
|
obj.artistName = `artistName`;
|
|
3499
|
-
|
|
3498
|
+
}
|
|
3499
|
+
obj.artistUrl = obj.artistUrls[0];
|
|
3500
|
+
|
|
3501
|
+
// 代替タイトル名は曲名定義の後に設定する(複数曲を束ねる名前であり、曲名ではないため)
|
|
3502
|
+
if (hasVal(alternativeTitle)) {
|
|
3503
|
+
obj.musicTitles[0] = escapeHtml(getMusicNameSimple(alternativeTitle));
|
|
3504
|
+
obj.musicTitlesForView[0] = escapeHtmlForArray(getMusicNameMultiLine(alternativeTitle));
|
|
3500
3505
|
}
|
|
3501
3506
|
|
|
3502
3507
|
// 選曲機能の利用有無
|
|
@@ -3619,9 +3624,6 @@ const headerConvert = _dosObj => {
|
|
|
3619
3624
|
obj.viewLists = [...Array(obj.keyLabels.length).keys()];
|
|
3620
3625
|
obj.keyLists = keyLists.sort((a, b) => parseInt(a) - parseInt(b));
|
|
3621
3626
|
obj.undefinedKeyLists = obj.keyLists.filter(key => g_keyObj[`${g_keyObj.defaultProp}${key}_0`] === undefined);
|
|
3622
|
-
if (obj.musicNos.length === 0) {
|
|
3623
|
-
obj.musicNos = fillArray(obj.keyLabels.length);
|
|
3624
|
-
}
|
|
3625
3627
|
|
|
3626
3628
|
// 楽曲別のグループ化設定(選曲モードのみ)
|
|
3627
3629
|
if (hasVal(_dosObj.musicGroup)) {
|