danoniplus 35.5.1 → 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.
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/05/18
7
+ * Revised : 2024/06/20
8
8
  *
9
9
  * https://github.com/cwtickle/danoniplus
10
10
  */
11
- const g_version = `Ver 35.5.1`;
12
- const g_revisedDate = `2024/05/18`;
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;
@@ -8944,8 +8966,8 @@ const mainInit = _ => {
8944
8966
  const filterCss = g_stateObj.filterLock === C_FLG_OFF ? g_cssObj.life_Failed : g_cssObj.life_Cleared;
8945
8967
  [`filterBar0`, `filterBar1`, `borderBar0`, `borderBar1`].forEach(obj =>
8946
8968
  mainSprite.appendChild(createColorObject2(obj, g_lblPosObj.filterBar, filterCss)));
8947
- borderBar0.style.top = wUnit(g_posObj.stepDiffY);
8948
- borderBar1.style.top = wUnit(g_posObj.stepDiffY + g_posObj.arrowHeight);
8969
+ borderBar0.style.top = wUnit(g_posObj.stepDiffY + g_stateObj.hitPosition);
8970
+ borderBar1.style.top = wUnit(g_posObj.stepDiffY + g_posObj.arrowHeight - g_stateObj.hitPosition);
8949
8971
 
8950
8972
  if (g_appearanceRanges.includes(g_stateObj.appearance)) {
8951
8973
  mainSprite.appendChild(createDivCss2Label(`filterView`, ``, g_lblPosObj.filterView));
@@ -10098,8 +10120,8 @@ const changeAppearanceFilter = (_appearance, _num = 10) => {
10098
10120
  $id(`arrowSprite${topNum}`).clipPath = topShape;
10099
10121
  $id(`arrowSprite${bottomNum}`).clipPath = bottomShape;
10100
10122
 
10101
- $id(`filterBar0`).top = wUnit(g_posObj.arrowHeight * _num / 100);
10102
- $id(`filterBar1`).top = wUnit(g_posObj.arrowHeight * (100 - _num) / 100);
10123
+ $id(`filterBar0`).top = wUnit(g_posObj.arrowHeight * _num / 100 + g_stateObj.hitPosition);
10124
+ $id(`filterBar1`).top = wUnit(g_posObj.arrowHeight * (100 - _num) / 100 - g_stateObj.hitPosition);
10103
10125
 
10104
10126
  if (g_appearanceRanges.includes(_appearance)) {
10105
10127
  $id(`filterView`).top =
@@ -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`;
@@ -10987,7 +11005,7 @@ const resultInit = _ => {
10987
11005
  tweetResultTmp = tweetResultTmp.split(`[${key}]`).join(g_resultObj[g_presetObj.resultVals[key]]));
10988
11006
  }
10989
11007
  const resultText = `${unEscapeHtml(tweetResultTmp)}`;
10990
- const tweetResult = `https://x.com/intent/tweet?text=${encodeURIComponent(resultText)}`;
11008
+ const tweetResult = `https://x.com/intent/post?text=${encodeURIComponent(resultText)}`;
10991
11009
  const currentDateTime = new Date().toLocaleString();
10992
11010
 
10993
11011
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "danoniplus",
3
- "version": "35.5.1",
3
+ "version": "35.5.3",
4
4
  "description": "Dancing☆Onigiri (CW Edition) - Web-based Rhythm Game",
5
5
  "main": "index.js",
6
6
  "scripts": {
package/skin/skin_css.zip DELETED
Binary file