danoniplus 51.0.1 → 51.0.2
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 +3 -3
- package/js/lib/danoni_constants.js +10 -3
- package/js/lib/dosConverter.js +24 -15
- package/js/lib/settings.js +8 -6
- 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/09/
|
|
7
|
+
* Revised : 2026/09/25
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 51.0.
|
|
12
|
-
const g_revisedDate = `2026/09/
|
|
11
|
+
const g_version = `Ver 51.0.2`;
|
|
12
|
+
const g_revisedDate = `2026/09/25`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2019/11/19
|
|
8
|
-
* Revised : 2026/09/
|
|
8
|
+
* Revised : 2026/09/25 (v51.0.2)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -1368,7 +1368,13 @@ const g_gaugeDefObj = {
|
|
|
1368
1368
|
*/
|
|
1369
1369
|
const g_gaugeSelObj = {};
|
|
1370
1370
|
|
|
1371
|
-
/**
|
|
1371
|
+
/**
|
|
1372
|
+
* 譜面ヘッダー由来のゲージ設定をまとめて定義
|
|
1373
|
+
* - 定義方法はg_gaugeSelObjと類似しており、ゲージ名プロパティがない以外はほぼ同じ構造。
|
|
1374
|
+
*/
|
|
1375
|
+
const g_gaugeHeaderObj = {};
|
|
1376
|
+
|
|
1377
|
+
/** どの名前をどの順で選択肢に出すかだけを持つ。詳細値はg_gaugeDefObj、g_gaugeHeaderObj, g_gaugeSelObjを参照 */
|
|
1372
1378
|
const g_gaugeOptionObj = {
|
|
1373
1379
|
survival: [`Original`, `Heavy`, `NoRecovery`, `SuddenDeath`, `Practice`, `Light`],
|
|
1374
1380
|
border: [`Normal`, `Hard`, `SuddenDeath`, `Easy`],
|
|
@@ -1531,7 +1537,7 @@ const g_settings = {
|
|
|
1531
1537
|
settingWindowNum: 0,
|
|
1532
1538
|
|
|
1533
1539
|
preconditions: [`g_rootObj`, `g_headerObj`, `g_keyObj`, `g_scoreObj`, `g_workObj`,
|
|
1534
|
-
`g_detailObj`, `g_stateObj`, `g_attrObj`, `g_gaugeDefObj`, `g_gaugeSelObj`, `g_editorTmp`, `g_editorTmp2`],
|
|
1540
|
+
`g_detailObj`, `g_stateObj`, `g_attrObj`, `g_gaugeDefObj`, `g_gaugeHeaderObj`, `g_gaugeSelObj`, `g_editorTmp`, `g_editorTmp2`],
|
|
1535
1541
|
preconditionNum: 0,
|
|
1536
1542
|
preconditionNumSub: 0,
|
|
1537
1543
|
};
|
|
@@ -5328,6 +5334,7 @@ const g_root = {
|
|
|
5328
5334
|
get g_judgObj() { return g_judgObj },
|
|
5329
5335
|
get g_judgRanges() { return g_judgRanges },
|
|
5330
5336
|
get g_gaugeDefObj() { return g_gaugeDefObj },
|
|
5337
|
+
get g_gaugeHeaderObj() { return g_gaugeHeaderObj },
|
|
5331
5338
|
get g_gaugeSelObj() { return g_gaugeSelObj },
|
|
5332
5339
|
};
|
|
5333
5340
|
const getPathVal = _path => _path.split(`.`).reduce((o, k) => o?.[k], g_root);
|
package/js/lib/dosConverter.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2026/09/13
|
|
8
|
-
* Revised : 2026/09/
|
|
8
|
+
* Revised : 2026/09/25 (v51.0.2)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -1242,24 +1242,20 @@ const headerConvert = _dosObj => {
|
|
|
1242
1242
|
obj.keyLabels = [];
|
|
1243
1243
|
obj.difLabels = [];
|
|
1244
1244
|
obj.initSpeeds = [];
|
|
1245
|
-
obj.lifeBorders = [];
|
|
1246
|
-
obj.lifeRecoverys = [];
|
|
1247
|
-
obj.lifeDamages = [];
|
|
1248
|
-
obj.lifeInits = [];
|
|
1249
1245
|
obj.creatorNames = [];
|
|
1250
1246
|
obj.difficulties = [];
|
|
1251
1247
|
g_stateObj.scoreId = (g_stateObj.scoreId < difs.length ? g_stateObj.scoreId : 0);
|
|
1252
1248
|
|
|
1253
|
-
difs.forEach(dif => {
|
|
1249
|
+
difs.forEach((dif, scoreId) => {
|
|
1254
1250
|
const difDetails = dif.split(`,`);
|
|
1255
1251
|
const lifeData = (_type) =>
|
|
1256
1252
|
difDetails[difpos[_type]] || g_presetObj.gauge?.[_type] || g_gaugeDefObj.Original[_type];
|
|
1257
1253
|
|
|
1258
1254
|
// ライフ:ノルマ、回復量、ダメージ量、初期値の設定
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1255
|
+
g_gaugeHeaderObj[scoreId] = {
|
|
1256
|
+
Border: lifeData(`Border`), Recovery: lifeData(`Recovery`),
|
|
1257
|
+
Damage: lifeData(`Damage`), Init: lifeData(`Init`),
|
|
1258
|
+
};
|
|
1263
1259
|
|
|
1264
1260
|
// キー数
|
|
1265
1261
|
const keyLabel = difDetails[difpos.Key] || g_keyObj.initKeyLabel;
|
|
@@ -1285,10 +1281,7 @@ const headerConvert = _dosObj => {
|
|
|
1285
1281
|
obj.keyLabels = [g_keyObj.initKeyLabel];
|
|
1286
1282
|
obj.difLabels = [`Normal`];
|
|
1287
1283
|
obj.initSpeeds = [3.5];
|
|
1288
|
-
|
|
1289
|
-
obj.lifeRecoverys = [6];
|
|
1290
|
-
obj.lifeDamages = [40];
|
|
1291
|
-
obj.lifeInits = [25];
|
|
1284
|
+
g_gaugeHeaderObj[0] = { ...g_gaugeDefObj.Original };
|
|
1292
1285
|
obj.creatorNames = [obj.tuning];
|
|
1293
1286
|
obj.difficulties = [0];
|
|
1294
1287
|
}
|
|
@@ -2157,7 +2150,7 @@ const getGaugeSetting = (_dosObj, _name, _difLength, { scoreId = 0 } = {}) => {
|
|
|
2157
2150
|
|
|
2158
2151
|
/**
|
|
2159
2152
|
* 【参照用】g_gaugeOptionObjの旧プロパティを参照できるようにする関数
|
|
2160
|
-
* (initXXX/rcvXXX/dmgXXX/clearXXX
|
|
2153
|
+
* (initXXX/rcvXXX/dmgXXX/clearXXX/typeXXX/varXXX)
|
|
2161
2154
|
* - カスタムスクリプト側で既存ゲージの既定値を参照するための補助関数。本体からの呼び出しはない。
|
|
2162
2155
|
*/
|
|
2163
2156
|
const restoreLegacyGaugeReference = () => {
|
|
@@ -2175,6 +2168,22 @@ const restoreLegacyGaugeReference = () => {
|
|
|
2175
2168
|
});
|
|
2176
2169
|
};
|
|
2177
2170
|
|
|
2171
|
+
/**
|
|
2172
|
+
* 【参照用】g_headerObjの旧プロパティを参照可能にする関数
|
|
2173
|
+
* (lifeBorders/lifeRecoverys/lifeDamages/lifeInits)
|
|
2174
|
+
* - カスタムスクリプト側で既存ゲージの既定値を参照するための補助関数。本体からの呼び出しはない。
|
|
2175
|
+
*/
|
|
2176
|
+
const restoreLegacyGaugeHeaderReference = () => {
|
|
2177
|
+
[`Border`, `Recovery`, `Damage`, `Init`].forEach(type => {
|
|
2178
|
+
const legacyType = `life${type}s`;
|
|
2179
|
+
g_headerObj[legacyType] = [];
|
|
2180
|
+
|
|
2181
|
+
for (let j = 0; j < g_headerObj.difLabels.length; j++) {
|
|
2182
|
+
g_headerObj[legacyType].push(g_gaugeHeaderObj[j][type]);
|
|
2183
|
+
}
|
|
2184
|
+
})
|
|
2185
|
+
};
|
|
2186
|
+
|
|
2178
2187
|
/**
|
|
2179
2188
|
* 【反映用】カスタムスクリプトが旧形式で作った個別ゲージ設定
|
|
2180
2189
|
* - g_gaugeOptionObj[`gauge${_name}s`] = { lifeBorders, lifeRecoverys, lifeDamages, lifeInits }
|
package/js/lib/settings.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2026/09/13
|
|
8
|
-
* Revised : 2026/09/
|
|
8
|
+
* Revised : 2026/09/25 (v51.0.2)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -1422,7 +1422,7 @@ const setDifficulty = (_chartChangeFlg) => {
|
|
|
1422
1422
|
);
|
|
1423
1423
|
|
|
1424
1424
|
// ゲージ設定及びカーソル位置調整
|
|
1425
|
-
setGauge(0, !
|
|
1425
|
+
setGauge(0, !g_initialFlg);
|
|
1426
1426
|
|
|
1427
1427
|
// 速度、スクロール、アシスト設定のカーソル位置調整
|
|
1428
1428
|
if (_chartChangeFlg) {
|
|
@@ -2204,7 +2204,7 @@ const setGauge = (() => {
|
|
|
2204
2204
|
* @param {boolean} _gaugeInitFlg true時は前回選択していたゲージ名を引き継がず、配列の先頭を強制的に使う
|
|
2205
2205
|
*/
|
|
2206
2206
|
const resolveGaugeType = (_scrollNum, _gaugeInitFlg) => {
|
|
2207
|
-
applyLifeModeSwitch(
|
|
2207
|
+
applyLifeModeSwitch(g_gaugeHeaderObj[g_stateObj.scoreId].Border);
|
|
2208
2208
|
g_gaugeType = (currentGaugeSel?.__order?.length > 0 ? C_LFE_CUSTOM : g_stateObj.lifeMode);
|
|
2209
2209
|
|
|
2210
2210
|
g_settings.gauges = structuredClone(g_gaugeType === C_LFE_CUSTOM
|
|
@@ -2244,10 +2244,12 @@ const setGauge = (() => {
|
|
|
2244
2244
|
);
|
|
2245
2245
|
if (getGaugeRoot(g_stateObj.gauge) !== firstOverridableRoot) return;
|
|
2246
2246
|
}
|
|
2247
|
-
|
|
2248
|
-
|
|
2247
|
+
const header = g_gaugeHeaderObj[g_stateObj.scoreId];
|
|
2248
|
+
applyLifeModeSwitch(header.Border);
|
|
2249
|
+
g_stateObj.lifeInit = getGaugeCalc(header.Init, g_stateObj.lifeInit);
|
|
2250
|
+
g_stateObj.lifeRcv = getGaugeCalc(header.Recovery, g_stateObj.lifeRcv)
|
|
2249
2251
|
* (hasVal(def.deriveRecoveryFrom) ? 2 : 1);
|
|
2250
|
-
g_stateObj.lifeDmg = getGaugeCalc(
|
|
2252
|
+
g_stateObj.lifeDmg = getGaugeCalc(header.Damage, g_stateObj.lifeDmg);
|
|
2251
2253
|
};
|
|
2252
2254
|
|
|
2253
2255
|
/**
|