danoniplus 50.1.2 → 50.2.0
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 +10 -8
- package/js/lib/danoni_constants.js +2 -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 : 2026/
|
|
7
|
+
* Revised : 2026/09/01
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 50.
|
|
12
|
-
const g_revisedDate = `2026/
|
|
11
|
+
const g_version = `Ver 50.2.0`;
|
|
12
|
+
const g_revisedDate = `2026/09/01`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -8528,25 +8528,26 @@ const resolveKeyFamily = () => {
|
|
|
8528
8528
|
const allPaths = new Set(g_familyObj.families.flatMap(f => Object.keys(f.fields)));
|
|
8529
8529
|
allPaths.forEach(path => {
|
|
8530
8530
|
const spec = newFamily?.fields[path];
|
|
8531
|
-
// 該当プロパティのカスタム処理があれば優先し、なければ通常のプロパティ代入を使用
|
|
8532
|
-
const applier = g_familyObj.families.map(f => f.appliers[path]).find(Boolean) ?? (v => setPathVal(path, v));
|
|
8533
8531
|
|
|
8534
8532
|
if (spec !== undefined) {
|
|
8535
8533
|
// 【変更値の適用】現在のファミリーにそのプロパティの設定がある場合
|
|
8536
8534
|
// 初めて書き換えるプロパティの場合のみ、元の値をスナップショット(初期値)として退避
|
|
8537
8535
|
if (!g_familyObj.ownership[path]) {
|
|
8538
8536
|
g_familyObj.snapshot[path] = getPathVal(path);
|
|
8539
|
-
g_familyObj.ownership[path] = true;
|
|
8540
8537
|
}
|
|
8541
8538
|
// 関数なら評価し、値ならそのまま適用値とする
|
|
8539
|
+
g_familyObj.ownership[path] = newFamily;
|
|
8540
|
+
const applier = newFamily.appliers[path] ?? (v => setPathVal(path, v));
|
|
8542
8541
|
applyIfChanged(path, typeof spec === `function` ? spec() : spec, applier);
|
|
8542
|
+
|
|
8543
8543
|
} else if (g_familyObj.ownership[path]) {
|
|
8544
8544
|
// 【標準への復元】別のファミリーに移行し、かつ元々自分が書き換えていたプロパティの場合
|
|
8545
8545
|
// スナップショットから元の値(初期値)を復元し、オーナーシップを解放
|
|
8546
|
+
const applier = g_familyObj.ownership[path].appliers[path] ?? (v => setPathVal(path, v));
|
|
8546
8547
|
applyIfChanged(path, g_familyObj.snapshot[path], applier);
|
|
8547
|
-
g_familyObj.ownership[path] =
|
|
8548
|
+
g_familyObj.ownership[path] = null;
|
|
8548
8549
|
}
|
|
8549
|
-
// ownership[path]が
|
|
8550
|
+
// ownership[path]がnullのままなら、標準同士の切り替えでも一切触らない
|
|
8550
8551
|
});
|
|
8551
8552
|
};
|
|
8552
8553
|
|
|
@@ -17240,6 +17241,7 @@ const judgeArrow = _j => {
|
|
|
17240
17241
|
// 空押し判定(有効かつ早押し時のみ)
|
|
17241
17242
|
displayDiff(_difFrame);
|
|
17242
17243
|
stepHitTargetArrow(`Excessive`);
|
|
17244
|
+
safeExecuteCustomHooks(`g_customJsObj.judg_excessive`, g_customJsObj.judg_excessive, _difFrame, _j);
|
|
17243
17245
|
return true;
|
|
17244
17246
|
|
|
17245
17247
|
} else if (_difCnt <= g_judgObj.arrowJ[g_judgPosObj.shobon]) {
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2019/11/19
|
|
8
|
-
* Revised : 2026/
|
|
8
|
+
* Revised : 2026/09/01 (v50.2.0)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -5259,6 +5259,7 @@ const g_customJsObj = {
|
|
|
5259
5259
|
judg_uwan: [],
|
|
5260
5260
|
judg_kita: [],
|
|
5261
5261
|
judg_iknai: [],
|
|
5262
|
+
judg_excessive: [],
|
|
5262
5263
|
|
|
5263
5264
|
judg_frzHit: [],
|
|
5264
5265
|
judg_dummyFrzHit: [],
|