danoniplus 26.7.0 → 27.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.
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Source by tickle
7
7
  * Created : 2019/11/19
8
- * Revised : 2022/03/12 (v26.7.0)
8
+ * Revised : 2022/03/27 (v27.2.0)
9
9
  *
10
10
  * https://github.com/cwtickle/danoniplus
11
11
  */
@@ -28,6 +28,19 @@ const C_LBL_BASICFONT = `"Meiryo UI", sans-serif`;
28
28
 
29
29
  const C_BTN_HEIGHT = 50;
30
30
  const C_LNK_HEIGHT = 30;
31
+ const C_LEN_SETLBL_LEFT = 160;
32
+ const C_LEN_SETLBL_WIDTH = 210;
33
+ const C_LEN_DIFSELECTOR_WIDTH = 250;
34
+ const C_LEN_DIFCOVER_WIDTH = 110;
35
+ const C_LEN_SETLBL_HEIGHT = 23;
36
+ const C_SIZ_SETLBL = 17;
37
+ const C_LEN_SETDIFLBL_HEIGHT = 25;
38
+ const C_SIZ_SETDIFLBL = 17;
39
+ const C_LEN_SETMINI_WIDTH = 40;
40
+ const C_SIZ_SETMINI = 18;
41
+ const C_SIZ_DIFSELECTOR = 14;
42
+ const C_SIZ_MAIN = 14;
43
+ const C_SIZ_MUSIC_TITLE = 13;
31
44
 
32
45
  // スプライト(ムービークリップ相当)のルート
33
46
  const C_SPRITE_ROOT = `divRoot`;
@@ -58,6 +71,60 @@ const C_TYP_FUNCTION = `function`;
58
71
  const C_TYP_SWITCH = `switch`;
59
72
  const C_TYP_CALC = `calc`;
60
73
 
74
+ // ウィンドウサイズ
75
+ let [g_sWidth, g_sHeight] = [
76
+ setVal($id(`canvas-frame`).width, 500, C_TYP_FLOAT), setVal($id(`canvas-frame`).height, 500, C_TYP_FLOAT)
77
+ ];
78
+ $id(`canvas-frame`).width = `${g_sWidth}px`;
79
+ $id(`canvas-frame`).margin = `auto`;
80
+
81
+ // 固定ウィンドウサイズ
82
+ const g_windowObj = {
83
+ divRoot: { margin: `auto`, letterSpacing: `normal` },
84
+ divBack: { background: `linear-gradient(#000000, #222222)` },
85
+
86
+ optionSprite: { w: 450, h: 325 },
87
+ difList: { x: 165, y: 65, w: 280, h: 255, overflow: `auto` },
88
+ difCover: { x: 25, y: 65, w: 140, h: 255, overflow: `auto`, opacity: 0.95 },
89
+
90
+ scoreDetail: { x: 20, y: 90, w: 420, h: 230, visibility: `hidden` },
91
+ detailObj: { w: 420, h: 230, visibility: `hidden` },
92
+
93
+ displaySprite: { x: 25, y: 30, h: C_LEN_SETLBL_HEIGHT * 5 },
94
+ keyconSprite: { overflow: `auto` },
95
+ colorPickSprite: { x: 0, y: 90, w: 50, h: 280 },
96
+
97
+ loader: { h: 10, backgroundColor: `#333333` },
98
+
99
+ playDataWindow: { w: 450, h: 110 },
100
+ resultWindow: { w: 400, h: 210 },
101
+ };
102
+
103
+ // 可変部分のウィンドウサイズを更新
104
+ const updateWindowSiz = _ => {
105
+ Object.assign(g_windowObj.optionSprite, { x: (g_sWidth - 450) / 2, y: 65 + (g_sHeight - 500) / 2 });
106
+ Object.assign(g_windowObj.displaySprite, { w: (g_sWidth - 450) / 2 });
107
+ Object.assign(g_windowObj.keyconSprite, { y: 88 + (g_sHeight - 500) / 2, h: g_sHeight });
108
+ Object.assign(g_windowObj.loader, { y: g_sHeight - 10 });
109
+ Object.assign(g_windowObj.playDataWindow, { x: g_sWidth / 2 - 225, y: 70 + (g_sHeight - 500) / 2 });
110
+ Object.assign(g_windowObj.resultWindow, { x: g_sWidth / 2 - 200, y: 185 + (g_sHeight - 500) / 2 });
111
+ };
112
+
113
+ // ウィンドウ位置
114
+ const g_windowAlign = {
115
+ left: _ => {
116
+ $id(`canvas-frame`).marginLeft = `0px`;
117
+ $id(`canvas-frame`).marginRight = `auto`;
118
+ },
119
+ center: _ => {
120
+ $id(`canvas-frame`).margin = `auto`;
121
+ },
122
+ right: _ => {
123
+ $id(`canvas-frame`).marginLeft = `auto`;
124
+ $id(`canvas-frame`).marginRight = `0px`;
125
+ },
126
+ }
127
+
61
128
  const g_imgObj = {};
