danoniplus 29.4.1 → 30.1.1
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/danoni/danoni5.html +256 -0
- package/js/danoni_main.js +245 -92
- package/js/lib/danoni_constants.js +7 -2
- package/js/template/danoni_setting.js +9 -1
- package/package.json +1 -1
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="ja">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8">
|
|
5
|
+
<script src="../js/danoni_main.js" charset="UTF-8"></script>
|
|
6
|
+
<title>Dancing★Onigiri</title>
|
|
7
|
+
<style type="text/css">
|
|
8
|
+
<!--//
|
|
9
|
+
a:link { color:#BAB7E0;}
|
|
10
|
+
a:visited{ color:#BAB7E0;}
|
|
11
|
+
a:active { color:#CCCCCC;}
|
|
12
|
+
body{
|
|
13
|
+
font-family:"Arial","メイリオ","MS P ゴシック",sans-serif;
|
|
14
|
+
scrollbar-base-color:"black";
|
|
15
|
+
scrollbar-arrow-color:"white";
|
|
16
|
+
color:#cccccc;
|
|
17
|
+
background-color:#000011;
|
|
18
|
+
font-size:14px;
|
|
19
|
+
}
|
|
20
|
+
table{
|
|
21
|
+
border:0;
|
|
22
|
+
border-collapse:collapse;
|
|
23
|
+
width:800px;
|
|
24
|
+
margin:auto;
|
|
25
|
+
}
|
|
26
|
+
th,td{padding:0;}
|
|
27
|
+
|
|
28
|
+
a{ text-decoration: none; }
|
|
29
|
+
a:hover { color:#FF9900; text-decoration: underline; }
|
|
30
|
+
|
|
31
|
+
//-->
|
|
32
|
+
</style>
|
|
33
|
+
</head>
|
|
34
|
+
|
|
35
|
+
<body>
|
|
36
|
+
<table><tr><td>
|
|
37
|
+
<p style="text-align:center;">
|
|
38
|
+
<span style="font-size:32px;">Preview</span>
|
|
39
|
+
</p>
|
|
40
|
+
<hr>
|
|
41
|
+
<input type="hidden" name="dos" id="dos" value='
|
|
42
|
+
|musicTitle=Defeat*comma*I Doll,月人(MoonWind),|
|
|
43
|
+
|difData=Tr,Transform,3.5,70,2,7$14,Normal,3.5|
|
|
44
|
+
|setColor=#9999ff,#99ffff,#ffffff,#ffff99,#ff9966|
|
|
45
|
+
|frzColor=#00ffff,#6600ff,#cccc33,#999933$#99ff99,#99ff99,#cccc33,#999933$#00ffff,#6600ff,#cccc33,#999933$#cc99ff,#9966ff,#cccc33,#999933|
|
|
46
|
+
|
|
47
|
+
|startFrame=0|blankFrame=197|
|
|
48
|
+
|endFrame=3:08|
|
|
49
|
+
|
|
50
|
+
|keyExtraList=Tr|
|
|
51
|
+
|minWidthTr=800|
|
|
52
|
+
|
|
53
|
+
|charaTr=
|
|
54
|
+
aleft,adown,aup,aright,aspace,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
|
|
55
|
+
aspace,aleft,adown,aup,aright,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
|
|
56
|
+
aleft,adown,aspace,aup,aright,bleft,bleftdia,bdown,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright
|
|
57
|
+
aleft,adown,aup,aright,aspace,blefta,bleft,bleftdia,bdown,bleftb,bspace,bup,brightdia,bright,cleft,cdown,cup,cright,dleft,ddown,dup,dright,eleft,edown,eup,eright,fleft,fdown,fup,fright,oni,hleft,hleftdia,hdown,hspace,hup,hrightdia,hright,gleft,gleftdia,gdown,gspace,gup,grightdia,gright
|
|
58
|
+
|
|
|
59
|
+
|colorTr=
|
|
60
|
+
4,4,4,4,2,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
|
|
61
|
+
2,4,4,4,4,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
|
|
62
|
+
4,4,2,4,4,2,2,2,3,3,3,3,3,3,3,3,4,4,4,4,2,3,3,2,3,3,3,3,0,1,0,2,0,1,0,2,0,1,0,1,0,1,0
|
|
63
|
+
3,3,3,3,2,0,1,0,1,2,1,0,1,0,4,4,4,4,3,3,3,3,2,3,3,2,1,0,1,0,3,3,3,3,0,1,0,1,0,1,0,2,0,1,0
|
|
64
|
+
|
|
|
65
|
+
|stepRtnTr=
|
|
66
|
+
0,-90,90,180,onigiri,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
|
|
67
|
+
onigiri,0,-90,90,180,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
|
|
68
|
+
0,-90,onigiri,90,180,giko,onigiri,iyo,0,-90,90,180,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,0,-90,90,180,0,-45,-90,onigiri,90,135,180,onigiri,0,30,60,90,120,150,180
|
|
69
|
+
0,45,135,180,giko,90,120,150,180,onigiri,0,30,60,90,0,-90,90,180,0,-90,90,180,giko,135,45,iyo,45,0,-45,-90,giko,onigiri,iyo,c,90,135,180,225,0,-45,-90,onigiri,90,135,180
|
|
70
|
+
|
|
|
71
|
+
|posTr=
|
|
72
|
+
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
|
|
73
|
+
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
|
|
74
|
+
1,2,3,4,5,0,1,2,3,4,5,6,2.5,3.5,4.5,5.5,0.5,1.5,2.5,3.5,0.5,2.5,3.5,5.5,2,3,4,5,7.5,8.5,9.5,10.5,11.5,12.5,13.5,7,8,9,10,11,12,13,14
|
|
75
|
+
3.5,4.5,5.5,6.5,7.5,1.5,2.5,3.5,4.5,5.5,6.5,7.5,8.5,9.5,3,4,5,6,5,6,7,8,3,5,6,8,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
|
|
76
|
+
|
|
|
77
|
+
|keyGroupTr=
|
|
78
|
+
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
|
|
79
|
+
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
|
|
80
|
+
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,12,12,12,12,12,12,12,12
|
|
81
|
+
5,5,5,5,5,7i,7i,7i,7i,7i,7i,7i,7i,7i,11,11,11,11,11L,11L,11L,11L,11W,11W,11W,11W,12,12,12,12,12,12,12,12,12,12,12,12,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W,11/11L/11W
|
|
82
|
+
|
|
|
83
|
+
|
|
84
|
+
|divTr=7$7$7$12,19|
|
|
85
|
+
|keyCtrlTr=
|
|
86
|
+
37/0,40/0,38/0,39/0,32/0,90/0,88/0,67/0,37/0,40/0,38/0,39/0,37/0,40/0,38/0,39/0,87/0,69/0,51/52,82/0,49/50,84/0,89/0,48/189,85/0,73/0,56/57/0,79/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0,32/0,78/0,74/0,77/0,75/0,188/0,76/0,190/0
|
|
87
|
+
32/0,37/0,40/0,38/0,39/0,90/0,88/0,67/0,37/0,40/0,38/0,39/0,37/0,40/0,38/0,39/0,87/0,69/0,51/52,82/0,49/50,84/0,89/0,48/189,85/0,73/0,56/57/0,79/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0,32/0,78/0,74/0,77/0,75/0,188/0,76/0,190/0
|
|
88
|
+
68/0,70/0,32/0,74/0,75/0,90/0,88/0,67/0,37/0,40/0,38/0,39/0,37/0,40/0,38/0,39/0,87/0,69/0,51/52,82/0,49/50,84/0,89/0,48/189,85/0,73/0,56/57/0,79/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0,32/0,78/0,74/0,77/0,75/0,188/0,76/0,190/0
|
|
89
|
+
112/0,113/0,114/0,115/0,13/16,52/0,82/0,70/0,86/0,32/0,78/0,74/0,73/0,57/0,87/0,69/0,51/52,82/0,37/0,40/0,38/0,39/0,49/50,84/0,89/0,48/189,112/0,113/0,114/0,115/0,116/0,117/0,118/0,119/0,120/0,121/0,122/0,123/0,83/0,68/0,70/0,32/0,74/0,75/0,76/0
|
|
90
|
+
|
|
|
91
|
+
|
|
92
|
+
|shuffleTr=
|
|
93
|
+
0,0,0,0,1,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
|
|
94
|
+
1,0,0,0,0,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
|
|
95
|
+
0,0,1,0,0,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,8,8,8,10,11,11,11,11,11,11,11/0,0,0,0,0,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,8,8,8,7,7,7,7,7,7,7,7
|
|
96
|
+
0,0,0,0,1,2,2,2,2,3,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,8,8,8,8,9,9,9,9,10,10,10,11,10,10,10/0,0,0,0,0,2,2,2,2,2,2,2,2,2,4,4,4,4,5,5,5,5,6,6,6,6,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8
|
|
97
|
+
|
|
|
98
|
+
|scrollTr=
|
|
99
|
+
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,-1,-1,1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
|
100
|
+
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,1,-1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
|
101
|
+
Reverse::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Cross::1,-1,-1,-1,1,1,1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
|
|
102
|
+
---::1,1,1,1,1,1,1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1/Reverse::-1,-1,-1,-1,-1,1,1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1/Cross::1,-1,-1,1,1,-1,-1,1,1,1,1,1,-1,-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,1,1,1,1,1,1,1,1,1,1,1/Flat::1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,-1,-1,-1,-1,-1,-1,-1/R-Flat::-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,1,1,1,1,1,1,1
|
|
103
|
+
|
|
|
104
|
+
|
|
105
|
+
|transKeyTr=$$$Tr2|
|
|
106
|
+
|shuffleUse=group|
|
|
107
|
+
|
|
108
|
+
|gleft_data=205,222,286,391,408,472,1088,1227,1320,1529,1854,2179,2400,2528,2708,2771,2969,3143,3201,3248,10720,10755,10912,10959|
|
|
109
|
+
|gleftdia_data=263,350,460,1018,1273,1343,1413,1506,1715,1773,1831,2400,2470,2620,2679,2737,2830,3027,3120,10703,10720,10796,10935|
|
|
110
|
+
|gdown_data=298,315,495,832,1099,1239,1297,1401,1540,1564,1691,1750,1877,1900,1912,1924,1935,1947,2144,2417,2667,2702,2946,2969,3015,3050,3213,10831,10941|
|
|
111
|
+
|gspace_data=449,1204,1320,1691,2040,2086,2133,2179,2226,2272,2319,2365,2458,2504,2644,2690,2760,2806,2899,3178,10680,10773,10924|
|
|
112
|
+
|gup_data=275,426,484,519,548,1250,1285,1703,1854,2098,2156,2284,2417,2493,2609,2690,2841,2922,2946,3073,3143,3236,10755,10796,10813,10947|
|
|
113
|
+
|grightdia_data=240,333,507,542,1006,1111,1215,1297,1390,1552,1831,2516,2748,3027,3160,10703,10953|
|
|
114
|
+
|gright_data=484,1273,1575,1668,1738,1761,1808,2034,2121,2307,2435,2481,2655,2713,2806,2922,3062,3097,3178,3224,10680,10813|
|
|
115
|
+
|dleft_data=530,611,658,693,948,971,1134,1250,1424,1599,1622,1784,2028,2365,2435,2760,2853,2992,10889|
|
|
116
|
+
|ddown_data=536,577,600,646,704,728,844,902,1064,1169,1192,1355,1436,1575,1796,1970,1982,1993,2005,2353,2713,2789,2864,3259,10900|
|
|
117
|
+
|dup_data=739,797,925,983,1459,1645,1668,2377,2888,3073,3160|
|
|
118
|
+
|dright_data=635,762,995,1041,1076,1157,1378,1482,1599,1808,2017,2330,2783,2876,3108,3259,10959|
|
|
119
|
+
|gfrzLeft_data=553,565|
|
|
120
|
+
|gfrzLdia_data=2063,2098|
|
|
121
|
+
|gfrzDown_data=2249,2284|
|
|
122
|
+
|gfrzSpace_data=|
|
|
123
|
+
|gfrzUp_data=|
|
|
124
|
+
|gfrzRdia_data=2226,2243|
|
|
125
|
+
|gfrzRight_data=2202,2220,10889,10912|
|
|
126
|
+
|dfrzLeft_data=|
|
|
127
|
+
|dfrzDown_data=|
|
|
128
|
+
|dfrzUp_data=2562,2580|
|
|
129
|
+
|dfrzRight_data=553,565,2539,2557,2586,2603|
|
|
130
|
+
|
|
131
|
+
|aleft_data=3329,3375,3422,3480,3608,3677,3770,3817,3840,3863,3910,3944,3991,4014,4049,4072,4107,4130,4153,4177,4200,4235,4316,4339,4374,4432,4479,4525,4571,4641,4821,4850,4943,4972,5361,5500,5518|
|
|
132
|
+
|adown_data=3340,3387,3433,3468,3526,3573,3619,3666,3689,3712,3759,3793,3840,3915,3933,3991,4037,4078,4130,4177,4223,4246,4281,4304,4328,4362,4386,4409,4432,4490,4630,4664,4688,4699,4711,4722,4734,4804,4815,4943,4966,5408,5425,5553,5593,5611|
|
|
133
|
+
|aup_data=3491,3515,3561,3631,3654,3747,3817,3851,3944,4026,4066,4119,4165,4211,4258,4362,4397,4420,4455,4537,4641,4827,4955,4978,5338,5535|
|
|
134
|
+
|aright_data=3317,3352,3399,3445,3515,3538,3561,3584,3608,3642,3735,3793,3851,3863,3921,3956,3979,4002,4060,4084,4142,4188,4270,4293,4316,4351,4409,4455,4583,4618,4757,4769,4780,4792,4810,4955,4984,5315,5442,5628|
|
|
135
|
+
|aspace_data=3782,3898,4014,4060,4502,4513,4548,4560,4595,4606,4827,4850,5036,5384,5477,5570,5582,5663|
|
|
136
|
+
|afrzLeft_data=4990,5036,5686,5710|
|
|
137
|
+
|afrzDown_data=|
|
|
138
|
+
|afrzUp_data=|
|
|
139
|
+
|afrzRdia_data=|
|
|
140
|
+
|afrzRight_data=5686,5710|
|
|
141
|
+
|afrzSpace_data=|
|
|
142
|
+
|
|
143
|
+
|oni_data=5779,6499,7150,7289,7382,7475,7811,8009,8288,8462,8485,8497|
|
|
144
|
+
|hleft_data=5837,6151,6244,6569,6940,7033,7300,7602,7893,8055|
|
|
145
|
+
|hleftdia_data=6128,6197,6290,6395,6430,6453,6464,6906,7010,7242,7324,7568,7620,7707,7765,7846,8032,8299,8346,8404,8450|
|
|
146
|
+
|hdown_data=5826,5919,6162,6220,6255,6488,6580,6685,6929,6952,7045,7359,7881,8067,8322,8346|
|
|
147
|
+
|hspace_data=6337,6360,6371,6406,6894,6987,7080,7103,7115,7126,7138,7150,7382,7556,7602,7637,7765,7835,7904,8009,8090,8380,8427|
|
|
148
|
+
|hup_data=5849,5942,6174,6313,6476,6592,6917,7022,7266,7335,7579,7719,7742,7991,8044,8322,8363|
|
|
149
|
+
|hrightdia_data=6209,6302,6383,6406,6871,6964,7312,7428,7533,7620,7695,7870,7974,8079,8311,8363,8439|
|
|
150
|
+
|hright_data=5860,6267,6499,6604,6662,7057,7742,7991,8462|
|
|
151
|
+
|fleft_data=6522,6639,7231,7521,7637,7672,7788,7939,7986,8102,8148,8171,8380|
|
|
152
|
+
|fdown_data=6534,6615,6708,7428,7660,7962,7986|
|
|
153
|
+
|fup_data=7173,7184,7196,7208,7219,7486,7811,8195,8218,8230,8253,8264|
|
|
154
|
+
|fright_data=6546,6627,7242,7405,7510,7788,8125,8160,8276|
|
|
155
|
+
|foni_data=6708,6731|
|
|
156
|
+
|hfrzLeft_data=|
|
|
157
|
+
|hfrzLdia_data=6046,6104|
|
|
158
|
+
|hfrzDown_data=|
|
|
159
|
+
|hfrzSpace_data=6000,6023,6743,6778|
|
|
160
|
+
|hfrzUp_data=|
|
|
161
|
+
|hfrzRdia_data=5965,5988,6790,6848,7916,7939|
|
|
162
|
+
|ffrzRight_data=|
|
|
163
|
+
|ffrzLeft_data=|
|
|
164
|
+
|ffrzDown_data=7451,7475|
|
|
165
|
+
|ffrzUp_data=|
|
|
166
|
+
|ffrzRight_data=|
|
|
167
|
+
|
|
168
|
+
|bleft_data=8671,8845,8915,8979,9054,9066,9100,9228,9310,9356,9402,9472,9495,9588,9658,9722,9797,9809,9908,9937,9948,10000,10030,10076,10146,10517,10564,10587|
|
|
169
|
+
|bleftdia_data=8682,8857,8961,8973,9025,9147,9240,9269,9280,9292,9379,9449,9472,9542,9565,9635,9704,9716,9768,9890,9902,9954,10146,10169,10570,10587|
|
|
170
|
+
|bdown_data=8694,8868,9008,9019,9071,9089,9112,9182,9205,9251,9333,9426,9519,9565,9611,9629,9751,9762,9815,9983,9995,10030,10175,10186,10540,10575|
|
|
171
|
+
|bspace_data=8555,8590,8717,8764,8833,8880,8938,8996,9031,9100,9147,9251,9321,9379,9402,9507,9588,9640,9693,9739,9786,9832,9867,9890,9902,9913,9925,9937,10012,10088,10186|
|
|
172
|
+
|bup_data=8543,8601,8624,8729,8775,8822,8891,9042,9118,9135,9159,9240,9310,9350,9368,9397,9437,9495,9536,9553,9582,9623,9774,9844,10006,10018,10064,10134,10157,10180|
|
|
173
|
+
|brightdia_data=8648,8740,8787,8903,8950,9182,9205,9460,9646,9728,10111|
|
|
174
|
+
|bright_data=8531,8578,8636,8706,8810,8868,8915,8984,9089,9124,9228,9263,9275,9286,9298,9344,9391,9414,9443,9484,9530,9577,9600,9658,9681,9820,9855,9960,9971,9983,9995,10024,10053,10157|
|
|
175
|
+
|bfrzLeft_data=10192,10215|
|
|
176
|
+
|bfrzLdia_data=|
|
|
177
|
+
|bfrzDown_data=|
|
|
178
|
+
|bfrzSpace_data=|
|
|
179
|
+
|bfrzUp_data=|
|
|
180
|
+
|bfrzRdia_data=|
|
|
181
|
+
|bfrzRight_data=10192,10215|
|
|
182
|
+
|
|
183
|
+
|cleft_data=10738|
|
|
184
|
+
|eleft_data=10866|
|
|
185
|
+
|cdown_data=10610,10628|
|
|
186
|
+
|cup_data=10645|
|
|
187
|
+
|cright_data=10738|
|
|
188
|
+
|eright_data=10866|
|
|
189
|
+
|
|
190
|
+
|speed_data=3271,0.50,3294,1.00|
|
|
191
|
+
|
|
192
|
+
|keych_data=0,11L,1951,5,1955,11L,2810,5,2814,11L,3264,5,3275,11L,3287,11L,3293,5,3299,11L,3304,5,3307,11L,3310,5,5128,12,5134,5,5220,12,5224,5,5481,12,5485,5,5586,12,5589,5,5731,12,5737,5,5742,12,5748,5,5753,12,7153,7i,7157,12,8013,7i,8017,12,8500,7i,8503,12,8506,7i,8509,12,8512,7i,10329,11,10335,7i,10422,11L,10428,7i,10590,11,10594,11W,10598,11,10775,11W,10779,11L,10783,11W,10869,11L|
|
|
193
|
+
|
|
194
|
+
|oni2_data=1029,1077,1124,1171,1219,1266,1314,1361,1408,1456,1503,1550,1598,1645,1740,2829,3350,3635,3729,4108,4392,4487,5648|left2_data=248,437,816,864,3232,3410,3469,4132,4369,4440,4464,4511,5056,5506|leftdia2_data=627,650,698,1764,1811,1835,1882,2048,2214,2261,2320,2912,3220,3445,3540,4179,4392,4606,4629,4653,4677,4842,4914,4937,4961,4985,5008,5032,5387,5423,5612|down2_data=342,532,792,828,1953,2000,2016,2367,3196,3244,3398,3481,3540,3658,3682,3694,3706,3729,4144,4345,4381,4452,4523,4546,4570,4594,5079,5103,5127,5150,5174,5198,5221,5292,5328,5517|space2_data=721,745,1006,1053,1148,1195,1242,1258,1385,1432,1479,1527,1574,2119,2225,2308,3433,3457,3564,3587,3599,3611,3635,4191,4404,4606,5245,5375,5411,5482|up2_data=295,485,864,1085,1171,1274,1456,1562,1621,1637,1977,2032,2142,2202,2237,2261,2356,3208,3256,3386,3492,3516,4156,4357,4511,4535,4558,4582,5281,5316,5340,5435,5553,5577,5589|rightdia2_data=674,769,1069,1160,1444,1539,1653,1787,1858,1906,2119,2308,2900,3185,3421,4203,4617,4641,4665,4689,4854,5364,5399,5458,5494,5600|right2_data=390,579,840,1100,1183,1467,1550,2142,2190,2237,3374,3504,5269,5304,5340,5529|sleftdia2_data=1006,1053,1100,1148,1195,1242,1290,1337,2166,2332,2486,2711,2948,3042,3090,3339,3942,4085,4306,4487,4748,4866|sleft2_data=887,982,1385,1432,1479,1527,1574,1621,1716,1929,2095,2296,2498,2545,2687,2746,2806,2889,2983,3019,3114,3753,3777,3789,3824,3931,3990,4061,4250,4321,4700,4736,4760|sdown2_data=911,946,1314,1669,1692,2071,2285,2557,2600,2735,2770,2794,2853,2971,3031,3125,3315,3812,3836,3895,3978,4227,4321,4416,4724,4795,4819|sup2_data=935,958,2095,2474,2569,2585,3007,3848,3871,3883,4712,4807,4831|sright2_data=887,982,1290,1692,1835,2071,2285,2379,2395,2510,2758,2924,3137,3800,3919,3966,4073,4239,4314,4416,4700,4771|srightdia2_data=2411,2521,2782,2877,2995,3161,3279,3303,3327,3350,4014,4037,4274,4298,4748,4866,5624|foni2_data=|frzLeft2_data=|frzLdia2_data=|frzDown2_data=|frzSpace2_data=|frzUp2_data=|frzRdia2_data=|frzRight2_data=|sfrzLdia2_data=|sfrzLeft2_data=|sfrzDown2_data=2427,2450,2652,2669|sfrzUp2_data=4890,4985|sfrzRight2_data=2616,2634|sfrzRdia2_data=|speed2_change=|boost2_data=|color2_data=200,30,#00ffcc,200,31,#339999,200,34,#cc99ff,200,35,#9966ff|
|
|
195
|
+
|
|
196
|
+
|keyGroupOrder=11L,5,12,7i|
|
|
197
|
+
|
|
198
|
+
|word_data=
|
|
199
|
+
575,2,[right]
|
|
200
|
+
575,2,[fadein]
|
|
201
|
+
575,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ff99">11Lkey</span></b>,
|
|
202
|
+
3292,2,[fadeout],
|
|
203
|
+
3312,2,[fadein]
|
|
204
|
+
3312,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#ffcc99">5key</span></b>,
|
|
205
|
+
5733,2,[fadeout],
|
|
206
|
+
5753,2,[fadein]
|
|
207
|
+
5753,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ffff">12key</span></b>,
|
|
208
|
+
8492,2,[fadeout],
|
|
209
|
+
8512,2,[fadein]
|
|
210
|
+
8512,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#ffff66">7ikey</span></b>,
|
|
211
|
+
10578,2,[fadeout],
|
|
212
|
+
10598,2,[fadein]
|
|
213
|
+
10598,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ffcc">11key</span></b>,
|
|
214
|
+
10763,2,[fadeout],
|
|
215
|
+
10783,2,[fadein]
|
|
216
|
+
10783,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#9999ff">11Wkey</span></b>,
|
|
217
|
+
10849,2,[fadeout],
|
|
218
|
+
10869,2,[fadein]
|
|
219
|
+
10869,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ff99">11Lkey</span></b>,
|
|
220
|
+
10959,2,,
|
|
221
|
+
|
|
|
222
|
+
|wordA_data=
|
|
223
|
+
575,2,[right]
|
|
224
|
+
575,2,[fadein]
|
|
225
|
+
575,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ffcc">11key</span></b>,
|
|
226
|
+
3292,2,[fadeout],
|
|
227
|
+
3312,2,[fadein]
|
|
228
|
+
3312,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#ff99cc">5gkey</span></b>,
|
|
229
|
+
5733,2,[fadeout],
|
|
230
|
+
5753,2,[fadein]
|
|
231
|
+
5753,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#ffffff">12ikey</span></b>,
|
|
232
|
+
8492,2,[fadeout],
|
|
233
|
+
8512,2,[fadein]
|
|
234
|
+
8512,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#ff9999">9vkey</span></b>,
|
|
235
|
+
10578,2,[fadeout],
|
|
236
|
+
10598,2,[fadein]
|
|
237
|
+
10598,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ff99">11Lkey</span></b>,
|
|
238
|
+
10763,2,[fadeout],
|
|
239
|
+
10783,2,[fadein]
|
|
240
|
+
10783,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#9999ff">11Wkey</span></b>,
|
|
241
|
+
10849,2,[fadeout],
|
|
242
|
+
10869,2,[fadein]
|
|
243
|
+
10869,2,<br><b> <span style="color:#ffffff">KeysForm</span> <span style="color:#99ffcc">11key</span></b>,
|
|
244
|
+
10959,2,,
|
|
245
|
+
|
|
|
246
|
+
|
|
247
|
+
|tuning=ティックル|
|
|
248
|
+
'>
|
|
249
|
+
<div id="canvas-frame">
|
|
250
|
+
</div>
|
|
251
|
+
<hr>
|
|
252
|
+
</td>
|
|
253
|
+
</tr>
|
|
254
|
+
</table>
|
|
255
|
+
</body>
|
|
256
|
+
</html>
|
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 : 2023/
|
|
7
|
+
* Revised : 2023/02/14
|
|
8
8
|
*
|
|
9
9
|
* https://github.com/cwtickle/danoniplus
|
|
10
10
|
*/
|
|
11
|
-
const g_version = `Ver
|
|
12
|
-
const g_revisedDate = `2023/
|
|
11
|
+
const g_version = `Ver 30.1.1`;
|
|
12
|
+
const g_revisedDate = `2023/02/14`;
|
|
13
13
|
const g_alphaVersion = ``;
|
|
14
14
|
|
|
15
15
|
// カスタム用バージョン (danoni_custom.js 等で指定可)
|
|
@@ -224,6 +224,19 @@ const setAttrs = (_baseObj, { ...rest } = {}) =>
|
|
|
224
224
|
*/
|
|
225
225
|
const getNumAttr = (_baseObj, _attrkey) => parseFloat(_baseObj.getAttribute(_attrkey));
|
|
226
226
|
|
|
227
|
+
/**
|
|
228
|
+
* 文字列に埋め込まれた変数を展開
|
|
229
|
+
* @param {string} _str
|
|
230
|
+
*/
|
|
231
|
+
const convertStrToVal = _str => {
|
|
232
|
+
const strs = _str.split(`}`).join(`{`).split(`{`);
|
|
233
|
+
let convStrs = ``;
|
|
234
|
+
for (let j = 0; j < strs.length; j += 2) {
|
|
235
|
+
convStrs += escapeHtmlForEnabledTag(strs[j]);
|
|
236
|
+
convStrs += setVal(strs[j + 1], ``, C_TYP_CALC);
|
|
237
|
+
}
|
|
238
|
+
return convStrs;
|
|
239
|
+
};
|
|
227
240
|
|
|
228
241
|
/*-----------------------------------------------------------*/
|
|
229
242
|
/* 値や配列のチェック・変換 */
|
|
@@ -1445,14 +1458,19 @@ const makeSpriteData = (_data, _calcFrame = _frame => _frame) => {
|
|
|
1445
1458
|
const tmpObj = {
|
|
1446
1459
|
path: escapeHtml(tmpSpriteData[2] ?? ``, g_escapeStr.escapeCode), // 画像パス or テキスト
|
|
1447
1460
|
class: escapeHtml(tmpSpriteData[3] ?? ``), // CSSクラス
|
|
1448
|
-
left: setVal(tmpSpriteData[4], 0
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1461
|
+
left: setVal(tmpSpriteData[4], `0`).includes(`{`) ?
|
|
1462
|
+
`${setVal(tmpSpriteData[4], 0)}` : `{${setVal(tmpSpriteData[4], 0)}}`, // X座標
|
|
1463
|
+
top: setVal(tmpSpriteData[5], `0`).includes(`{`) ?
|
|
1464
|
+
`${setVal(tmpSpriteData[5], 0)}` : `{${setVal(tmpSpriteData[5], 0)}}`, // Y座標
|
|
1465
|
+
width: `${setIntVal(tmpSpriteData[6])}`, // spanタグの場合は font-size
|
|
1466
|
+
height: `${escapeHtml(tmpSpriteData[7] ?? ``)}`, // spanタグの場合は color(文字列可)
|
|
1452
1467
|
opacity: setVal(tmpSpriteData[8], 1, C_TYP_FLOAT),
|
|
1453
1468
|
animationName: escapeHtml(setVal(tmpSpriteData[9], C_DIS_NONE)),
|
|
1454
1469
|
animationDuration: setIntVal(tmpSpriteData[10]) / g_fps,
|
|
1455
1470
|
};
|
|
1471
|
+
if (setVal(tmpSpriteData[11], g_presetObj.animationFillMode) !== undefined) {
|
|
1472
|
+
tmpObj.animationFillMode = setVal(tmpSpriteData[11], g_presetObj.animationFillMode);
|
|
1473
|
+
}
|
|
1456
1474
|
if (g_headerObj.autoPreload) {
|
|
1457
1475
|
if (checkImage(tmpObj.path)) {
|
|
1458
1476
|
if (g_headerObj.syncBackPath) {
|
|
@@ -1468,15 +1486,38 @@ const makeSpriteData = (_data, _calcFrame = _frame => _frame) => {
|
|
|
1468
1486
|
checkDuplicatedObjects(spriteData[tmpFrame]);
|
|
1469
1487
|
|
|
1470
1488
|
const emptyPatterns = [``, `[loop]`, `[jump]`];
|
|
1489
|
+
const colorObjFlg = tmpSpriteData[2]?.startsWith(`[c]`) || false;
|
|
1471
1490
|
spriteData[tmpFrame][addFrame] = {
|
|
1472
1491
|
depth: tmpDepth,
|
|
1473
|
-
command: tmpObj.path,
|
|
1474
|
-
jumpFrame: tmpObj.class,
|
|
1475
|
-
maxLoop: tmpObj.left,
|
|
1476
|
-
animationName: tmpObj.animationName,
|
|
1477
|
-
htmlText: emptyPatterns.includes(tmpObj.path) ?
|
|
1478
|
-
`` : (checkImage(tmpObj.path) ? makeSpriteImage(tmpObj) : makeSpriteText(tmpObj)),
|
|
1479
1492
|
};
|
|
1493
|
+
|
|
1494
|
+
if (colorObjFlg) {
|
|
1495
|
+
// [c]始まりの場合、カラーオブジェクト用の作成準備を行う
|
|
1496
|
+
const data = tmpObj.path.slice(`[c]`.length).split(`/`);
|
|
1497
|
+
spriteData[tmpFrame][addFrame].colorObjInfo = {
|
|
1498
|
+
x: tmpObj.left, y: tmpObj.top, w: tmpObj.width, h: tmpObj.height,
|
|
1499
|
+
rotate: setVal(data[0], `0`), opacity: tmpObj.opacity,
|
|
1500
|
+
background: makeColorGradation(setVal(data[1], `#ffffff`), { _defaultColorgrd: false }),
|
|
1501
|
+
animationName: tmpObj.animationName,
|
|
1502
|
+
animationDuration: `${tmpObj.animationDuration}s`,
|
|
1503
|
+
};
|
|
1504
|
+
spriteData[tmpFrame][addFrame].colorObjId = `${tmpFrame}_${addFrame}`;
|
|
1505
|
+
spriteData[tmpFrame][addFrame].colorObjClass = setVal(tmpObj.class, undefined);
|
|
1506
|
+
if (tmpObj.animationFillMode !== undefined) {
|
|
1507
|
+
spriteData[tmpFrame][addFrame].colorObjInfo.animationFillMode = tmpObj.animationFillMode;
|
|
1508
|
+
}
|
|
1509
|
+
|
|
1510
|
+
} else if (emptyPatterns.includes(tmpObj.path)) {
|
|
1511
|
+
// ループ、フレームジャンプ、空の場合の処理
|
|
1512
|
+
spriteData[tmpFrame][addFrame].command = tmpObj.path;
|
|
1513
|
+
spriteData[tmpFrame][addFrame].jumpFrame = tmpObj.class;
|
|
1514
|
+
spriteData[tmpFrame][addFrame].maxLoop = tmpObj.left;
|
|
1515
|
+
spriteData[tmpFrame][addFrame].htmlText = ``;
|
|
1516
|
+
} else {
|
|
1517
|
+
// それ以外の画像、テキストの場合
|
|
1518
|
+
spriteData[tmpFrame][addFrame].animationName = tmpObj.animationName;
|
|
1519
|
+
spriteData[tmpFrame][addFrame].htmlText = (checkImage(tmpObj.path) ? makeSpriteImage(tmpObj) : makeSpriteText(tmpObj));
|
|
1520
|
+
}
|
|
1480
1521
|
}
|
|
1481
1522
|
});
|
|
1482
1523
|
|
|
@@ -1517,7 +1558,16 @@ const drawBaseSpriteData = (_spriteData, _name, _condition = true) => {
|
|
|
1517
1558
|
}
|
|
1518
1559
|
} else {
|
|
1519
1560
|
if (_condition) {
|
|
1520
|
-
|
|
1561
|
+
if (_spriteData.colorObjInfo !== undefined) {
|
|
1562
|
+
const colorObjClass = _spriteData.colorObjClass?.split(`/`) ?? [];
|
|
1563
|
+
const id = `${_name}${_spriteData.depth}${_spriteData.colorObjId}`;
|
|
1564
|
+
[`x`, `y`, `w`, `h`].forEach(val => _spriteData.colorObjInfo[val] = convertStrToVal(_spriteData.colorObjInfo[val]));
|
|
1565
|
+
baseSprite.appendChild(
|
|
1566
|
+
createColorObject2(id, _spriteData.colorObjInfo, ...colorObjClass)
|
|
1567
|
+
);
|
|
1568
|
+
} else {
|
|
1569
|
+
baseSprite.innerHTML = convertStrToVal(_spriteData.htmlText);
|
|
1570
|
+
}
|
|
1521
1571
|
}
|
|
1522
1572
|
}
|
|
1523
1573
|
};
|
|
@@ -2799,6 +2849,14 @@ const headerConvert = _dosObj => {
|
|
|
2799
2849
|
obj.preloadImages = _dosObj.preloadImages.split(`,`).filter(image => hasVal(image)).map(preloadImage => preloadImage);
|
|
2800
2850
|
}
|
|
2801
2851
|
|
|
2852
|
+
// 初期表示する部分キーの設定
|
|
2853
|
+
obj.keyGroupOrder = [];
|
|
2854
|
+
_dosObj.keyGroupOrder?.split(`$`).forEach((val, j) => {
|
|
2855
|
+
if (val !== ``) {
|
|
2856
|
+
obj.keyGroupOrder[j] = val.split(`,`);
|
|
2857
|
+
}
|
|
2858
|
+
});
|
|
2859
|
+
|
|
2802
2860
|
// 最終演出表示有無(noneで無効化)
|
|
2803
2861
|
obj.finishView = _dosObj.finishView ?? ``;
|
|
2804
2862
|
|
|
@@ -3385,6 +3443,7 @@ const keysConvert = (_dosObj, { keyExtraList = _dosObj.keyExtraList.split(`,`) }
|
|
|
3385
3443
|
const toFloat = _num => parseFloat(_num);
|
|
3386
3444
|
const toStringOrNumber = _str => isNaN(Number(_str)) ? _str : toNumber(_str);
|
|
3387
3445
|
const toSplitArray = _str => _str.split(`/`).map(n => toNumber(n));
|
|
3446
|
+
const toSplitArrayStr = _str => _str.split(`/`).map(n => n);
|
|
3388
3447
|
|
|
3389
3448
|
/**
|
|
3390
3449
|
* 新キー用複合パラメータ
|
|
@@ -3614,6 +3673,9 @@ const keysConvert = (_dosObj, { keyExtraList = _dosObj.keyExtraList.split(`,`) }
|
|
|
3614
3673
|
// シャッフルグループ (shuffleX_Y)
|
|
3615
3674
|
newKeyTripleParam(newKey, `shuffle`);
|
|
3616
3675
|
|
|
3676
|
+
// キーグループ (keyGroupX_Y)
|
|
3677
|
+
newKeyMultiParam(newKey, `keyGroup`, toSplitArrayStr);
|
|
3678
|
+
|
|
3617
3679
|
// スクロールパターン (scrollX_Y)
|
|
3618
3680
|
// |scroll(newKey)=Cross::1,1,-1,-1,-1,1,1/Split::1,1,1,-1,-1,-1,-1$...|
|
|
3619
3681
|
newKeyPairParam(newKey, `scroll`, `scrollDir`, `---`, 1);
|
|
@@ -3859,13 +3921,7 @@ const titleInit = _ => {
|
|
|
3859
3921
|
if (g_headerObj.commentVal !== ``) {
|
|
3860
3922
|
|
|
3861
3923
|
// コメント文の加工
|
|
3862
|
-
const
|
|
3863
|
-
let convCommentVal = ``;
|
|
3864
|
-
for (let j = 0; j < comments.length; j += 2) {
|
|
3865
|
-
convCommentVal += escapeHtmlForEnabledTag(comments[j]);
|
|
3866
|
-
convCommentVal += setVal(comments[j + 1], ``, C_TYP_CALC);
|
|
3867
|
-
}
|
|
3868
|
-
|
|
3924
|
+
const convCommentVal = convertStrToVal(g_headerObj.commentVal);
|
|
3869
3925
|
if (g_headerObj.commentExternal) {
|
|
3870
3926
|
if (document.querySelector(`#commentArea`) !== null) {
|
|
3871
3927
|
commentArea.innerHTML = convCommentVal;
|
|
@@ -4992,6 +5048,7 @@ const createOptionWindow = _sprite => {
|
|
|
4992
5048
|
if (isNotSameKey && g_keyObj.prevKey !== `Dummy`) {
|
|
4993
5049
|
// キーパターン初期化
|
|
4994
5050
|
g_keyObj.currentPtn = 0;
|
|
5051
|
+
g_keycons.keySwitchNum = 0;
|
|
4995
5052
|
}
|
|
4996
5053
|
const hasKeyStorage = localStorage.getItem(`danonicw-${g_keyObj.currentKey}k`);
|
|
4997
5054
|
let storageObj, addKey = ``;
|
|
@@ -5576,8 +5633,7 @@ const createSettingsDisplayWindow = _sprite => {
|
|
|
5576
5633
|
|
|
5577
5634
|
const dispAppearanceSlider = _ => {
|
|
5578
5635
|
[`lblAppearancePos`, `lblAppearanceBar`, `lnkLockBtn`, `lnkfilterLine`].forEach(obj =>
|
|
5579
|
-
|
|
5580
|
-
g_appearanceRanges.includes(g_stateObj.appearance) ? `Visible` : `Hidden`
|
|
5636
|
+
$id(obj).visibility = g_appearanceRanges.includes(g_stateObj.appearance) ? `Visible` : `Hidden`
|
|
5581
5637
|
);
|
|
5582
5638
|
};
|
|
5583
5639
|
dispAppearanceSlider();
|
|
@@ -5680,6 +5736,9 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
5680
5736
|
const maxLeftPos = Math.max(divideCnt, posMax - divideCnt - 2) / 2;
|
|
5681
5737
|
const maxLeftX = Math.min(0, (kWidth - C_ARW_WIDTH) / 2 - maxLeftPos * g_keyObj.blank);
|
|
5682
5738
|
|
|
5739
|
+
g_keycons.cursorNumList = [...Array(keyNum).keys()].map(i => i);
|
|
5740
|
+
const configKeyGroupList = g_headerObj.keyGroupOrder[g_stateObj.scoreId] ?? tkObj.keyGroupList;
|
|
5741
|
+
|
|
5683
5742
|
/**
|
|
5684
5743
|
* keyconSpriteのスクロール位置調整
|
|
5685
5744
|
* @param {number} _targetX
|
|
@@ -5804,6 +5863,7 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
5804
5863
|
createCss2Button(`keycon${j}_${k}`, g_kCd[g_keyObj[`keyCtrl${keyCtrlPtn}`][j][k]], _ => {
|
|
5805
5864
|
g_currentj = j;
|
|
5806
5865
|
g_currentk = k;
|
|
5866
|
+
g_keycons.cursorNum = g_keycons.cursorNumList.findIndex(val => val === g_currentj);
|
|
5807
5867
|
setKeyConfigCursor();
|
|
5808
5868
|
}, {
|
|
5809
5869
|
x: keyconX, y: 50 + C_KYC_REPHEIGHT * k + keyconY,
|
|
@@ -5981,21 +6041,6 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
5981
6041
|
makeGroupButton(`color`, { cssName: g_cssObj.keyconfig_ColorType });
|
|
5982
6042
|
makeGroupButton(`shuffle`, { baseX: g_sWidth * 11 / 12 - 10, cssName: g_cssObj.settings_Shuffle });
|
|
5983
6043
|
|
|
5984
|
-
/**
|
|
5985
|
-
* 次のカーソルへ移動
|
|
5986
|
-
* @param {number} _pos
|
|
5987
|
-
*/
|
|
5988
|
-
const searchNextCursor = _pos => {
|
|
5989
|
-
for (let j = g_currentj; j < keyNum + g_currentj; j++) {
|
|
5990
|
-
if (g_keyObj[`keyCtrl${keyCtrlPtn}`][j % keyNum][_pos] !== undefined) {
|
|
5991
|
-
g_currentj = j % keyNum;
|
|
5992
|
-
g_currentk = _pos;
|
|
5993
|
-
return true;
|
|
5994
|
-
}
|
|
5995
|
-
}
|
|
5996
|
-
return false;
|
|
5997
|
-
};
|
|
5998
|
-
|
|
5999
6044
|
/**
|
|
6000
6045
|
* カーソル位置の設定
|
|
6001
6046
|
*/
|
|
@@ -6017,25 +6062,19 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6017
6062
|
};
|
|
6018
6063
|
|
|
6019
6064
|
/**
|
|
6020
|
-
*
|
|
6021
|
-
* @param {number}
|
|
6022
|
-
* @param {boolean} _resetCursorFlg
|
|
6065
|
+
* カーソル位置の変更
|
|
6066
|
+
* @param {number} _nextj
|
|
6023
6067
|
*/
|
|
6024
|
-
const
|
|
6025
|
-
|
|
6026
|
-
|
|
6027
|
-
|
|
6028
|
-
|
|
6029
|
-
|
|
6030
|
-
|
|
6031
|
-
} else {
|
|
6032
|
-
if (g_keyObj[`keyCtrl${keyCtrlPtn}`][g_currentj][_resetPos] === undefined) {
|
|
6033
|
-
searchNextCursor(_resetPos);
|
|
6034
|
-
} else {
|
|
6035
|
-
g_currentk = _resetPos;
|
|
6036
|
-
}
|
|
6068
|
+
const changeConfigCursor = (_nextj = ++g_keycons.cursorNum % g_keycons.cursorNumList.length) => {
|
|
6069
|
+
g_keycons.cursorNum = _nextj;
|
|
6070
|
+
|
|
6071
|
+
g_currentj = g_keycons.cursorNumList[_nextj];
|
|
6072
|
+
g_currentk = 0;
|
|
6073
|
+
if (g_kcType === `Replaced` && (g_keyObj[`keyCtrl${keyCtrlPtn}`][g_currentj][1] !== undefined)) {
|
|
6074
|
+
g_currentk = 1;
|
|
6037
6075
|
}
|
|
6038
6076
|
setKeyConfigCursor();
|
|
6077
|
+
keyconSprite.scrollLeft = - maxLeftX;
|
|
6039
6078
|
};
|
|
6040
6079
|
|
|
6041
6080
|
const getNextNum = (_scrollNum, _groupName, _target) => {
|
|
@@ -6049,10 +6088,51 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6049
6088
|
*/
|
|
6050
6089
|
const setConfigType = (_scrollNum = 1) => {
|
|
6051
6090
|
g_kcType = g_keycons.configTypes[getNextNum(_scrollNum, `configTypes`, g_kcType)];
|
|
6052
|
-
|
|
6091
|
+
changeConfigCursor(g_keycons.cursorNum);
|
|
6053
6092
|
lnkKcType.textContent = getStgDetailName(g_kcType);
|
|
6054
6093
|
};
|
|
6055
6094
|
|
|
6095
|
+
/**
|
|
6096
|
+
* 一部のキーコンフィグを表示する
|
|
6097
|
+
* (キーグループ毎にフィルターされたもののみを表示する)
|
|
6098
|
+
* @param {number} _num
|
|
6099
|
+
*/
|
|
6100
|
+
const appearConfigSteps = _num => {
|
|
6101
|
+
|
|
6102
|
+
const appearConfigView = (_j, _display) => {
|
|
6103
|
+
$id(`arrow${_j}`).display = _display;
|
|
6104
|
+
$id(`arrowShadow${_j}`).display = _display;
|
|
6105
|
+
$id(`color${_j}`).display = _display;
|
|
6106
|
+
if (document.getElementById(`sArrow${_j}`) !== null) {
|
|
6107
|
+
$id(`sArrow${_j}`).display = _display;
|
|
6108
|
+
}
|
|
6109
|
+
const ctrlPtn = g_keyObj[`keyCtrl${g_headerObj.keyLabels[g_stateObj.scoreId]}_${g_keyObj.currentPtn}`][_j];
|
|
6110
|
+
for (let k = 0; k < ctrlPtn.length; k++) {
|
|
6111
|
+
$id(`keycon${_j}_${k}`).display = _display;
|
|
6112
|
+
}
|
|
6113
|
+
};
|
|
6114
|
+
|
|
6115
|
+
g_keycons.keySwitchNum = _num;
|
|
6116
|
+
g_keycons.cursorNumList = [];
|
|
6117
|
+
for (let j = 0; j < keyNum; j++) {
|
|
6118
|
+
appearConfigView(j, C_DIS_NONE);
|
|
6119
|
+
|
|
6120
|
+
if (tkObj.keyGroupMaps[j].includes(configKeyGroupList[_num])) {
|
|
6121
|
+
g_keycons.cursorNumList.push(j);
|
|
6122
|
+
appearConfigView(j, C_DIS_INHERIT);
|
|
6123
|
+
}
|
|
6124
|
+
}
|
|
6125
|
+
changeConfigCursor(0);
|
|
6126
|
+
|
|
6127
|
+
// keySwitchボタンを一旦非選択にして、選択中のものを再度色付け
|
|
6128
|
+
if (configKeyGroupList.length > 1) {
|
|
6129
|
+
for (let j = 0; j < configKeyGroupList.length; j++) {
|
|
6130
|
+
document.getElementById(`key${j}`).classList.replace(g_cssObj.button_Next, g_cssObj.button_Mini);
|
|
6131
|
+
}
|
|
6132
|
+
document.getElementById(`key${_num}`).classList.replace(g_cssObj.button_Mini, g_cssObj.button_Next);
|
|
6133
|
+
}
|
|
6134
|
+
};
|
|
6135
|
+
|
|
6056
6136
|
/**
|
|
6057
6137
|
* ColorPickerの色切替
|
|
6058
6138
|
* @param {number} _j
|
|
@@ -6062,9 +6142,9 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6062
6142
|
const changeColorPicker = (_j, _type, _color) => {
|
|
6063
6143
|
if (_color !== ``) {
|
|
6064
6144
|
document.getElementById(`pick${_type}${_j}`).value = _color.slice(0, 7);
|
|
6065
|
-
|
|
6145
|
+
$id(`pick${_type}${_j}`).display = C_DIS_INHERIT;
|
|
6066
6146
|
} else {
|
|
6067
|
-
|
|
6147
|
+
$id(`pick${_type}${_j}`).display = C_DIS_NONE;
|
|
6068
6148
|
}
|
|
6069
6149
|
};
|
|
6070
6150
|
|
|
@@ -6213,6 +6293,22 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6213
6293
|
// ユーザカスタムイベント(初期)
|
|
6214
6294
|
g_customJsObj.keyconfig.forEach(func => func());
|
|
6215
6295
|
|
|
6296
|
+
// 部分キー表示用ボタン描画
|
|
6297
|
+
if (configKeyGroupList.length > 1) {
|
|
6298
|
+
multiAppend(divRoot,
|
|
6299
|
+
createDivCss2Label(`lblkey`, `KeySwitch`, { x: g_sWidth - 80, y: 90, w: 60, h: 20, siz: 14 }));
|
|
6300
|
+
configKeyGroupList.forEach((val, j) => {
|
|
6301
|
+
divRoot.appendChild(
|
|
6302
|
+
createCss2Button(`key${j}`, `${j + 1}`, _ => {
|
|
6303
|
+
appearConfigSteps(j);
|
|
6304
|
+
}, { x: g_sWidth - 60, y: 110 + j * 20, w: 50, h: 20, siz: 14 }, g_cssObj.button_Mini),
|
|
6305
|
+
);
|
|
6306
|
+
});
|
|
6307
|
+
}
|
|
6308
|
+
|
|
6309
|
+
// カーソル位置の初期化
|
|
6310
|
+
appearConfigSteps(g_keycons.keySwitchNum);
|
|
6311
|
+
|
|
6216
6312
|
// ラベル・ボタン描画
|
|
6217
6313
|
multiAppend(divRoot,
|
|
6218
6314
|
|
|
@@ -6241,14 +6337,17 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6241
6337
|
// キーコンフィグリセットボタン描画
|
|
6242
6338
|
createCss2Button(`btnReset`, g_lblNameObj.b_reset, _ => {
|
|
6243
6339
|
if (window.confirm(g_msgObj.keyResetConfirm)) {
|
|
6244
|
-
|
|
6340
|
+
const keyCtrlPtn = `${g_keyObj.currentKey}_${g_keyObj.currentPtn}`;
|
|
6341
|
+
|
|
6342
|
+
for (let m = 0; m < g_keycons.cursorNumList.length; m++) {
|
|
6343
|
+
const j = g_keycons.cursorNumList[m];
|
|
6245
6344
|
for (let k = 0; k < g_keyObj[`keyCtrl${keyCtrlPtn}`][j].length; k++) {
|
|
6246
6345
|
g_keyObj[`keyCtrl${keyCtrlPtn}`][j][k] = setIntVal(g_keyObj[`keyCtrl${keyCtrlPtn}d`][j][k]);
|
|
6247
6346
|
document.querySelector(`#keycon${j}_${k}`).textContent = g_kCd[g_keyObj[`keyCtrl${keyCtrlPtn}`][j][k]];
|
|
6248
6347
|
changeKeyConfigColor(j, k, g_keyObj.currentPtn === -1 ? g_cssObj.keyconfig_Defaultkey : g_cssObj.title_base);
|
|
6249
6348
|
}
|
|
6250
6349
|
}
|
|
6251
|
-
|
|
6350
|
+
changeConfigCursor(0);
|
|
6252
6351
|
keyconSprite.scrollLeft = - maxLeftX;
|
|
6253
6352
|
}
|
|
6254
6353
|
}, g_lblPosObj.btnKcReset, g_cssObj.button_Reset),
|
|
@@ -6296,20 +6395,8 @@ const keyConfigInit = (_kcType = g_kcType) => {
|
|
|
6296
6395
|
g_currentk++;
|
|
6297
6396
|
cursor.style.top = `${parseInt(cursor.style.top) + C_KYC_REPHEIGHT}px`;
|
|
6298
6397
|
|
|
6299
|
-
} else if (g_currentj < keyNum - 1) {
|
|
6300
|
-
// 他の代替キーが存在せず、次の矢印がある場合
|
|
6301
|
-
g_currentj++;
|
|
6302
|
-
g_currentk = 0;
|
|
6303
|
-
|
|
6304
|
-
// 代替キーのみの場合は次の代替キーがあるキーを探す
|
|
6305
|
-
if (g_kcType === `Replaced`) {
|
|
6306
|
-
searchNextCursor(1);
|
|
6307
|
-
}
|
|
6308
|
-
setKeyConfigCursor();
|
|
6309
|
-
|
|
6310
6398
|
} else {
|
|
6311
|
-
|
|
6312
|
-
resetCursor(Number(g_kcType === `Replaced`));
|
|
6399
|
+
changeConfigCursor();
|
|
6313
6400
|
}
|
|
6314
6401
|
});
|
|
6315
6402
|
|
|
@@ -6337,8 +6424,13 @@ const getKeyInfo = _ => {
|
|
|
6337
6424
|
const posMax = (g_keyObj[`divMax${keyCtrlPtn}`] !== undefined ?
|
|
6338
6425
|
g_keyObj[`divMax${keyCtrlPtn}`] : g_keyObj[`pos${keyCtrlPtn}`][keyNum - 1] + 1);
|
|
6339
6426
|
const divideCnt = g_keyObj[`div${keyCtrlPtn}`] - 1;
|
|
6427
|
+
const keyGroupMaps = setVal(g_keyObj[`keyGroup${keyCtrlPtn}`], [...Array(keyNum)].fill([0]), C_TYP_STRING);
|
|
6428
|
+
const keyGroupList = makeDedupliArray(keyGroupMaps.flat()).sort((a, b) => parseInt(a) - parseInt(b));
|
|
6340
6429
|
|
|
6341
|
-
return {
|
|
6430
|
+
return {
|
|
6431
|
+
keyCtrlPtn: keyCtrlPtn, keyNum: keyNum, posMax: posMax, divideCnt: divideCnt,
|
|
6432
|
+
keyGroupMaps: keyGroupMaps, keyGroupList: keyGroupList,
|
|
6433
|
+
};
|
|
6342
6434
|
};
|
|
6343
6435
|
|
|
6344
6436
|
/**
|
|
@@ -7056,6 +7148,29 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7056
7148
|
_dosObj[`${_header}${_type}_data`]
|
|
7057
7149
|
];
|
|
7058
7150
|
|
|
7151
|
+
/**
|
|
7152
|
+
* 歌詞表示、背景・マスクデータの優先順取得
|
|
7153
|
+
* @returns
|
|
7154
|
+
*/
|
|
7155
|
+
const getPriorityHeader = _ => {
|
|
7156
|
+
const list = [];
|
|
7157
|
+
let type = ``;
|
|
7158
|
+
if (g_stateObj.scroll !== `---`) {
|
|
7159
|
+
type = `Alt`;
|
|
7160
|
+
} else if (g_stateObj.reverse === C_FLG_ON) {
|
|
7161
|
+
type = `Rev`;
|
|
7162
|
+
}
|
|
7163
|
+
if (hasVal(g_keyObj[`transKey${_keyCtrlPtn}`])) {
|
|
7164
|
+
list.push(`${type}A`);
|
|
7165
|
+
}
|
|
7166
|
+
if (type !== ``) {
|
|
7167
|
+
list.push(type);
|
|
7168
|
+
}
|
|
7169
|
+
list.push(``);
|
|
7170
|
+
|
|
7171
|
+
return list;
|
|
7172
|
+
};
|
|
7173
|
+
|
|
7059
7174
|
/**
|
|
7060
7175
|
* 歌詞データの分解
|
|
7061
7176
|
* @param {string} _scoreNo
|
|
@@ -7065,11 +7180,9 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7065
7180
|
let wordReverseFlg = false;
|
|
7066
7181
|
const divideCnt = getKeyInfo().divideCnt;
|
|
7067
7182
|
const addDataList = (_type = ``) => wordDataList.push(...getPriorityList(`word`, _type, _scoreNo));
|
|
7183
|
+
getPriorityHeader().forEach(val => addDataList(val));
|
|
7068
7184
|
|
|
7069
|
-
if (g_stateObj.
|
|
7070
|
-
addDataList(`Alt`);
|
|
7071
|
-
} else if (g_stateObj.reverse === C_FLG_ON) {
|
|
7072
|
-
addDataList(`Rev`);
|
|
7185
|
+
if (g_stateObj.reverse === C_FLG_ON) {
|
|
7073
7186
|
|
|
7074
7187
|
// wordRev_dataが指定されている場合はそのままの位置を採用
|
|
7075
7188
|
// word_dataのみ指定されている場合、下記ルールに従って設定
|
|
@@ -7082,7 +7195,6 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7082
7195
|
}
|
|
7083
7196
|
}
|
|
7084
7197
|
}
|
|
7085
|
-
addDataList();
|
|
7086
7198
|
|
|
7087
7199
|
const inputWordData = wordDataList.find((v) => v !== undefined);
|
|
7088
7200
|
return (inputWordData !== undefined ? makeSpriteWordData(inputWordData, wordReverseFlg) : [[], -1]);
|
|
@@ -7151,13 +7263,7 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7151
7263
|
const makeBackgroundData = (_header, _scoreNo) => {
|
|
7152
7264
|
const dataList = [];
|
|
7153
7265
|
const addDataList = (_type = ``) => dataList.push(...getPriorityList(_header, _type, _scoreNo));
|
|
7154
|
-
|
|
7155
|
-
if (g_stateObj.scroll !== `---`) {
|
|
7156
|
-
addDataList(`Alt`);
|
|
7157
|
-
} else if (g_stateObj.reverse === C_FLG_ON) {
|
|
7158
|
-
addDataList(`Rev`);
|
|
7159
|
-
}
|
|
7160
|
-
addDataList();
|
|
7266
|
+
getPriorityHeader().forEach(val => addDataList(val));
|
|
7161
7267
|
|
|
7162
7268
|
const data = dataList.find((v) => v !== undefined);
|
|
7163
7269
|
return (data !== undefined ? makeSpriteData(data, calcFrame) : [[], -1]);
|
|
@@ -7255,6 +7361,17 @@ const scoreConvert = (_dosObj, _scoreId, _preblankFrame, _dummyNo = ``,
|
|
|
7255
7361
|
});
|
|
7256
7362
|
}
|
|
7257
7363
|
|
|
7364
|
+
// キー変化定義
|
|
7365
|
+
obj.keychFrames = [];
|
|
7366
|
+
if (hasVal(_dosObj[`keych${setScoreIdHeader(g_stateObj.scoreId, g_stateObj.scoreLockFlg)}_data`])) {
|
|
7367
|
+
const keychdata = _dosObj[`keych${setScoreIdHeader(g_stateObj.scoreId, g_stateObj.scoreLockFlg)}_data`]?.split(`,`);
|
|
7368
|
+
obj.keychFrames = keychdata.filter((val, j) => j % 2 === 0);
|
|
7369
|
+
obj.keychTarget = keychdata.filter((val, j) => j % 2 === 1);
|
|
7370
|
+
} else {
|
|
7371
|
+
obj.keychFrames = [0];
|
|
7372
|
+
obj.keychTarget = [0];
|
|
7373
|
+
}
|
|
7374
|
+
|
|
7258
7375
|
return obj;
|
|
7259
7376
|
};
|
|
7260
7377
|
|
|
@@ -7958,6 +8075,9 @@ const getArrowSettings = _ => {
|
|
|
7958
8075
|
g_workObj.diffList = [];
|
|
7959
8076
|
g_workObj.mainEndTime = 0;
|
|
7960
8077
|
|
|
8078
|
+
g_workObj.keyGroupMaps = tkObj.keyGroupMaps;
|
|
8079
|
+
g_workObj.keyGroupList = tkObj.keyGroupList;
|
|
8080
|
+
|
|
7961
8081
|
const keyCtrlLen = g_workObj.keyCtrl.length;
|
|
7962
8082
|
g_workObj.keyCtrlN = [...Array(keyCtrlLen)].map(_ => []);
|
|
7963
8083
|
g_workObj.keyHitFlg = [...Array(keyCtrlLen)].map(_ => []);
|
|
@@ -8181,7 +8301,8 @@ const mainInit = _ => {
|
|
|
8181
8301
|
const dummyFrzCnts = [...Array(keyNum)].fill(0);
|
|
8182
8302
|
let speedCnts = 0;
|
|
8183
8303
|
let boostCnts = 0;
|
|
8184
|
-
|
|
8304
|
+
let keychCnts = 0;
|
|
8305
|
+
const stepZoneDisp = (g_stateObj.d_stepzone === C_FLG_OFF || g_settings.scrollFlat.includes(g_stateObj.scroll)) ? C_DIS_NONE : C_DIS_INHERIT;
|
|
8185
8306
|
|
|
8186
8307
|
for (let j = 0; j < keyNum; j++) {
|
|
8187
8308
|
const colorPos = g_keyObj[`color${keyCtrlPtn}`][j];
|
|
@@ -8202,6 +8323,8 @@ const mainInit = _ => {
|
|
|
8202
8323
|
);
|
|
8203
8324
|
}
|
|
8204
8325
|
|
|
8326
|
+
appearStepZone(j, C_DIS_NONE);
|
|
8327
|
+
|
|
8205
8328
|
// ステップゾーン
|
|
8206
8329
|
multiAppend(stepRoot,
|
|
8207
8330
|
|
|
@@ -8222,14 +8345,17 @@ const mainInit = _ => {
|
|
|
8222
8345
|
|
|
8223
8346
|
);
|
|
8224
8347
|
}
|
|
8225
|
-
if (g_stateObj.scroll
|
|
8348
|
+
if (g_settings.scrollFlat.includes(g_stateObj.scroll) && g_stateObj.d_stepzone === C_FLG_ON) {
|
|
8349
|
+
|
|
8350
|
+
// スクロール名に`R-`が含まれていればリバースと見做す
|
|
8351
|
+
const reverseFlg = g_stateObj.reverse === C_FLG_ON || g_stateObj.scroll.startsWith(`R-`);
|
|
8226
8352
|
|
|
8227
8353
|
// ステップゾーンの代わり
|
|
8228
8354
|
const lineY = [(C_ARW_WIDTH - g_stateObj.flatStepHeight) / 2, (C_ARW_WIDTH + g_stateObj.flatStepHeight) / 2];
|
|
8229
8355
|
lineY.forEach((y, j) => {
|
|
8230
8356
|
mainSprite.appendChild(
|
|
8231
8357
|
createColorObject2(`stepBar${j}`, {
|
|
8232
|
-
x: 0, y: C_STEP_Y + g_posObj.reverseStepY * Number(
|
|
8358
|
+
x: 0, y: C_STEP_Y + g_posObj.reverseStepY * Number(reverseFlg) + y,
|
|
8233
8359
|
w: g_headerObj.playingWidth - 50, h: 1, styleName: `lifeBar`,
|
|
8234
8360
|
}, g_cssObj.life_Failed)
|
|
8235
8361
|
);
|
|
@@ -8964,7 +9090,7 @@ const mainInit = _ => {
|
|
|
8964
9090
|
const boostCnt = currentArrow.boostCnt;
|
|
8965
9091
|
currentArrow.prevY = currentArrow.y;
|
|
8966
9092
|
currentArrow.y -= (g_workObj.currentSpeed * currentArrow.boostSpd + g_workObj.motionOnFrames[boostCnt] * currentArrow.boostDir) * currentArrow.dir;
|
|
8967
|
-
|
|
9093
|
+
$id(arrowName).top = `${currentArrow.y}px`;
|
|
8968
9094
|
currentArrow.boostCnt--;
|
|
8969
9095
|
}
|
|
8970
9096
|
judgeMotionFunc[`${_name}${g_stateObj.autoAll}`](_j, arrowName, --currentArrow.cnt);
|
|
@@ -9068,7 +9194,7 @@ const mainInit = _ => {
|
|
|
9068
9194
|
// 移動
|
|
9069
9195
|
if (g_workObj.currentSpeed !== 0) {
|
|
9070
9196
|
currentFrz.y -= movY + g_workObj.motionOnFrames[currentFrz.boostCnt] * currentFrz.dir * currentFrz.boostDir;
|
|
9071
|
-
|
|
9197
|
+
$id(frzName).top = `${currentFrz.y}px`;
|
|
9072
9198
|
currentFrz.boostCnt--;
|
|
9073
9199
|
}
|
|
9074
9200
|
currentFrz.cnt--;
|
|
@@ -9108,7 +9234,7 @@ const mainInit = _ => {
|
|
|
9108
9234
|
currentFrz.frzBarLength -= g_workObj.currentSpeed;
|
|
9109
9235
|
if (currentFrz.frzBarLength > 0) {
|
|
9110
9236
|
currentFrz.y -= movY;
|
|
9111
|
-
|
|
9237
|
+
$id(frzName).top = `${currentFrz.y}px`;
|
|
9112
9238
|
} else {
|
|
9113
9239
|
judgeObjDelete[_name](_j, frzName);
|
|
9114
9240
|
}
|
|
@@ -9195,6 +9321,14 @@ const mainInit = _ => {
|
|
|
9195
9321
|
|
|
9196
9322
|
});
|
|
9197
9323
|
|
|
9324
|
+
// キー変化
|
|
9325
|
+
while (currentFrame >= g_scoreObj.keychFrames[keychCnts]) {
|
|
9326
|
+
for (let j = 0; j < keyNum; j++) {
|
|
9327
|
+
appearKeyTypes(j, g_scoreObj.keychTarget[keychCnts]);
|
|
9328
|
+
}
|
|
9329
|
+
keychCnts++;
|
|
9330
|
+
}
|
|
9331
|
+
|
|
9198
9332
|
// ダミー矢印生成(背面に表示するため先に処理)
|
|
9199
9333
|
if (g_workObj.mkDummyArrow[currentFrame] !== undefined) {
|
|
9200
9334
|
g_workObj.mkDummyArrow[currentFrame].forEach(data =>
|
|
@@ -9422,6 +9556,25 @@ const makeCounterSymbol = (_id, _x, _class, _heightPos, _text, _display = C_DIS_
|
|
|
9422
9556
|
}, _class);
|
|
9423
9557
|
};
|
|
9424
9558
|
|
|
9559
|
+
/**
|
|
9560
|
+
* ステップゾーンの表示・非表示切替
|
|
9561
|
+
* @param {number} _j
|
|
9562
|
+
* @param {string} _display
|
|
9563
|
+
*/
|
|
9564
|
+
const appearStepZone = (_j, _display) => $id(`stepRoot${_j}`).display = _display;
|
|
9565
|
+
|
|
9566
|
+
/**
|
|
9567
|
+
* 部分キーのステップゾーン出現処理
|
|
9568
|
+
* @param {number} _j
|
|
9569
|
+
* @param {string} _target
|
|
9570
|
+
*/
|
|
9571
|
+
const appearKeyTypes = (_j, _target) => {
|
|
9572
|
+
appearStepZone(_j, C_DIS_NONE);
|
|
9573
|
+
if (g_workObj.keyGroupMaps[_j].includes(_target)) {
|
|
9574
|
+
appearStepZone(_j, C_DIS_INHERIT);
|
|
9575
|
+
}
|
|
9576
|
+
};
|
|
9577
|
+
|
|
9425
9578
|
// TODO: この部分を矢印塗りつぶし部分についても適用できるように関数を見直し
|
|
9426
9579
|
|
|
9427
9580
|
/**
|
|
@@ -9490,7 +9643,7 @@ const changeHitFrz = (_j, _k, _name) => {
|
|
|
9490
9643
|
|
|
9491
9644
|
// フリーズアロー位置の修正(ステップゾーン上に来るように)
|
|
9492
9645
|
const delFrzLength = parseFloat($id(`stepRoot${_j}`).top) - currentFrz.y;
|
|
9493
|
-
|
|
9646
|
+
$id(frzName).top = $id(`stepRoot${_j}`).top;
|
|
9494
9647
|
|
|
9495
9648
|
// 早押ししたboostCnt分のフリーズアロー終端位置の修正
|
|
9496
9649
|
const delFrzMotionLength = sumData(g_workObj.motionOnFrames.slice(0, currentFrz.boostCnt + 1));
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*
|
|
6
6
|
* Source by tickle
|
|
7
7
|
* Created : 2019/11/19
|
|
8
|
-
* Revised : 2023/
|
|
8
|
+
* Revised : 2023/02/14 (v30.1.1)
|
|
9
9
|
*
|
|
10
10
|
* https://github.com/cwtickle/danoniplus
|
|
11
11
|
*/
|
|
@@ -754,6 +754,7 @@ const g_settings = {
|
|
|
754
754
|
|
|
755
755
|
scrolls: [],
|
|
756
756
|
scrollNum: 0,
|
|
757
|
+
scrollFlat: [`Flat`, `R-Flat`],
|
|
757
758
|
|
|
758
759
|
shuffles: [C_FLG_OFF, `Mirror`, `Asym-Mirror`, `Random`, `Random+`, `S-Random`, `S-Random+`],
|
|
759
760
|
shuffleNum: 0,
|
|
@@ -847,6 +848,10 @@ const g_keycons = {
|
|
|
847
848
|
groupSelf: `S`,
|
|
848
849
|
|
|
849
850
|
groups: [`color`, `shuffle`],
|
|
851
|
+
|
|
852
|
+
cursorNumList: [],
|
|
853
|
+
cursorNum: 0,
|
|
854
|
+
keySwitchNum: 0,
|
|
850
855
|
};
|
|
851
856
|
|
|
852
857
|
let g_displays = [`stepZone`, `judgment`, `fastSlow`, `lifeGauge`, `score`, `musicInfo`, `filterLine`,
|
|
@@ -2577,7 +2582,7 @@ g_keycons.groups.forEach(type => {
|
|
|
2577
2582
|
const g_keyCopyLists = {
|
|
2578
2583
|
simpleDef: [`blank`, `scale`],
|
|
2579
2584
|
simple: [`div`, `divMax`, `blank`, `scale`, `keyRetry`, `keyTitleBack`, `transKey`, `scrollDir`, `assistPos`],
|
|
2580
|
-
multiple: [`chara`, `color`, `stepRtn`, `pos`, `shuffle`],
|
|
2585
|
+
multiple: [`chara`, `color`, `stepRtn`, `pos`, `shuffle`, `keyGroup`],
|
|
2581
2586
|
};
|
|
2582
2587
|
|
|
2583
2588
|
// タイトル画面関連のリスト群
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
/**
|
|
3
3
|
* Dancing☆Onigiri 設定用jsファイル
|
|
4
|
-
* Template Update:
|
|
4
|
+
* Template Update: 2023/02/14 (v30.1.1)
|
|
5
5
|
*
|
|
6
6
|
* このファイルでは、作品全体に対しての初期設定を行うことができます。
|
|
7
7
|
* 譜面データ側で個別に同様の項目が設定されている場合は、譜面データ側の設定が優先されます。
|
|
@@ -187,6 +187,14 @@ g_presetObj.customDesignUse = {
|
|
|
187
187
|
*/
|
|
188
188
|
//g_presetObj.customImageList = [`ball`, `square`];
|
|
189
189
|
|
|
190
|
+
/**
|
|
191
|
+
* 背景・マスクモーションで利用する「animationFillMode」のデフォルト値
|
|
192
|
+
* - none : 初期画像へ戻す
|
|
193
|
+
* - forwards : アニメーション100%の状態を維持(デフォルト)
|
|
194
|
+
* - backwards : アニメーション 0%の状態に戻す
|
|
195
|
+
*/
|
|
196
|
+
//g_presetObj.animationFillMode = `none`;
|
|
197
|
+
|
|
190
198
|
|
|
191
199
|
/*
|
|
192
200
|
------------------------------------------------------------------------
|