danoniplus 35.5.2 → 35.5.3

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 +30 -12
  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 : 2024/06/08
7
+ * Revised : 2024/06/20
8
8
  *
9
9
  * https://github.com/cwtickle/danoniplus
10
10
  */
11
- const g_version = `Ver 35.5.2`;
12
- const g_revisedDate = `2024/06/08`;
11
+ const g_version = `Ver 35.5.3`;
12
+ const g_revisedDate = `2024/06/20`;
13
13
 
14
14
  // カスタム用バージョン (danoni_custom.js 等で指定可)
15
15
  let g_localVersion = ``;
@@ -7728,6 +7728,19 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
7728
7728
  getRefData(_header, `${_type}_data`)
7729
7729
  ];
7730
7730
 
7731
+ /**
7732
+ * 譜面データの優先順配列パターンの取得
7733
+ * @param {string} _type
7734
+ * @param {number} _scoreNo
7735
+ * @returns
7736
+ */
7737
+ const getPriorityVal = (_type, _scoreNo) => [
7738
+ `${_type}${g_localeObj.val}${_scoreNo}_data`,
7739
+ `${_type}${g_localeObj.val}_data`,
7740
+ `${_type}${_scoreNo}_data`,
7741
+ `${_type}_data`
7742
+ ];
7743
+
7731
7744
  /**
7732
7745
  * 歌詞表示、背景・マスクデータの優先順取得
7733
7746
  */
@@ -7763,16 +7776,25 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
7763
7776
  */
7764
7777
  const makeWordData = _scoreNo => {
7765
7778
  const wordDataList = [];
7779
+ const wordTargets = [];
7766
7780
  let wordReverseFlg = false;
7767
7781
  const divideCnt = getKeyInfo().divideCnt;
7768
- const addDataList = (_type = ``) => wordDataList.push(...getPriorityList(`word`, _type, _scoreNo));
7782
+ const addDataList = (_type = ``) => wordTargets.push(...getPriorityVal(_type, _scoreNo));
7769
7783
  getPriorityHeader().forEach(val => addDataList(val));
7784
+ makeDedupliArray(wordTargets).forEach(val => wordDataList.push(getRefData(`word`, val)));
7770
7785
 
7771
7786
  if (g_stateObj.reverse === C_FLG_ON) {
7787
+ let wordTarget = ``;
7788
+ for (let val of makeDedupliArray(wordTargets)) {
7789
+ if (getRefData(`word`, val) !== undefined) {
7790
+ wordTarget = val;
7791
+ break;
7792
+ }
7793
+ }
7772
7794
 
7773
7795
  // wordRev_dataが指定されている場合はそのままの位置を採用
7774
7796
  // word_dataのみ指定されている場合、下記ルールに従って設定
7775
- if (wordDataList.find((v) => v !== undefined) === undefined) {
7797
+ if (!wordTarget.includes(`Rev`) && g_stateObj.scroll === `---`) {
7776
7798
  // Reverse時の歌詞の自動反転制御設定
7777
7799
  if (g_headerObj.wordAutoReverse !== `auto`) {
7778
7800
  wordReverseFlg = g_headerObj.wordAutoReverse === C_FLG_ON;
@@ -10228,6 +10250,7 @@ const changeHitFrz = (_j, _k, _name, _difFrame = 0) => {
10228
10250
 
10229
10251
  const styfrzBar = $id(`${_name}Bar${frzNo}`);
10230
10252
  const styfrzBtm = $id(`${_name}Btm${frzNo}`);
10253
+ const styfrzTop = $id(`${_name}Top${frzNo}`);
10231
10254
  const styfrzTopShadow = $id(`${_name}TopShadow${frzNo}`);
10232
10255
  const styfrzBtmShadow = $id(`${_name}BtmShadow${frzNo}`);
10233
10256
  const colorPos = g_keyObj[`color${g_keyObj.currentKey}_${g_keyObj.currentPtn}`][_j];
@@ -10253,7 +10276,8 @@ const changeHitFrz = (_j, _k, _name, _difFrame = 0) => {
10253
10276
  styfrzBar.background = g_workObj[`${_name}HitBarColors`][_j];
10254
10277
  styfrzBtm.top = wUnit(currentFrz.btmY);
10255
10278
  styfrzBtm.background = g_workObj[`${_name}HitColors`][_j];
10256
- styfrzTopShadow.opacity = 0;
10279
+ styfrzTop.top = wUnit(- hitPos);
10280
+ styfrzTopShadow.top = styfrzTop.top;
10257
10281
  styfrzBtmShadow.top = styfrzBtm.top;
10258
10282
  if (_name === `frz`) {
10259
10283
  if (g_headerObj.frzShadowColor[colorPos][1] !== ``) {
@@ -10280,16 +10304,10 @@ const changeFailedFrz = (_j, _k) => {
10280
10304
  $id(`frzHit${_j}`).opacity = 0;
10281
10305
  $id(`frzTop${frzNo}`).display = C_DIS_INHERIT;
10282
10306
  $id(`frzTop${frzNo}`).background = `#cccccc`;
10283
- $id(`frzTopShadow${frzNo}`).opacity = 1;
10284
10307
  $id(`frzBar${frzNo}`).background = `#999999`;
10285
10308
  $id(`frzBar${frzNo}`).opacity = 1;
10286
10309
  $id(`frzBtm${frzNo}`).background = `#cccccc`;
10287
10310
 
10288
- // 判定位置調整分の補正
10289
- const hitPos = g_workObj.hitPosition * g_workObj.scrollDir[_j];
10290
- $id(`frzTop${frzNo}`).top = wUnit(- hitPos);
10291
- $id(`frzTopShadow${frzNo}`).top = wUnit(- hitPos);
10292
-
10293
10311
  const colorPos = g_keyObj[`color${g_keyObj.currentKey}_${g_keyObj.currentPtn}`][_j];
10294
10312
  if (g_headerObj.frzShadowColor[colorPos][0] !== ``) {
10295
10313
  $id(`frzTopShadow${frzNo}`).background = `#333333`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "35.5.2",
3
+ "version": "35.5.3",
4
4
  "description": "Dancing☆Onigiri (CW Edition) - Web-based Rhythm Game",
5
5
  "main": "index.js",
6
6
  "scripts": {