danoniplus 39.8.12 → 39.8.14

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.
Files changed (2) hide show
  1. package/js/danoni_main.js +38 -25
  2. 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/01/24
7
+ * Revised : 2026/02/24
8
8
  *
9
9
  * https://github.com/cwtickle/danoniplus
10
10
  */
11
- const g_version = `Ver 39.8.12`;
12
- const g_revisedDate = `2026/01/24`;
11
+ const g_version = `Ver 39.8.14`;
12
+ const g_revisedDate = `2026/02/24`;
13
13
 
14
14
  // カスタム用バージョン (danoni_custom.js 等で指定可)
15
15
  let g_localVersion = ``;
@@ -6394,13 +6394,16 @@ const createLblSetting = (_settingName, _adjY = 0, _settingLabel = _settingName)
6394
6394
  };
6395
6395
 
6396
6396
  /**
6397
- * 設定名の置き換え処理
6397
+ * 設定名の置き換え処理(未指定時は原則g_lblNameObjの値を使用、明示的な指定がある場合のみ元の名前を返却)
6398
6398
  * @param {string} _name
6399
6399
  * @returns {string}
6400
6400
  */
6401
6401
  const getStgDetailName = _name => {
6402
- return g_lblNameObj[`u_${_name}`] !== undefined &&
6403
- (g_presetObj.lblRenames === undefined || g_presetObj.lblRenames[g_currentPage]) ? g_lblNameObj[`u_${_name}`] : _name;
6402
+ return g_lblNameObj[`u_${_name}`] !== undefined && (
6403
+ g_presetObj.lblRenames === undefined ||
6404
+ g_presetObj.lblRenames[g_currentPage] === undefined ||
6405
+ g_presetObj.lblRenames[g_currentPage]
6406
+ ) ? g_lblNameObj[`u_${_name}`] : _name;
6404
6407
  };
6405
6408
 
