danoniplus 44.2.0 → 44.3.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.
- package/README.md +1 -0
- package/js/danoni_main.js +42 -10
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# Dancing☆Onigiri (CW Edition)
|
|
2
2
|
|
|
3
3
|
[](https://github.com/cwtickle/danoniplus/actions?query=workflow%3ACodeQL)
|
|
4
|
+

|
|
4
5
|
[](https://discord.gg/YVWUdUGyMy)
|
|
5
6
|
[](https://github.com/cwtickle/danoniplus/security/policy)
|
|
6
7
|
[](https://github.com/cwtickle/danoniplus/releases)
|
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/02/
|
|
7
|
+
* Revised : 2026/02/20
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver 44.
|
|
12
|
-
const g_revisedDate = `2026/02/
|
|
11
|
+
const g_version = `Ver 44.3.0`;
|
|
12
|
+
const g_revisedDate = `2026/02/20`;
|
|
13
13
|
|
|
14
14
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
15
15
|
let g_localVersion = ``;
|
|
@@ -1895,6 +1895,8 @@ const clearWindow = (_redrawFlg = false, _customDisplayName = ``) => {
|
|
|
1895
1895
|
|
|
1896
1896
|
// ボタン、オブジェクトをクリア (divRoot配下のもの)
|
|
1897
1897
|
deleteChildspriteAll(`divRoot`);
|
|
1898
|
+
divRoot.style.perspective = ``;
|
|
1899
|
+
divRoot.style.perspectiveOrigin = ``;
|
|
1898
1900
|
|
|
1899
1901
|
// 拡張範囲を取得
|
|
1900
1902
|
const diffX = (_customDisplayName === `Main` && g_workObj.nonDefaultSc ?
|
|
@@ -8111,8 +8113,8 @@ const gaugeFormat = (_mode, _border, _rcv, _dmg, _init, _lifeValFlg) => {
|
|
|
8111
8113
|
const [rateText, allowableCntsText] = getAccuracy(borderVal, realRcv, realDmg, initVal, allCnt);
|
|
8112
8114
|
g_workObj.requiredAccuracy = rateText;
|
|
8113
8115
|
|
|
8114
|
-
//
|
|
8115
|
-
return `<div id="gaugeDivCover" class="settings_gaugeDivCover">
|
|
8116
|
+
// このテーブルのみpointer-eventsを有効にする(オンマウス許可)
|
|
8117
|
+
return `<div id="gaugeDivCover" class="settings_gaugeDivCover" style="pointer-events: auto;">
|
|
8116
8118
|
<div id="lblGaugeDivTable" class="settings_gaugeDivTable">
|
|
8117
8119
|
<div id="lblGaugeStart" class="settings_gaugeDivTableCol settings_gaugeStart">
|
|
8118
8120
|
${g_lblNameObj.g_start}
|
|
@@ -8143,9 +8145,8 @@ const gaugeFormat = (_mode, _border, _rcv, _dmg, _init, _lifeValFlg) => {
|
|
|
8143
8145
|
<div id="dataGaugeDamage" class="settings_gaugeDivTableCol settings_gaugeVal settings_gaugeEtc">
|
|
8144
8146
|
${dmgText}
|
|
8145
8147
|
</div>
|
|
8146
|
-
<div id="dataGaugeRate" class="settings_gaugeDivTableCol settings_gaugeVal settings_gaugeEtc"
|
|
8147
|
-
|
|
8148
|
-
${rateText}
|
|
8148
|
+
<div id="dataGaugeRate" class="settings_gaugeDivTableCol settings_gaugeVal settings_gaugeEtc" style="line-height: 12px;">
|
|
8149
|
+
${rateText}<br><span style="font-size: 10px;">${allowableCntsText}</span>
|
|
8149
8150
|
</div>
|
|
8150
8151
|
</div>
|
|
8151
8152
|
</div>
|
|
@@ -8169,7 +8170,7 @@ const getAccuracy = (_border, _rcv, _dmg, _init, _allCnt) => {
|
|
|
8169
8170
|
|
|
8170
8171
|
// 許容ミス数の計算
|
|
8171
8172
|
const allowableCnts = Math.min(_allCnt - minRecovery, _allCnt);
|
|
8172
|
-
let allowableCntsText = _allCnt > 0 ? (allowableCnts
|
|
8173
|
+
let allowableCntsText = _allCnt > 0 && allowableCnts !== 0 ? (allowableCnts > 0 ? `${allowableCnts}miss↓` : `(${allowableCnts}miss)`) : ``;
|
|
8173
8174
|
|
|
8174
8175
|
if ((_rcv === 0 && _dmg === 0) || _rcv < 0 || _dmg < 0) {
|
|
8175
8176
|
rateText = `----`;
|
|
@@ -11958,6 +11959,12 @@ const mainInit = () => {
|
|
|
11958
11959
|
|
|
11959
11960
|
// ステップゾーン、矢印のメインスプライトを作成
|
|
11960
11961
|
const mainSprite = createEmptySprite(divRoot, `mainSprite`, mainCommonPos);
|
|
11962
|
+
if (g_stateObj.frzReturn !== C_FLG_OFF) {
|
|
11963
|
+
divRoot.style.perspective = `1400px`;
|
|
11964
|
+
divRoot.style.perspectiveOrigin = `center 60%`;
|
|
11965
|
+
mainSprite.style.transformOrigin = `center 55%`;
|
|
11966
|
+
}
|
|
11967
|
+
|
|
11961
11968
|
addTransform(`mainSprite`, `root`, `scale(${g_workObj.scale})`);
|
|
11962
11969
|
addXY(`mainSprite`, `root`, g_workObj.playingX, g_posObj.stepY - C_STEP_Y + g_headerObj.playingY);
|
|
11963
11970
|
|
|
@@ -13487,7 +13494,32 @@ const changeReturn = (_rad, _axis) => {
|
|
|
13487
13494
|
if (_axis[1] !== undefined) {
|
|
13488
13495
|
_transform += ` rotate${_axis[1]}(${_rad}deg)`;
|
|
13489
13496
|
}
|
|
13490
|
-
|
|
13497
|
+
const sprite = document.getElementById(`mainSprite`);
|
|
13498
|
+
if (sprite !== null) {
|
|
13499
|
+
sprite.style.transformStyle = `preserve-3d`;
|
|
13500
|
+
const rad360 = _rad % 360;
|
|
13501
|
+
|
|
13502
|
+
let isBack = false;
|
|
13503
|
+
|
|
13504
|
+
// 単軸回転
|
|
13505
|
+
if (_axis.length === 1) {
|
|
13506
|
+
const axis = _axis[0];
|
|
13507
|
+
if (axis === 'Y' || axis === 'X') {
|
|
13508
|
+
isBack = rad360 > 90 && rad360 < 270;
|
|
13509
|
+
}
|
|
13510
|
+
// Z軸は平面回転なので「裏側」は存在しない
|
|
13511
|
+
}
|
|
13512
|
+
|
|
13513
|
+
// 2軸回転(XZ / XY / YZ)
|
|
13514
|
+
if (_axis.length === 2) {
|
|
13515
|
+
// 2軸回転は「どちらかの軸が裏側なら裏側」とみなす
|
|
13516
|
+
const [a1, a2] = _axis;
|
|
13517
|
+
const back1 = (a1 === 'Y' || a1 === 'X') && (rad360 > 90 && rad360 < 270);
|
|
13518
|
+
const back2 = (a2 === 'Y' || a2 === 'X') && (rad360 > 90 && rad360 < 270);
|
|
13519
|
+
isBack = back1 || back2;
|
|
13520
|
+
}
|
|
13521
|
+
sprite.style.opacity = isBack ? 0.7 : 1;
|
|
13522
|
+
|
|
13491
13523
|
addTransform(`mainSprite`, `frzReturn`, _transform);
|
|
13492
13524
|
|
|
13493
13525
|
if (_rad < 360 && g_workObj.frzReturnFlg) {
|