danoniplus 42.5.3 → 43.0.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 +62 -22
- package/js/lib/danoni_constants.js +7 -1
- 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/
|
|
7
|
+
* Revised : 2025/09/16
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver
|
|
12
|
-
const g_revisedDate = `2025/
|
|
11
|
+
const g_version = `Ver 43.0.1`;
|
|
12
|
+
const g_revisedDate = `2025/09/16`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -4008,8 +4008,31 @@ const headerConvert = _dosObj => {
|
|
|
4008
4008
|
// フリーズアローの始点で通常矢印の判定を行うか(dotさんソース方式)
|
|
4009
4009
|
obj.frzStartjdgUse = setBoolVal(_dosObj.frzStartjdgUse ?? g_presetObj.frzStartjdgUse);
|
|
4010
4010
|
|
|
4011
|
-
//
|
|
4012
|
-
|
|
4011
|
+
// 空押し判定の設定
|
|
4012
|
+
// excessiveUses : 譜面毎の空押し有効化設定
|
|
4013
|
+
// excessiveJdgUses: 譜面毎の空押し初期設定
|
|
4014
|
+
obj.excessiveUses = [];
|
|
4015
|
+
obj.excessiveJdgUses = [];
|
|
4016
|
+
splitLF2(_dosObj.excessiveUse)?.forEach(val => {
|
|
4017
|
+
const tmpVal = val.split(`,`);
|
|
4018
|
+
obj.excessiveUses.push(setBoolVal(tmpVal[0]));
|
|
4019
|
+
obj.excessiveJdgUses.push(setVal(tmpVal[1], C_FLG_OFF, C_TYP_SWITCH) === C_FLG_ON);
|
|
4020
|
+
});
|
|
4021
|
+
if ((obj.excessiveUses?.length || 0) < obj.difLabels.length) {
|
|
4022
|
+
obj.excessiveUses = makeBaseArray(obj.excessiveUses, obj.difLabels.length,
|
|
4023
|
+
setBoolVal(obj.excessiveUses?.[0] ?? _dosObj.excessiveUse ?? g_presetObj.excessiveUse, true));
|
|
4024
|
+
obj.excessiveJdgUses = makeBaseArray(obj.excessiveJdgUses, obj.difLabels.length,
|
|
4025
|
+
setBoolVal(obj.excessiveJdgUses?.[0] ?? g_presetObj.excessiveJdgUse ?? false));
|
|
4026
|
+
}
|
|
4027
|
+
|
|
4028
|
+
// excessiveJdgUseが有効な場合は全譜面に対して強制的に上書き
|
|
4029
|
+
if (_dosObj.excessiveJdgUse !== undefined) {
|
|
4030
|
+
const excessiveJdg = setBoolVal(_dosObj.excessiveJdgUse);
|
|
4031
|
+
if (excessiveJdg) {
|
|
4032
|
+
obj.excessiveJdgUses = obj.excessiveJdgUses.map(val => true);
|
|
4033
|
+
}
|
|
4034
|
+
}
|
|
4035
|
+
obj.excessiveJdgUse = obj.excessiveJdgUses[0];
|
|
4013
4036
|
g_stateObj.excessive = boolToSwitch(obj.excessiveJdgUse);
|
|
4014
4037
|
g_settings.excessiveNum = Number(obj.excessiveJdgUse);
|
|
4015
4038
|
|
|
@@ -7123,6 +7146,21 @@ const setDifficulty = (_initFlg) => {
|
|
|
7123
7146
|
g_stateObj.autoPlay = g_settings.autoPlays[g_settings.autoPlayNum];
|
|
7124
7147
|
lnkAutoPlay.textContent = getStgDetailName(g_stateObj.autoPlay);
|
|
7125
7148
|
|
|
7149
|
+
// 譜面毎のExcessive再設定(意図的に変更した場合のみ元に戻さない)
|
|
7150
|
+
if (g_canLoadDifInfoFlg && (g_stateObj.excessiveScoreId !== g_stateObj.scoreId)) {
|
|
7151
|
+
g_headerObj.excessiveJdgUse = g_headerObj.excessiveJdgUses[g_stateObj.scoreId];
|
|
7152
|
+
g_stateObj.excessive = boolToSwitch(g_headerObj.excessiveJdgUse);
|
|
7153
|
+
}
|
|
7154
|
+
g_headerObj.excessiveUse = g_headerObj.excessiveUses[g_stateObj.scoreId];
|
|
7155
|
+
if (g_headerObj.excessiveUse) {
|
|
7156
|
+
setExcessive(document.getElementById(`lnkExcessive`), g_stateObj.excessive === C_FLG_ON);
|
|
7157
|
+
lnkExcessive.style.display = C_DIS_INHERIT;
|
|
7158
|
+
} else {
|
|
7159
|
+
g_stateObj.excessiveChgFlg = false;
|
|
7160
|
+
lblExcessive.style.display = (g_stateObj.excessive === C_FLG_ON ? C_DIS_INHERIT : C_DIS_NONE);
|
|
7161
|
+
lnkExcessive.style.display = C_DIS_NONE;
|
|
7162
|
+
}
|
|
7163
|
+
|
|
7126
7164
|
// 譜面明細画面の再描画
|
|
7127
7165
|
if (g_settings.scoreDetails.length > 0) {
|
|
7128
7166
|
drawSpeedGraph(g_stateObj.scoreId);
|
|
@@ -7366,20 +7404,17 @@ const createOptionWindow = _sprite => {
|
|
|
7366
7404
|
}
|
|
7367
7405
|
|
|
7368
7406
|
// 空押し判定設定 (Excessive)
|
|
7369
|
-
|
|
7370
|
-
|
|
7371
|
-
|
|
7372
|
-
|
|
7373
|
-
|
|
7374
|
-
|
|
7375
|
-
)
|
|
7376
|
-
|
|
7377
|
-
|
|
7378
|
-
|
|
7379
|
-
|
|
7380
|
-
)
|
|
7381
|
-
);
|
|
7382
|
-
}
|
|
7407
|
+
spriteList.gauge.appendChild(
|
|
7408
|
+
createDivCss2Label(`lblExcessive`, `${g_lblNameObj.Excessive}:${C_FLG_ON}`,
|
|
7409
|
+
g_lblPosObj.lblExcessive, g_cssObj[`button_Disabled${C_FLG_ON}`]
|
|
7410
|
+
)
|
|
7411
|
+
);
|
|
7412
|
+
spriteList.gauge.appendChild(
|
|
7413
|
+
createCss2Button(`lnkExcessive`, g_lblNameObj.Excessive, evt => setExcessive(evt.target),
|
|
7414
|
+
Object.assign(g_lblPosObj.btnExcessive, {
|
|
7415
|
+
title: g_msgObj.excessive, cxtFunc: evt => setExcessive(evt.target),
|
|
7416
|
+
}), g_cssObj.button_Default, g_cssObj[`button_Rev${g_stateObj.excessive}`])
|
|
7417
|
+
);
|
|
7383
7418
|
|
|
7384
7419
|
// ---------------------------------------------------
|
|
7385
7420
|
// タイミング調整 (Adjustment)
|
|
@@ -7854,10 +7889,15 @@ const getAccuracy = (_border, _rcv, _dmg, _init, _allCnt) => {
|
|
|
7854
7889
|
* 空押し判定の設定
|
|
7855
7890
|
* @param {HTMLDivElement} _btn
|
|
7856
7891
|
*/
|
|
7857
|
-
const setExcessive = _btn => {
|
|
7858
|
-
|
|
7892
|
+
const setExcessive = (_btn, _val) => {
|
|
7893
|
+
const curExcessive = Number(g_settings.excessiveNum);
|
|
7894
|
+
g_settings.excessiveNum = _val !== undefined ? Number(_val) : (curExcessive + 1) % 2;
|
|
7895
|
+
g_stateObj.excessiveChgFlg = _val === undefined;
|
|
7896
|
+
if (g_stateObj.excessiveChgFlg) {
|
|
7897
|
+
g_stateObj.excessiveScoreId = g_stateObj.scoreId;
|
|
7898
|
+
}
|
|
7859
7899
|
g_stateObj.excessive = g_settings.excessives[g_settings.excessiveNum];
|
|
7860
|
-
_btn.classList.replace(g_cssObj[`button_Rev${g_settings.excessives[
|
|
7900
|
+
_btn.classList.replace(g_cssObj[`button_Rev${g_settings.excessives[curExcessive]}`],
|
|
7861
7901
|
g_cssObj[`button_Rev${g_settings.excessives[g_settings.excessiveNum]}`]);
|
|
7862
7902
|
};
|
|
7863
7903
|
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2019/11/19
|
|
8
|
-
* Revised : 2025/
|
|
8
|
+
* Revised : 2025/09/16 (v43.0.1)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -376,6 +376,9 @@ const updateWindowSiz = () => {
|
|
|
376
376
|
btnReverse: {
|
|
377
377
|
x: 160, y: 0, w: 90, h: 21, siz: g_limitObj.difSelectorSiz, borderStyle: `solid`,
|
|
378
378
|
},
|
|
379
|
+
lblExcessive: {
|
|
380
|
+
x: 5, y: 27, w: 90, h: 18, siz: 12,
|
|
381
|
+
},
|
|
379
382
|
btnExcessive: {
|
|
380
383
|
x: 5, y: 25, w: 90, h: 21, siz: g_limitObj.difSelectorSiz, borderStyle: `solid`,
|
|
381
384
|
},
|
|
@@ -1046,6 +1049,9 @@ const g_stateObj = {
|
|
|
1046
1049
|
autoPlay: C_FLG_OFF,
|
|
1047
1050
|
autoAll: C_FLG_OFF,
|
|
1048
1051
|
gauge: `Normal`,
|
|
1052
|
+
excessive: C_FLG_OFF,
|
|
1053
|
+
excessiveChgFlg: false,
|
|
1054
|
+
excessiveScoreId: 0,
|
|
1049
1055
|
adjustment: 0,
|
|
1050
1056
|
hitPosition: 0,
|
|
1051
1057
|
fadein: 0,
|