6406
6409
  /**
@@ -6905,7 +6908,7 @@ const createSettingsDisplayWindow = _sprite => {
6905
6908
  const prevDisp = g_settings.displayNum[_name];
6906
6909
  const [prevBarColor, prevBgColor] = [cssBarList[prevDisp], cssBgList[prevDisp]];
6907
6910
 
6908
- g_settings.displayNum[_name] = (prevDisp + _scrollNum) % (_filterFlg ? 2 : list.length);
6911
+ g_settings.displayNum[_name] = nextPos(prevDisp, _scrollNum, _filterFlg ? 2 : list.length);
6909
6912
  const nextDisp = g_settings.displayNum[_name];
6910
6913
  const [nextBarColor, nextBgColor] = [cssBarList[nextDisp], cssBgList[nextDisp]];
6911
6914
 
@@ -12554,6 +12557,10 @@ const resultInit = () => {
12554
12557
  const withOptions = (_flg, _defaultSet, _displayText = _flg) =>
12555
12558
  (_flg !== _defaultSet ? getStgDetailName(_displayText) : ``);
12556
12559
 
12560
+ const withDisplays = (_flg, _defaultSet, _displayText = _flg) =>
12561
+ (_flg !== _defaultSet
12562
+ ? getStgDetailName(_displayText) + (_flg === C_FLG_OFF ? `` : ` : ${getStgDetailName(_flg)}`) : ``);
12563
+
12557
12564
  // 譜面名の組み立て処理 (Ex: 9Akey / Normal-Leftless (maker) [X-Mirror])
12558
12565
  const keyUnitName = getStgDetailName(getKeyUnitName(g_keyObj.currentKey));
12559
12566
  const difDatas = [
@@ -12585,34 +12592,40 @@ const resultInit = () => {
12585
12592
 
12586
12593
  // Display設定の組み立て処理 (Ex: Step : FlatBar, Judge, Life : OFF)
12587
12594
  let displayData = [
12588
- withOptions(g_stateObj.d_stepzone, C_FLG_ON, g_lblNameObj.rd_StepZone +
12589
- `${g_stateObj.d_stepzone === C_FLG_OFF ? `` : ` : ${g_stateObj.d_stepzone}`}`),
12590
- withOptions(g_stateObj.d_judgment, C_FLG_ON, g_lblNameObj.rd_Judgment),
12591
- withOptions(g_stateObj.d_fastslow, C_FLG_ON, g_lblNameObj.rd_FastSlow),
12592
- withOptions(g_stateObj.d_lifegauge, C_FLG_ON, g_lblNameObj.rd_LifeGauge),
12593
- withOptions(g_stateObj.d_score, C_FLG_ON, g_lblNameObj.rd_Score),
12594
- withOptions(g_stateObj.d_musicinfo, C_FLG_ON, g_lblNameObj.rd_MusicInfo),
12595
- withOptions(g_stateObj.d_filterline, C_FLG_ON, g_lblNameObj.rd_FilterLine),
12595
+ withDisplays(g_stateObj.d_stepzone, C_FLG_ON, g_lblNameObj.rd_StepZone),
12596
+ withDisplays(g_stateObj.d_judgment, C_FLG_ON, g_lblNameObj.rd_Judgment),
12597
+ withDisplays(g_stateObj.d_fastslow, C_FLG_ON, g_lblNameObj.rd_FastSlow),
12598
+ withDisplays(g_stateObj.d_lifegauge, C_FLG_ON, g_lblNameObj.rd_LifeGauge),
12599
+ withDisplays(g_stateObj.d_score, C_FLG_ON, g_lblNameObj.rd_Score),
12600
+ withDisplays(g_stateObj.d_musicinfo, C_FLG_ON, g_lblNameObj.rd_MusicInfo),
12601
+ withDisplays(g_stateObj.d_filterline, C_FLG_ON, g_lblNameObj.rd_FilterLine),
12596
12602
  ].filter(value => value !== ``).join(`, `);
12597
12603
  if (displayData === ``) {
12598
12604
  displayData = `All Visible`;
12599
12605
  } else {
12600
- if (!displayData.includes(`,`) && g_stateObj.d_stepzone !== C_FLG_OFF) {
12601
- } else {
12602
- displayData += ` : OFF`;
12606
+ // 表示設定のOFF項目を末尾にまとめる
12607
+ const displayList = displayData.split(`, `).sort((a, b) => b.includes(`:`) - a.includes(`:`));
12608
+ displayData = displayList.join(`, `);
12609
+ if (!displayList.at(-1).includes(`:`)) {
12610
+ displayData += ` : ${getStgDetailName(C_FLG_OFF)}`;
12603
12611
  }
12604
12612
  }
12605
12613
 
12606
12614
  let display2Data = [
12607
- withOptions(g_stateObj.d_speed, C_FLG_ON, g_lblNameObj.rd_Speed),
12608
- withOptions(g_stateObj.d_color, C_FLG_ON, g_lblNameObj.rd_Color),
12609
- withOptions(g_stateObj.d_lyrics, C_FLG_ON, g_lblNameObj.rd_Lyrics),
12610
- withOptions(g_stateObj.d_background, C_FLG_ON, g_lblNameObj.rd_Background),
12611
- withOptions(g_stateObj.d_arroweffect, C_FLG_ON, g_lblNameObj.rd_ArrowEffect),
12612
- withOptions(g_stateObj.d_special, C_FLG_ON, g_lblNameObj.rd_Special),
12615
+ withDisplays(g_stateObj.d_speed, C_FLG_ON, g_lblNameObj.rd_Speed),
12616
+ withDisplays(g_stateObj.d_color, C_FLG_ON, g_lblNameObj.rd_Color),
12617
+ withDisplays(g_stateObj.d_lyrics, C_FLG_ON, g_lblNameObj.rd_Lyrics),
12618
+ withDisplays(g_stateObj.d_background, C_FLG_ON, g_lblNameObj.rd_Background),
12619
+ withDisplays(g_stateObj.d_arroweffect, C_FLG_ON, g_lblNameObj.rd_ArrowEffect),
12620
+ withDisplays(g_stateObj.d_special, C_FLG_ON, g_lblNameObj.rd_Special),
12613
12621
  ].filter(value => value !== ``).join(`, `);
12614
12622
  if (display2Data !== ``) {
12615
- display2Data += ` : OFF`;
12623
+ // 表示設定のOFF項目を末尾にまとめる
12624
+ const display2List = display2Data.split(`, `).sort((a, b) => b.includes(`:`) - a.includes(`:`));
12625
+ display2Data = display2List.join(`, `);
12626
+ if (!display2List.at(-1).includes(`:`)) {
12627
+ display2Data += ` : ${getStgDetailName(C_FLG_OFF)}`;
12628
+ }
12616
12629
  }
12617
12630
 
12618
12631
  const [lblRX, dataRX] = [20, 60];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "39.8.12",
3
+ "version": "39.8.14",
4
4
  "description": "Dancing☆Onigiri (CW Edition) - Web-based Rhythm Game",
5
5
  "main": "index.js",
6
6
  "scripts": {