danoniplus 49.6.1 → 49.6.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 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 49.6.1`;
12
- const g_revisedDate = `2026/08/19`;
11
+ const g_version = `Ver 49.6.2`;
12
+ const g_revisedDate = `2026/09/13`;
13
13
 
14
14
  // カスタム用バージョン (danoni_custom.js 等で指定可)
15
15
  let g_localVersion = ``;
@@ -6295,7 +6295,7 @@ const pauseBGM = () => {
6295
6295
  g_audioForMS.load();
6296
6296
  }
6297
6297
  }
6298
- [`bgmLooped`, `bgmFadeIn`, `bgmFadeOut`].forEach(id => {
6298
+ [`bgmLooped`, `bgmFadeIn`, `bgmFadeOut`, `bgmRestart`].forEach(id => {
6299
6299
  if (g_stateObj[id]) {
6300
6300
  clearTimeout(g_stateObj[id]);
6301
6301
  g_stateObj[id] = null;
@@ -6420,7 +6420,8 @@ const playBGM = async (_num, _currentLoopNum = g_settings.musicLoopNum) => {
6420
6420
  g_audioForMS.currentTime = musicStart;
6421
6421
 
6422
6422
  if (isTitle()) {
6423
- setTimeout(() => {
6423
+ g_stateObj.bgmRestart = setTimeout(() => {
6424
+ g_stateObj.bgmRestart = null;
6424
6425
  fadeIn();
6425
6426
  if (encodeFlg) repeatBGM();
6426
6427
  }, FADE_DELAY_MS);
@@ -6729,8 +6730,8 @@ const makeWarningWindow = (_text = ``, { resetFlg = false, backBtnUse = false }
6729
6730
  * @param {string} [object._textColor='#000066']
6730
6731
  * @param {string} [object._pointerEvents=C_DIS_NONE]
6731
6732
  */
6732
- const makeInfoWindow = (_text, _animationName = ``, { _backColor = `#ccccff`, _textColor = `#000066`, _pointerEvents = C_DIS_NONE } = {}) => {
6733
- const lblWarning = setWindowStyle(`<p>${_text}</p>`, _backColor, _textColor, C_ALIGN_CENTER);
6733
+ const makeInfoWindow = (_text, _animationName = ``, { _backColor = `#ccccff`, _textColor = `#000066`, _pointerEvents = C_DIS_NONE, _x = g_btnX(), _y = 0 } = {}) => {
6734
+ const lblWarning = setWindowStyle(`<p>${_text}</p>`, _backColor, _textColor, C_ALIGN_CENTER, { _x, _y });
6734
6735
  lblWarning.style.pointerEvents = _pointerEvents;
6735
6736
 
6736
6737
  if (_animationName !== ``) {
@@ -11043,7 +11044,7 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
11043
11044
  kcMsg2.style.fontSize = wUnit(getFontSize2(kcMsg2.textContent, g_btnWidth()));
11044
11045
  if (_reloadFlg) {
11045
11046
  colorPickSprite.style.display = isDefault ? C_DIS_NONE : C_DIS_INHERIT;
11046
- g_keycons.colorCursorNum = g_keycons.colorCursorNum % Math.ceil(g_headerObj.setColor.length / g_limitObj.kcColorPickerNum);
11047
+ g_keycons.colorCursorNum = g_keycons.colorCursorNum % Math.ceil(g_dfColorObj.setColorInit.length / g_limitObj.kcColorPickerNum);
11047
11048
  changeColorPickers();
11048
11049
  }
11049
11050
  };
@@ -11071,14 +11072,14 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
11071
11072
 
11072
11073
  // ColorPickerの切替
11073
11074
  createCss2Button(`lnkColorR`, `[${g_keycons.colorCursorNum + 1} /`, () => {
11074
- g_keycons.colorCursorNum = (g_keycons.colorCursorNum + 1) % Math.ceil(g_headerObj.setColor.length / g_limitObj.kcColorPickerNum);
11075
+ g_keycons.colorCursorNum = (g_keycons.colorCursorNum + 1) % Math.ceil(g_dfColorObj.setColorInit.length / g_limitObj.kcColorPickerNum);
11075
11076
  changeColorPickers();
11076
11077
  }, g_lblPosObj.lnkColorR, g_cssObj.button_Start),
11077
11078
 
11078
11079
  // 矢印の配色をフリーズアローへ反映
11079
11080
  createCss2Button(`lnkColorCopy`, `↓]`, () => {
11080
11081
  if (window.confirm(g_msgObj.colorCopyConfirm)) {
11081
- for (let j = 0; j < g_headerObj.setColor.length; j++) {
11082
+ for (let j = 0; j < g_dfColorObj.setColorInit.length; j++) {
11082
11083
  g_headerObj.frzColor[j] = g_headerObj[`frzColor${g_colorType}`][j] =
11083
11084
  fillArray(g_headerObj[`frzColor${g_colorType}`][j].length, g_headerObj[`setColor${g_colorType}`][j]);
11084
11085
  }
@@ -11249,7 +11250,10 @@ const keyConfigInit = (_kcType = g_kcType, _initFlg = false) => {
11249
11250
  g_currentk = 0;
11250
11251
  g_prevKey = 0;
11251
11252
  }, {
11252
- ...g_lblPosObj.btnKcBack, resetFunc: () => g_moveSettingWindow(false),
11253
+ ...g_lblPosObj.btnKcBack, resetFunc: () => {
11254
+ keyconfigKeyboardPreview.dispose();
11255
+ g_moveSettingWindow(false);
11256
+ },
11253
11257
  }, g_cssObj.button_Back),
11254
11258
 
11255
11259
  createDivCss2Label(`lblPattern`, `${g_lblNameObj.KeyPattern}: ${g_keyObj.currentPtn === -1 ?
@@ -17959,15 +17963,20 @@ const resultInit = () => {
17959
17963
  } else {
17960
17964
  // Canvas の内容を PNG 画像として取得
17961
17965
  canvas.toBlob(async blob => {
17962
- await navigator.clipboard.write([
17963
- new ClipboardItem({
17964
- 'image/png': blob
17965
- })
17966
- ]);
17966
+ try {
17967
+ if (blob === null) {
17968
+ throw new Error(`Failed to create result image blob.`);
17969
+ }
17970
+ await navigator.clipboard.write([
17971
+ new ClipboardItem({ 'image/png': blob })
17972
+ ]);
17973
+ tmpDiv.removeChild(canvas);
17974
+ divRoot.removeChild(tmpDiv);
17975
+ makeInfoWindow(_msg, `leftToRightFade`);
17976
+ } catch {
17977
+ viewResultImage();
17978
+ }
17967
17979
  });
17968
- tmpDiv.removeChild(canvas);
17969
- divRoot.removeChild(tmpDiv);
17970
- makeInfoWindow(_msg, `leftToRightFade`);
17971
17980
  }
17972
17981
 
17973
17982
  } catch (err) {
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Source by tickle
7
7
  * Created : 2019/11/19
8
- * Revised : 2026/08/16 (v49.6.0)
8
+ * Revised : 2026/09/13 (v49.6.2)
9
9
  *
10
10
  * https://github.com/cwtickle/danoniplus
11
11
  */
@@ -1221,6 +1221,7 @@ const g_stateObj = {
1221
1221
  bgmLooped: null,
1222
1222
  bgmFadeIn: null,
1223
1223
  bgmFadeOut: null,
1224
+ bgmRestart: null,
1224
1225
  bgmTimeupdateEvtId: null,
1225
1226
  bgmMuteFlg: false,
1226
1227
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "49.6.1",
3
+ "version": "49.6.2",
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",