62
129
 
63
130
  // 画像ファイル
@@ -223,20 +290,6 @@ const C_BLOCK_KEYS = [
223
290
  ];
224
291
 
225
292
  /** 設定・オプション画面用共通 */
226
- const C_LEN_SETLBL_LEFT = 160;
227
- const C_LEN_SETLBL_WIDTH = 210;
228
- const C_LEN_DIFSELECTOR_WIDTH = 250;
229
- const C_LEN_DIFCOVER_WIDTH = 110;
230
- const C_LEN_SETLBL_HEIGHT = 23;
231
- const C_SIZ_SETLBL = 17;
232
- const C_LEN_SETDIFLBL_HEIGHT = 25;
233
- const C_SIZ_SETDIFLBL = 17;
234
- const C_LEN_SETMINI_WIDTH = 40;
235
- const C_SIZ_SETMINI = 18;
236
- const C_SIZ_DIFSELECTOR = 14;
237
- const C_SIZ_MAIN = 14;
238
- const C_SIZ_MUSIC_TITLE = 13;
239
-
240
293
  const C_LEN_GRAPH_WIDTH = 286;
241
294
  const C_LEN_GRAPH_HEIGHT = 226;
242
295
  const C_CLR_SPEEDGRAPH_SPEED = `#cc3333`;
