danoniplus 48.5.8 → 48.5.9

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 CHANGED
@@ -4,12 +4,12 @@
4
4
  *
5
5
  * Source by tickle
6
6
  * Created : 2018/10/08
7
- * Revised : 2026/08/19
7
+ * Revised : 2026/09/13
8
8
  *
9
9
  * https://github.com/cwtickle/danoniplus
10
10
  */
11
- const g_version = `Ver 48.5.8`;
12
- const g_revisedDate = `2026/08/19`;
11
+ const g_version = `Ver 48.5.9`;
12
+ const g_revisedDate = `2026/09/13`;
13
13
 
14
14
  // カスタム用バージョン (danoni_custom.js 等で指定可)
15
15
  let g_localVersion = ``;
@@ -6186,7 +6186,7 @@ const pauseBGM = () => {
6186
6186
  g_audioForMS.load();
6187
6187
  }
6188
6188
  }
6189
- [`bgmLooped`, `bgmFadeIn`, `bgmFadeOut`].forEach(id => {
6189
+ [`bgmLooped`, `bgmFadeIn`, `bgmFadeOut`, `bgmRestart`].forEach(id => {
6190
6190
  if (g_stateObj[id]) {
6191
6191
  clearTimeout(g_stateObj[id]);
6192
6192
  g_stateObj[id] = null;
@@ -6311,7 +6311,8 @@ const playBGM = async (_num, _currentLoopNum = g_settings.musicLoopNum) => {
6311
6311
  g_audioForMS.currentTime = musicStart;
6312
6312
 
6313
6313
  if (isTitle()) {
6314
- setTimeout(() => {
6314
+ g_stateObj.bgmRestart = setTimeout(() => {
6315
+ g_stateObj.bgmRestart = null;
6315
6316
  fadeIn();
6316
6317
  if (encodeFlg) repeatBGM();
6317
6318
  }, FADE_DELAY_MS);
@@ -6620,8 +6621,8 @@ const makeWarningWindow = (_text = ``, { resetFlg = false, backBtnUse = false }
6620
6621
  * @param {string} [object._textColor='#000066']
6621
6622
  * @param {string} [object._pointerEvents=C_DIS_NONE]
6622
6623
  */
6623
- const makeInfoWindow = (_text, _animationName = ``, { _backColor = `#ccccff`, _textColor = `#000066`, _pointerEvents = C_DIS_NONE } = {}) => {
6624
- const lblWarning = setWindowStyle(`<p>${_text}</p>`, _backColor, _textColor, C_ALIGN_CENTER);
6624
+ const makeInfoWindow = (_text, _animationName = ``, { _backColor = `#ccccff`, _textColor = `#000066`, _pointerEvents = C_DIS_NONE, _x = g_btnX(), _y = 0 } = {}) => {
6625
+ const lblWarning = setWindowStyle(`<p>${_text}</p>`, _backColor, _textColor, C_ALIGN_CENTER, { _x, _y });
6625
6626
  lblWarning.style.pointerEvents = _pointerEvents;
6626
6627
 
6627
6628
  if (_animationName !== ``) {
@@ -10780,7 +10781,7 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
10780
10781
  kcMsg2.style.fontSize = wUnit(getFontSize2(kcMsg2.textContent, g_btnWidth()));
10781
10782
  if (_reloadFlg) {
10782
10783
  colorPickSprite.style.display = isDefault ? C_DIS_NONE : C_DIS_INHERIT;
10783
- g_keycons.colorCursorNum = g_keycons.colorCursorNum % Math.ceil(g_headerObj.setColor.length / g_limitObj.kcColorPickerNum);
10784
+ g_keycons.colorCursorNum = g_keycons.colorCursorNum % Math.ceil(g_dfColorObj.setColorInit.length / g_limitObj.kcColorPickerNum);
10784
10785
  changeColorPickers();
10785
10786
  }
10786
10787
  };
@@ -10808,14 +10809,14 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
10808
10809
 
10809
10810
  // ColorPickerの切替
10810
10811
  createCss2Button(`lnkColorR`, `[${g_keycons.colorCursorNum + 1} /`, () => {
10811
- g_keycons.colorCursorNum = (g_keycons.colorCursorNum + 1) % Math.ceil(g_headerObj.setColor.length / g_limitObj.kcColorPickerNum);
10812
+ g_keycons.colorCursorNum = (g_keycons.colorCursorNum + 1) % Math.ceil(g_dfColorObj.setColorInit.length / g_limitObj.kcColorPickerNum);
10812
10813
  changeColorPickers();
10813
10814
  }, g_lblPosObj.lnkColorR, g_cssObj.button_Start),
10814
10815
 
10815
10816
  // 矢印の配色をフリーズアローへ反映
10816
10817
  createCss2Button(`lnkColorCopy`, `↓]`, () => {
10817
10818
  if (window.confirm(g_msgObj.colorCopyConfirm)) {
10818
- for (let j = 0; j < g_headerObj.setColor.length; j++) {
10819
+ for (let j = 0; j < g_dfColorObj.setColorInit.length; j++) {
10819
10820
  g_headerObj.frzColor[j] = g_headerObj[`frzColor${g_colorType}`][j] =
10820
10821
  fillArray(g_headerObj[`frzColor${g_colorType}`][j].length, g_headerObj[`setColor${g_colorType}`][j]);
10821
10822
  }
@@ -10986,7 +10987,10 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
10986
10987
  g_currentk = 0;
10987
10988
  g_prevKey = 0;
10988
10989
  }, {
10989
- ...g_lblPosObj.btnKcBack, resetFunc: () => g_moveSettingWindow(false),
10990
+ ...g_lblPosObj.btnKcBack, resetFunc: () => {
10991
+ keyconfigKeyboardPreview.dispose();
10992
+ g_moveSettingWindow(false);
10993
+ },
10990
10994
  }, g_cssObj.button_Back),
10991
10995
 
10992
10996
  createDivCss2Label(`lblPattern`, `${g_lblNameObj.KeyPattern}: ${g_keyObj.currentPtn === -1 ?
@@ -17445,15 +17449,20 @@ const resultInit = () => {
17445
17449
  } else {
17446
17450
  // Canvas の内容を PNG 画像として取得
17447
17451
  canvas.toBlob(async blob => {
17448
- await navigator.clipboard.write([
17449
- new ClipboardItem({
17450
- 'image/png': blob
17451
- })
17452
- ]);
17452
+ try {
17453
+ if (blob === null) {
17454
+ throw new Error(`Failed to create result image blob.`);
17455
+ }
17456
+ await navigator.clipboard.write([
17457
+ new ClipboardItem({ 'image/png': blob })
17458
+ ]);
17459
+ tmpDiv.removeChild(canvas);
17460
+ divRoot.removeChild(tmpDiv);
17461
+ makeInfoWindow(_msg, `leftToRightFade`);
17462
+ } catch {
17463
+ viewResultImage();
17464
+ }
17453
17465
  });
17454
- tmpDiv.removeChild(canvas);
17455
- divRoot.removeChild(tmpDiv);
17456
- makeInfoWindow(_msg, `leftToRightFade`);
17457
17466
  }
17458
17467
 
17459
17468
  } catch (err) {
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Source by tickle
7
7
  * Created : 2019/11/19
8
- * Revised : 2026/08/01 (v48.5.6)
8
+ * Revised : 2026/09/13 (v48.5.9)
9
9
  *
10
10
  * https://github.com/cwtickle/danoniplus
11
11
  */
@@ -1215,6 +1215,7 @@ const g_stateObj = {
1215
1215
  bgmLooped: null,
1216
1216
  bgmFadeIn: null,
1217
1217
  bgmFadeOut: null,
1218
+ bgmRestart: null,
1218
1219
  bgmTimeupdateEvtId: null,
1219
1220
  bgmMuteFlg: false,
1220
1221
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "48.5.8",
3
+ "version": "48.5.9",
4
4
  "description": "Dancing☆Onigiri (CW Edition) - Web-based Rhythm Game",
5
5
  "main": "./js/danoni_main.js",
6
6
  "jsdelivr": "./js/danoni_main.js",