@@ -563,10 +616,6 @@ let g_storeSettings = [`appearance`, `opacity`, `d_stepzone`, `d_judgment`, `d_f
563
616
 
564
617
  let g_canDisabledSettings = [`motion`, `scroll`, `shuffle`, `autoPlay`, `gauge`, `appearance`];
565
618
 
566
- // サイズ(後で指定)
567
- let g_sWidth;
568
- let g_sHeight;
569
-
570
619
  const g_hidSudObj = {
571
620
  filterPos: 10,
572
621
 
@@ -2231,7 +2280,19 @@ const g_keyObj = {
2231
2280
  'Right': [0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1],
2232
2281
  },
2233
2282
 
2234
- dummy: 0 // ダミー(カンマ抜け落ち防止)
2283
+ // 横幅最小値
2284
+ minWidth: 500,
2285
+ minWidthDefault: 600,
2286
+
2287
+ minWidth5: 500,
2288
+ minWidth7i: 550,
2289
+ minWidth9A: 650,
2290
+ minWidth11i: 650,
2291
+ minWidth13: 650,
2292
+ minWidth16i: 650,
2293
+ minWidth17: 800,
2294
+ minWidth23: 900,
2295
+
2235
2296
  };
2236
2297
 
2237
2298
  // デフォルト配列のコピー (g_keyObj.aaa_X から g_keyObj.aaa_Xd を作成)
@@ -2309,88 +2370,94 @@ const g_dfColorObj = {
2309
2370
  setColorInit: [`#6666ff`, `#99ffff`, `#ffffff`, `#ffff99`, `#ff9966`],
2310
2371
  setShadowColorInit: [``, ``, ``, ``, ``],
2311
2372
 
2312
- setColorType1: [`#6666ff`, `#99ffff`, `#ffffff`, `#ffff99`, `#ff9966`],
2313
- setColorType2: [`#ffffff`, `#9999ff`, `#99ccff`, `#ffccff`, `#ff9999`],
2314
- setColorType3: [`#ccccff`, `#ccffff`, `#ffffff`, `#ffffcc`, `#ffcc99`],
2315
- setColorType4: [`#ffffff`, `#ccccff`, `#99ccff`, `#ffccff`, `#ffcccc`],
2316
-
2317
- setShadowColorType1: [`#00000080`, `#00000080`, `#00000080`, `#00000080`, `#00000080`],
2318
- setShadowColorType2: [`#00000080`, `#00000080`, `#00000080`, `#00000080`, `#00000080`],
2319
- setShadowColorType3: [`#6666ff60`, `#33999960`, `#66666660`, `#99993360`, `#cc663360`],
2320
- setShadowColorType4: [`#66666660`, `#6666ff60`, `#3366cc60`, `#99339960`, `#99333360`],
2321
-
2322
2373
  // フリーズアロー初期色情報
2323
2374
  frzColorInit: [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2324
2375
  frzShadowColorInit: [``, ``, ``, ``],
2325
- frzColorType1: [
2326
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2327
- [`#00ffcc`, `#339999`, `#cccc33`, `#999933`],
2328
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2329
- [`#cc99ff`, `#9966ff`, `#cccc33`, `#999933`],
2330
- [`#ff99cc`, `#ff6699`, `#cccc33`, `#999933`]
2331
- ],
2332
- frzColorType2: [
2333
- [`#cccccc`, `#999999`, `#cccc33`, `#999933`],
2334
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2335
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2336
- [`#cc99cc`, `#ff99ff`, `#cccc33`, `#999933`],
2337
- [`#ff6666`, `#ff9999`, `#cccc33`, `#999933`]
2338
- ],
2339
- frzColorType3: [
2340
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2341
- [`#00ffcc`, `#339999`, `#cccc33`, `#999933`],
2342
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2343
- [`#cc99ff`, `#9966ff`, `#cccc33`, `#999933`],
2344
- [`#ff99cc`, `#ff6699`, `#cccc33`, `#999933`]
2345
- ],
2346
- frzColorType4: [
2347
- [`#cccccc`, `#999999`, `#cccc33`, `#999933`],
2348
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2349
- [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2350
- [`#cc99cc`, `#ff99ff`, `#cccc33`, `#999933`],
2351
- [`#ff6666`, `#ff9999`, `#cccc33`, `#999933`]
2352
- ],
2376
+
2353
2377
  };
2354
2378
 
2355
- const g_dfColorLightObj = {
2356
- setColorType1: [`#6666ff`, `#66cccc`, `#000000`, `#999966`, `#cc6600`],
2357
- setColorType2: [`#000000`, `#6666ff`, `#cc0000`, `#cc99cc`, `#cc3366`],
2358
- setColorType3: [`#000000`, `#000000`, `#000000`, `#000000`, `#000000`],
2359
- setColorType4: [`#000000`, `#000000`, `#000000`, `#000000`, `#000000`],
2360
-
2361
- setShadowColorType1: [`#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`],
2362
- setShadowColorType2: [`#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`],
2363
- setShadowColorType3: [`#6666ff80`, `#66cccc80`, `#ffffff80`, `#99996680`, `#cc660080`],
2364
- setShadowColorType4: [`#00000080`, `#6666ff80`, `#cc000080`, `#cc99cc80`, `#cc336680`],
2365
-
2366
- frzColorType1: [
2367
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2368
- [`#00ffcc`, `#339999`, `#ffff00`, `#999900`],
2369
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2370
- [`#cc99ff`, `#9966ff`, `#ffff00`, `#999900`],
2371
- [`#ff99cc`, `#ff6699`, `#ffff00`, `#999900`]
2372
- ],
2373
- frzColorType2: [
2374
- [`#cccccc`, `#999999`, `#ffff00`, `#999900`],
2375
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2376
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2377
- [`#cc99cc`, `#ff99ff`, `#ffff00`, `#999900`],
2378
- [`#ff6666`, `#ff9999`, `#ffff00`, `#999900`]
2379
- ],
2380
- frzColorType3: [
2381
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2382
- [`#00ffcc`, `#339999`, `#ffff00`, `#999900`],
2383
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2384
- [`#cc99ff`, `#9966ff`, `#ffff00`, `#999900`],
2385
- [`#ff99cc`, `#ff6699`, `#ffff00`, `#999900`]
2386
- ],
2387
- frzColorType4: [
2388
- [`#cccccc`, `#999999`, `#ffff00`, `#999900`],
2389
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2390
- [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2391
- [`#cc99cc`, `#ff99ff`, `#ffff00`, `#999900`],
2392
- [`#ff6666`, `#ff9999`, `#ffff00`, `#999900`]
2393
- ],
2379
+ const g_dfColorBaseObj = {
2380
+
2381
+ dark: {
2382
+ setColorType1: [`#6666ff`, `#99ffff`, `#ffffff`, `#ffff99`, `#ff9966`],
2383
+ setColorType2: [`#ffffff`, `#9999ff`, `#99ccff`, `#ffccff`, `#ff9999`],
2384
+ setColorType3: [`#ccccff`, `#ccffff`, `#ffffff`, `#ffffcc`, `#ffcc99`],
2385
+ setColorType4: [`#ffffff`, `#ccccff`, `#99ccff`, `#ffccff`, `#ffcccc`],
2386
+
2387
+ setShadowColorType1: [`#00000080`, `#00000080`, `#00000080`, `#00000080`, `#00000080`],
2388
+ setShadowColorType2: [`#00000080`, `#00000080`, `#00000080`, `#00000080`, `#00000080`],
2389
+ setShadowColorType3: [`#6666ff60`, `#33999960`, `#66666660`, `#99993360`, `#cc663360`],
2390
+ setShadowColorType4: [`#66666660`, `#6666ff60`, `#3366cc60`, `#99339960`, `#99333360`],
2391
+
2392
+ frzColorType1: [
2393
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2394
+ [`#00ffcc`, `#339999`, `#cccc33`, `#999933`],
2395
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2396
+ [`#cc99ff`, `#9966ff`, `#cccc33`, `#999933`],
2397
+ [`#ff99cc`, `#ff6699`, `#cccc33`, `#999933`]
2398
+ ],
2399
+ frzColorType2: [
2400
+ [`#cccccc`, `#999999`, `#cccc33`, `#999933`],
2401
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2402
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2403
+ [`#cc99cc`, `#ff99ff`, `#cccc33`, `#999933`],
2404
+ [`#ff6666`, `#ff9999`, `#cccc33`, `#999933`]
2405
+ ],
2406
+ frzColorType3: [
2407
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2408
+ [`#00ffcc`, `#339999`, `#cccc33`, `#999933`],
2409
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2410
+ [`#cc99ff`, `#9966ff`, `#cccc33`, `#999933`],
2411
+ [`#ff99cc`, `#ff6699`, `#cccc33`, `#999933`]
2412
+ ],
2413
+ frzColorType4: [
2414
+ [`#cccccc`, `#999999`, `#cccc33`, `#999933`],
2415
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2416
+ [`#66ffff`, `#6600ff`, `#cccc33`, `#999933`],
2417
+ [`#cc99cc`, `#ff99ff`, `#cccc33`, `#999933`],
2418
+ [`#ff6666`, `#ff9999`, `#cccc33`, `#999933`]
2419
+ ],
2420
+ },
2421
+ light: {
2422
+ setColorType1: [`#6666ff`, `#66cccc`, `#000000`, `#999966`, `#cc6600`],
2423
+ setColorType2: [`#000000`, `#6666ff`, `#cc0000`, `#cc99cc`, `#cc3366`],
2424
+ setColorType3: [`#000000`, `#000000`, `#000000`, `#000000`, `#000000`],
2425
+ setColorType4: [`#000000`, `#000000`, `#000000`, `#000000`, `#000000`],
2426
+
2427
+ setShadowColorType1: [`#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`],
2428
+ setShadowColorType2: [`#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`, `#ffffff80`],
2429
+ setShadowColorType3: [`#6666ff80`, `#66cccc80`, `#ffffff80`, `#99996680`, `#cc660080`],
2430
+ setShadowColorType4: [`#00000080`, `#6666ff80`, `#cc000080`, `#cc99cc80`, `#cc336680`],
2431
+
2432
+ frzColorType1: [
2433
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2434
+ [`#00ffcc`, `#339999`, `#ffff00`, `#999900`],
2435
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2436
+ [`#cc99ff`, `#9966ff`, `#ffff00`, `#999900`],
2437
+ [`#ff99cc`, `#ff6699`, `#ffff00`, `#999900`]
2438
+ ],
2439
+ frzColorType2: [
2440
+ [`#cccccc`, `#999999`, `#ffff00`, `#999900`],
2441
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2442
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2443
+ [`#cc99cc`, `#ff99ff`, `#ffff00`, `#999900`],
2444
+ [`#ff6666`, `#ff9999`, `#ffff00`, `#999900`]
2445
+ ],
2446
+ frzColorType3: [
2447
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2448
+ [`#00ffcc`, `#339999`, `#ffff00`, `#999900`],
2449
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2450
+ [`#cc99ff`, `#9966ff`, `#ffff00`, `#999900`],
2451
+ [`#ff99cc`, `#ff6699`, `#ffff00`, `#999900`]
2452
+ ],
2453
+ frzColorType4: [
2454
+ [`#cccccc`, `#999999`, `#ffff00`, `#999900`],
2455
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2456
+ [`#66ffff`, `#6600ff`, `#ffff00`, `#999900`],
2457
+ [`#cc99cc`, `#ff99ff`, `#ffff00`, `#999900`],
2458
+ [`#ff6666`, `#ff9999`, `#ffff00`, `#999900`]
2459
+ ],
2460
+ },
2394
2461
  };
2395
2462
 
2396
2463
  /**
@@ -2824,6 +2891,7 @@ const g_lang_msgObj = {
2824
2891
 
2825
2892
  dataResetConfirm: `この作品のローカル設定をクリアします。よろしいですか?\n(ハイスコアやAdjustment等のデータがクリアされます)`,
2826
2893
  keyResetConfirm: `キーを初期配置に戻します。よろしいですか?`,
2894
+ colorCopyConfirm: `フリーズアローの配色を矢印色に置き換えます\n(通常・ヒット時双方を置き換えます)。よろしいですか?`,
2827
2895
 
2828
2896
  difficulty: `譜面を選択します。`,
2829
2897
  speed: `矢印の流れる速度を設定します。\n外側のボタンは1x単位、内側は0.25x単位で変更できます。`,
@@ -2874,6 +2942,7 @@ const g_lang_msgObj = {
2874
2942
 
2875
2943
  dataResetConfirm: `Delete the local settings in this game. Is it OK?\n(High score, adjustment, volume and some settings will be initialized)`,
2876
2944
  keyResetConfirm: `Resets the assigned key to the initial state. Is it OK?`,
2945
+ colorCopyConfirm: `Replace freeze arrow color scheme with arrow color\n(replace both normal and hit). Is this OK?`,
2877
2946
 
2878
2947
  difficulty: `Select a chart.`,
2879
2948
  speed: `Set the speed of the sequences.\nThe outer button can be changed in 1x increments and the inner button in 0.25x increments.`,
@@ -5,7 +5,7 @@
5
5
  *
6
6
  * Source by tickle
7
7
  * Created : 2019/11/19
8
- * Revised : 2021/04/28 (v22.0.0)
8
+ * Revised : 2022/03/18 (v27.0.0)
9
9
  *
10
10
  * https://github.com/cwtickle/danoniplus
11
11
  */
@@ -609,3 +609,86 @@ function createDivCustomLabel(_id, _x, _y, _width, _height, _fontsize, _color, _
609
609
 
610
610
  return div;
611
611
  }
612
+
613
+ /**
614
+ * 外部jsファイルの読込 (callback)
615
+ * 読込可否を g_loadObj[ファイル名] で管理 (true: 読込成功, false: 読込失敗)
616
+ * @deprecated v27以降非推奨
617
+ * @param {string} _url
618
+ * @param {function} _callback
619
+ * @param {boolean} _requiredFlg (default : true / 読込必須)
620
+ * @param {string} _charset (default : UTF-8)
621
+ */
622
+ function loadScript(_url, _callback, _requiredFlg = true, _charset = `UTF-8`) {
623
+ const baseUrl = _url.split(`?`)[0];
624
+ g_loadObj[baseUrl] = false;
625
+ const script = document.createElement(`script`);
626
+ script.type = `text/javascript`;
627
+ script.src = _url;
628
+ script.charset = _charset;
629
+ script.onload = _ => {
630
+ g_loadObj[baseUrl] = true;
631
+ _callback();
632
+ };
633
+ script.onerror = _ => {
634
+ if (_requiredFlg) {
635
+ makeWarningWindow(g_msgInfoObj.E_0041.split(`{0}`).join(_url.split(`?`)[0]));
636
+ } else {
637
+ _callback();
638
+ }
639
+ };
640
+ document.querySelector(`head`).appendChild(script);
641
+ }
642
+
643
+ /**
644
+ * CSSファイルの読み込み (callback)
645
+ * デフォルトは danoni_skin_default.css を読み込む
646
+ * @deprecated v27以降非推奨
647
+ * @param {url} _href
648
+ * @param {function} _func
649
+ */
650
+ function importCssFile(_href, _func) {
651
+ const baseUrl = _href.split(`?`)[0];
652
+ g_loadObj[baseUrl] = false;
653
+ const link = document.createElement(`link`);
654
+ link.rel = `stylesheet`;
655
+ link.href = _href;
656
+ link.onload = _ => {
657
+ g_loadObj[baseUrl] = true;
658
+ _func();
659
+ };
660
+ link.onerror = _ => {
661
+ makeWarningWindow(g_msgInfoObj.E_0041.split(`{0}`).join(baseUrl), { resetFlg: `title` });
662
+ _func();
663
+ };
664
+ document.head.appendChild(link);
665
+ }
666
+
667
+ /**
668
+ * js, cssファイルの連続読込 (callback)
669
+ * @deprecated v27以降非推奨
670
+ * @param {number} _j
671
+ * @param {array} _fileData
672
+ * @param {string} _loadType
673
+ * @param {function} _afterFunc
674
+ */
675
+ function loadMultipleFiles(_j, _fileData, _loadType, _afterFunc = _ => true) {
676
+ if (_j < _fileData.length) {
677
+ const filePath = `${_fileData[_j][1]}${_fileData[_j][0]}?${new Date().getTime()}`;
678
+ if (_fileData[_j][0].endsWith(`.css`)) {
679
+ _loadType = `css`;
680
+ }
681
+
682
+ // jsファイル、cssファイルにより呼び出す関数を切替
683
+ if (_loadType === `js`) {
684
+ loadScript(filePath, _ =>
685
+ loadMultipleFiles(_j + 1, _fileData, _loadType, _afterFunc), false);
686
+ } else if (_loadType === `css`) {
687
+ const cssPath = filePath.split(`.js`).join(`.css`);
688
+ importCssFile(cssPath, _ =>
689
+ loadMultipleFiles(_j + 1, _fileData, _loadType, _afterFunc));
690
+ }
691
+ } else {
692
+ _afterFunc();
693
+ }
694
+ }
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
  /**
3
3
  * Dancing☆Onigiri 設定用jsファイル
4
- * Template Update: 2022/02/23 (v26.3.1)
4
+ * Template Update: 2022/03/25 (v27.1.0)
5
5
  *
6
6
  * このファイルでは、作品全体に対しての初期設定を行うことができます。
7
7
  * 譜面データ側で個別に同様の項目が設定されている場合は、譜面データ側の設定が優先されます。
@@ -12,7 +12,7 @@
12
12
 
13
13
  /*
14
14
  ------------------------------------------------------------------------
15
- 制作者クレジット
15
+ 制作者クレジット・基本設定
16
16
  https://github.com/cwtickle/danoniplus/wiki/dos-s0001-makerInfo
17
17
  ------------------------------------------------------------------------
18
18
  */
@@ -23,6 +23,14 @@ g_presetObj.tuning = `name`;
23
23
  /** 譜面製作者URL */
24
24
  g_presetObj.tuningUrl = `https://www.google.co.jp/`;
25
25
 
26
+ /** 自動横幅拡張設定 (true:有効、false:無効 / デフォルトは true) */
27
+ //g_presetObj.autoSpread = false;
28
+
29
+ /** 個人サイト別の最小横幅設定 */
30
+ //g_presetObj.autoMinWidth = 600;
31
+
32
+ /** 個人サイト別のウィンドウ位置 (left:左寄せ, center:中央, right:右寄せ)*/
33
+ //g_presetObj.windowAlign = `center`;
26
34
 
27
35
  /*
28
36
  ------------------------------------------------------------------------
@@ -43,7 +51,6 @@ g_presetObj.skinType = `default`;
43
51
  /** 背景・マスクモーションで使用する画像パスの指定方法を他の設定に合わせる設定 (trueで有効化) */
44
52
  //g_presetObj.syncBackPath = true;
45
53
 
46
-
47
54
  /*
48
55
  ------------------------------------------------------------------------
49
56
  ゲージ設定
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "26.7.0",
3
+ "version": "27.2.0",
4
4
  "description": "Dancing☆Onigiri (CW Edition) - Web-based Rhythm Game",
5
5
  "main": "index.js",
6
6
  "scripts": {