donbg band: replay every element of the original movie #11

Merged
Yonokid merged 7 commits from GanYiZhong/YataiDONNijiiro:donbg-anim into main 2026-09-09 17:16:19 +02:00
82 changed files with 794 additions and 41 deletions
Showing only changes of commit 8fbc96bb62 - Show all commits

No files matched your search

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

+66
View File
@@ -0,0 +1,66 @@
{
"s1": {
"x": 0,
"y": 0
},
"s3": {
"x": 0,
"y": 0
},
"s5": {
"x": 0,
"y": 0
},
"s7": {
"x": 0,
"y": 0
},
"s9": {
"x": 0,
"y": 0
},
"s11": {
"x": 0,
"y": 0
},
"s13": {
"x": 0,
"y": 0
},
"s15": {
"x": 0,
"y": 0
},
"s17": {
"x": 0,
"y": 0
},
"s19": {
"x": 0,
"y": 0
},
"s21": {
"x": 0,
"y": 0
},
"s23": {
"x": 0,
"y": 0
},
"s25": {
"x": 0,
"y": 0
},
"s28": {
"x": 0,
"y": 0
},
"s31": {
"x": 0,
"y": 0
},
"s34": {
"x": 0,
"y": 0
}
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

+50
View File
@@ -0,0 +1,50 @@
{
"s1": {
"x": 0,
"y": 0
},
"s3": {
"x": 0,
"y": 0
},
"s5": {
"x": 0,
"y": 0
},
"s7": {
"x": 0,
"y": 0
},
"s10": {
"x": 0,
"y": 0
},
"s12": {
"x": 0,
"y": 0
},
"s15": {
"x": 0,
"y": 0
},
"s17": {
"x": 0,
"y": 0
},
"s20": {
"x": 0,
"y": 0
},
"s22": {
"x": 0,
"y": 0
},
"s25": {
"x": 0,
"y": 0
},
"s27": {
"x": 0,
"y": 0
}
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 B

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 B

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 127 B

After

Width:  |  Height:  |  Size: 135 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 140 B

After

Width:  |  Height:  |  Size: 135 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 B

After

Width:  |  Height:  |  Size: 117 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 B

After

Width:  |  Height:  |  Size: 147 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 B

After

Width:  |  Height:  |  Size: 122 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 B

After

Width:  |  Height:  |  Size: 147 B

+18 -18
View File
@@ -301,11 +301,11 @@
],
"bar_clear_transition": [
{
"x": 741,
"x": 738,
"y": -63
},
{
"x": 741,
"x": 738,
"y": -87
}
],
@@ -351,42 +351,42 @@
],
"bar_clear_transition_fade": [
{
"x": 732,
"y": -63
"x": 738,
"y": -60
},
{
"x": 732,
"y": -87
"x": 738,
"y": -84
}
],
"bar_clear_fade": [
{
"x": 732,
"y": -63
"x": 738,
"y": -60
},
{
"x": 732,
"y": -87
"x": 738,
"y": -84
}
],
"1p_bar_fade": [
{
"x": 732,
"y": -31
"x": 738,
"y": -27
},
{
"x": 732,
"y": -87
"x": 738,
"y": -84
}
],
"2p_bar_fade": [
{
"x": 732,
"y": -31
"x": 738,
"y": -27
},
{
"x": 732,
"y": -87
"x": 738,
"y": -84
}
],
"tamashii": [
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

+72
View File
@@ -191,5 +191,77 @@
"mod_shinuchi": {
"x": 0,
"y": 0
},
"mod_doron": {
"x": 0,
"y": 0
},
"mod_abekobe": {
"x": 0,
"y": 0
},
"mod_detarame": {
"x": 0,
"y": 0
},
"mod_kimagure": {
"x": 0,
"y": 0
},
"mod_speed_x1_1": {
"x": 0,
"y": 0
},
"mod_speed_x1_2": {
"x": 0,
"y": 0
},
"mod_speed_x1_3": {
"x": 0,
"y": 0
},
"mod_speed_x1_4": {
"x": 0,
"y": 0
},
"mod_speed_x1_5": {
"x": 0,
"y": 0
},
"mod_speed_x1_6": {
"x": 0,
"y": 0
},
"mod_speed_x1_7": {
"x": 0,
"y": 0
},
"mod_speed_x1_8": {
"x": 0,
"y": 0
},
"mod_speed_x1_9": {
"x": 0,
"y": 0
},
"mod_speed_x2": {
"x": 0,
"y": 0
},
"mod_speed_x2_5": {
"x": 0,
"y": 0
},
"mod_speed_x3": {
"x": 0,
"y": 0
},
"mod_speed_x3_5": {
"x": 0,
"y": 0
},
"mod_speed_x4": {
"x": 0,
"y": 0
}
}
+12 -1
View File
@@ -17,7 +17,8 @@
"songselect_2p_join": true,
"costume_preset_slots": true,
"dan_title_horizontal": true,
"combo_color_tiers": true
"combo_color_tiers": true,
"gauge_cell_fade_in": true
}
},
"score_counter_pos": {
@@ -541,6 +542,16 @@
"note_arc_start_x_offset": {
"x": 522
},
"gauge_cells": {
"x": 50
},
"mod_badge_grid": {
"x": 170,
"y": 77,
"width": 44,
"height": 44,
"font_size": 3
},
"gauge_hit_effect_note": {
"x": 1738,
"y": -126,
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

+57 -1
View File
@@ -66,5 +66,61 @@
"mod_detarame": {
"x": 165,
"y": 1174
},
"mod_speed_x1_1": {
"x": 165,
"y": 1174
},
"mod_speed_x1_2": {
"x": 165,
"y": 1174
},
"mod_speed_x1_3": {
"x": 165,
"y": 1174
},
"mod_speed_x1_4": {
"x": 165,
"y": 1174
},
"mod_speed_x1_5": {
"x": 165,
"y": 1174
},
"mod_speed_x1_6": {
"x": 165,
"y": 1174
},
"mod_speed_x1_7": {
"x": 165,
"y": 1174
},
"mod_speed_x1_8": {
"x": 165,
"y": 1174
},
"mod_speed_x1_9": {
"x": 165,
"y": 1174
},
"mod_speed_x2": {
"x": 165,
"y": 1174
},
"mod_speed_x2_5": {
"x": 165,
"y": 1174
},
"mod_speed_x3": {
"x": 165,
"y": 1174
},
"mod_speed_x3_5": {
"x": 165,
"y": 1174
},
"mod_speed_x4": {
"x": 165,
"y": 1174
}
}
}
+3 -2
View File
@@ -112,7 +112,7 @@ function Background.new(player_num, bpm, scene_preset)
self.donbg = DonBG.create(player_num, "background")
self.bg_normal = BGNormal.create(math.random(0, 4), "background")
self.bg_fever = BGFever.create(math.random(0, 3), "background")
self.fever = Fever.create(math.random(0, 3), bpm, "background")
self.fever = Fever.create(math.random(0, Fever.variant_count("background") - 1), bpm, "background")
self.dancer = Dancer.create(math.random(0, 20), bpm, "background", max_dancers)
self.footer = Footer.new("background", math.random(0, 2))
end
@@ -379,8 +379,9 @@ function Background:draw_back()
-- band does not clip them.
-- ROUND 52: gate on the object's own visibility (covers the exit
-- ramp), not the raw is_rainbow flag.
if self.fever:is_visible() then self.fever:draw() end
-- The original paints the band (bg_dai) first and the crowd over it.
self.footer:draw()
if self.fever:is_visible() then self.fever:draw() end
end
self.chibi:draw()
end
@@ -0,0 +1,153 @@
-- GENERATED by scratchpad/lyric/fever_export.py from enso/fever/fever_effect1.nulm -- do not hand-edit.
-- 1920x540 stage placed at screen y 540. frames[f+1] = {{shape, tx, ty, sx, sy, rot_deg, alpha}, ...}
-- shapes[shape] = {w, h, ox, oy}: png size and where the shape origin sits inside it.
return {
nframes = 126,
labels = {wait = 0, normal_fever = 5, fever = 45, fever_normal = 85},
shapes = {
[1] = {148, 152, 198, 114},
[3] = {148, 152, -25, 117},
[5] = {206, 175, 4, 129},
[7] = {206, 175, 227, 127},
[9] = {800, 760, 0, 764},
[11] = {800, 760, 804, 764},
[13] = {800, 760, 0, 764},
[15] = {800, 760, 804, 764},
[17] = {148, 152, 198, 114},
[19] = {148, 152, -25, 117},
[21] = {206, 175, 4, 129},
[23] = {206, 175, 227, 126},
[25] = {148, 152, 198, 114},
[28] = {148, 152, -25, 117},
[31] = {206, 175, 4, 129},
[34] = {206, 175, 227, 127},
},
frames = {
{{1,153.85,734.6,1,1,0,0},{3,1795,754.6,1,1,0,0},{5,1248.2,743.1,1,1,0,0},{7,650.25,743.1,1,1,0,0},{9,-124,1210,1,1,0,0},{11,2020,1211,1,1,0,0}},
{{1,153.85,734.6,1,1,0,0},{3,1795,754.6,1,1,0,0},{5,1248.2,743.1,1,1,0,0},{7,650.25,743.1,1,1,0,0},{9,-124,1210,1,1,0,0},{11,2020,1211,1,1,0,0}},
{{1,153.85,734.6,1,1,0,0},{3,1795,754.6,1,1,0,0},{5,1248.2,743.1,1,1,0,0},{7,650.25,743.1,1,1,0,0},{9,-124,1210,1,1,0,0},{11,2020,1211,1,1,0,0}},
{{1,153.85,734.6,1,1,0,0},{3,1795,754.6,1,1,0,0},{5,1248.2,743.1,1,1,0,0},{7,650.25,743.1,1,1,0,0},{9,-124,1210,1,1,0,0},{11,2020,1211,1,1,0,0}},
{{1,153.85,734.6,1,1,0,0},{3,1795,754.6,1,1,0,0},{5,1248.2,743.1,1,1,0,0},{7,650.25,743.1,1,1,0,0},{9,-124,1210,1,1,0,0},{11,2020,1211,1,1,0,0}},
{{1,153.85,756.6,1,1,0,1},{3,1795,756,1,1,0,1},{5,1248.2,745,1,1,0,1},{7,650.25,745,1,1,0,1},{13,-124,1210,1,1,0,1},{15,2020,1211,1,1,0,1}},
{{1,153.85,704.5,1,1,0,1},{3,1795,703.95,1,1,0,1},{5,1248.2,690.7,1,1,0,1},{7,650.25,690.7,1,1,0,1},{13,-124,1168.6,1,1,0,1},{15,2020,1169.6,1,1,0,1}},
{{1,153.85,655.2,1,1,0,1},{3,1795,654.7,1,1,0,1},{5,1248.2,639.3,1,1,0,1},{7,650.25,639.3,1,1,0,1},{13,-124,1129.4,1,1,0,1},{15,2020,1130.4,1,1,0,1}},
{{1,153.85,608.7,1,1,0,1},{3,1795,608.3,1,1,0,1},{5,1248.2,590.85,1,1,0,1},{7,650.25,590.85,1,1,0,1},{13,-124,1092.5,1,1,0,1},{15,2020,1093.5,1,1,0,1}},
{{1,153.85,565.05,1,1,0,1},{3,1795,564.7,1,1,0,1},{5,1248.2,545.35,1,1,0,1},{7,650.25,545.35,1,1,0,1},{13,-124,1057.8,1,1,0,1},{15,2020,1058.8,1,1,0,1}},
{{1,153.85,524.2,1,1,0,1},{3,1795,523.9,1,1,0,1},{5,1248.2,502.75,1,1,0,1},{7,650.25,502.75,1,1,0,1},{13,-124,1025.3,1,1,0,1},{15,2020,1026.3,1,1,0,1}},
{{1,153.85,486.2,1,1,0,1},{3,1795,485.9,1,1,0,1},{5,1248.2,463.1,1,1,0,1},{7,650.25,463.1,1,1,0,1},{13,-124,995.15,1,1,0,1},{15,2020,996.15,1,1,0,1}},
{{1,153.85,450.95,1,1,0,1},{3,1795,450.75,1,1,0,1},{5,1248.2,426.4,1,1,0,1},{7,650.25,426.4,1,1,0,1},{13,-124,967.15,1,1,0,1},{15,2020,968.15,1,1,0,1}},
{{1,153.85,418.55,1,1,0,1},{3,1795,418.35,1,1,0,1},{5,1248.2,392.65,1,1,0,1},{7,650.25,392.65,1,1,0,1},{13,-124,941.4,1,1,0,1},{15,2020,942.4,1,1,0,1}},
{{1,153.85,389,1,1,0,1},{3,1795,388.85,1,1,0,1},{5,1248.2,361.8,1,1,0,1},{7,650.25,361.8,1,1,0,1},{13,-124,917.9,1,1,0,1},{15,2020,918.9,1,1,0,1}},
{{1,153.85,362.25,1,1,0,1},{3,1795,362.1,1,1,0,1},{5,1248.2,333.9,1,1,0,1},{7,650.25,333.9,1,1,0,1},{13,-124,896.65,1,1,0,1},{15,2020,897.65,1,1,0,1}},
{{1,153.85,338.3,1,1,0,1},{3,1795,338.2,1,1,0,1},{5,1248.2,308.95,1,1,0,1},{7,650.25,308.95,1,1,0,1},{13,-124,877.6,1,1,0,1},{15,2020,878.6,1,1,0,1}},
{{1,153.85,317.15,1,1,0,1},{3,1795,317.1,1,1,0,1},{5,1248.2,286.95,1,1,0,1},{7,650.25,286.95,1,1,0,1},{13,-124,860.85,1,1,0,1},{15,2020,861.85,1,1,0,1}},
{{1,153.85,298.85,1,1,0,1},{3,1795,298.8,1,1,0,1},{5,1248.2,267.85,1,1,0,1},{7,650.25,267.85,1,1,0,1},{13,-124,846.3,1,1,0,1},{15,2020,847.3,1,1,0,1}},
{{1,153.85,283.35,1,1,0,1},{3,1795,283.3,1,1,0,1},{5,1248.2,251.7,1,1,0,1},{7,650.25,251.7,1,1,0,1},{13,-124,834,1,1,0,1},{15,2020,835,1,1,0,1}},
{{1,153.85,270.7,1,1,0,1},{3,1795,270.65,1,1,0,1},{5,1248.2,238.5,1,1,0,1},{7,650.25,238.5,1,1,0,1},{13,-124,823.9,1,1,0,1},{15,2020,824.9,1,1,0,1}},
{{1,153.85,260.85,1,1,0,1},{3,1795,260.8,1,1,0,1},{5,1248.2,228.2,1,1,0,1},{7,650.25,228.2,1,1,0,1},{13,-124,816.05,1,1,0,1},{15,2020,817.05,1,1,0,1}},
{{1,153.85,253.8,1,1,0,1},{3,1795,253.8,1,1,0,1},{5,1248.2,220.85,1,1,0,1},{7,650.25,220.85,1,1,0,1},{13,-124,810.5,1,1,0,1},{15,2020,811.5,1,1,0,1}},
{{1,153.85,249.55,1,1,0,1},{3,1795,249.55,1,1,0,1},{5,1248.2,216.45,1,1,0,1},{7,650.25,216.45,1,1,0,1},{13,-124,807.1,1,1,0,1},{15,2020,808.1,1,1,0,1}},
{{17,153.85,248.15,1,1,0,1},{19,1795,248.15,1,1,0,1},{21,1248.2,215,1,1,0,1},{23,650.25,215,1,1,0,1},{13,-124,806,1,1,0,1},{15,2020,807,1,1,0,1}},
{{17,153.85,248.55,1,1,0,1},{19,1795,248.55,1,1,0,1},{21,1248.2,219.2,1,1,0,1},{23,650.25,219.2,1,1,0,1},{13,-124,806.15,1,1,0,1},{15,2020,807.15,1,1,0,1}},
{{17,153.85,249.65,1,1,0,1},{19,1795,249.65,1,1,0,1},{21,1248.2,223.4,1,1,0,1},{23,650.25,223.4,1,1,0,1},{13,-124,806.55,1,1,0,1},{15,2020,807.55,1,1,0,1}},
{{17,153.85,251.55,1,1,0,1},{19,1795,251.55,1,1,0,1},{21,1248.2,227.6,1,1,0,1},{23,650.25,227.6,1,1,0,1},{13,-124,807.25,1,1,0,1},{15,2020,808.25,1,1,0,1}},
{{17,153.85,254.15,1,1,0,1},{19,1795,254.15,1,1,0,1},{21,1248.2,231.8,1,1,0,1},{23,650.25,231.8,1,1,0,1},{13,-124,808.2,1,1,0,1},{15,2020,809.2,1,1,0,1}},
{{17,153.85,257.55,1,1,0,1},{19,1795,257.55,1,1,0,1},{21,1248.2,236,1,1,0,1},{23,650.25,236,1,1,0,1},{13,-124,809.45,1,1,0,1},{15,2020,810.45,1,1,0,1}},
{{17,153.85,261.7,1,1,0,1},{19,1795,261.7,1,1,0,1},{21,1248.2,240.2,1,1,0,1},{23,650.25,240.2,1,1,0,1},{13,-124,810.95,1,1,0,1},{15,2020,811.95,1,1,0,1}},
{{17,153.85,266.6,1,1,0,1},{19,1795,266.6,1,1,0,1},{21,1248.2,244.4,1,1,0,1},{23,650.25,244.4,1,1,0,1},{13,-124,812.75,1,1,0,1},{15,2020,813.75,1,1,0,1}},
{{17,153.85,272.2,1,1,0,1},{19,1795,272.2,1,1,0,1},{21,1248.2,248.6,1,1,0,1},{23,650.25,248.6,1,1,0,1},{13,-124,814.8,1,1,0,1},{15,2020,815.8,1,1,0,1}},
{{17,153.85,278.6,1,1,0,1},{19,1795,278.6,1,1,0,1},{21,1248.2,252.8,1,1,0,1},{23,650.25,252.8,1,1,0,1},{13,-124,817.15,1,1,0,1},{15,2020,818.15,1,1,0,1}},
{{17,153.85,285.75,1,1,0,1},{19,1795,285.75,1,1,0,1},{21,1248.2,257,1,1,0,1},{23,650.25,257,1,1,0,1},{13,-124,819.75,1,1,0,1},{15,2020,820.75,1,1,0,1}},
{{17,153.85,293.65,1,1,0,1},{19,1795,293.65,1,1,0,1},{21,1248.2,261.2,1,1,0,1},{23,650.25,261.2,1,1,0,1},{13,-124,822.65,1,1,0,1},{15,2020,823.65,1,1,0,1}},
{{17,153.85,302.3,1,1,0,1},{19,1795,302.3,1,1,0,1},{21,1248.2,265.4,1,1,0,1},{23,650.25,265.4,1,1,0,1},{13,-124,825.8,1,1,0,1},{15,2020,826.8,1,1,0,1}},
{{17,153.85,311.7,1,1,0,1},{19,1795,311.7,1,1,0,1},{21,1248.2,269.6,1,1,0,1},{23,650.25,269.6,1,1,0,1},{13,-124,829.25,1,1,0,1},{15,2020,830.25,1,1,0,1}},
{{17,153.85,321.85,1,1,0,1},{19,1795,321.85,1,1,0,1},{21,1248.2,273.8,1,1,0,1},{23,650.25,273.8,1,1,0,1},{13,-124,832.95,1,1,0,1},{15,2020,833.95,1,1,0,1}},
{{17,153.85,332.8,1,1,0,1},{19,1795,332.8,1,1,0,1},{21,1248.2,278,1,1,0,1},{23,650.25,278,1,1,0,1},{13,-124,836.95,1,1,0,1},{15,2020,837.95,1,1,0,1}},
{{17,153.85,344.45,1,1,0,1},{19,1795,344.45,1,1,0,1},{21,1248.2,282.2,1,1,0,1},{23,650.25,282.2,1,1,0,1},{13,-124,841.2,1,1,0,1},{15,2020,842.2,1,1,0,1}},
{{17,153.85,356.85,1,1,0,1},{19,1795,356.85,1,1,0,1},{21,1248.2,286.4,1,1,0,1},{23,650.25,286.4,1,1,0,1},{13,-124,845.75,1,1,0,1},{15,2020,846.75,1,1,0,1}},
{{17,153.85,370,1,1,0,1},{19,1795,370,1,1,0,1},{21,1248.2,290.6,1,1,0,1},{23,650.25,290.6,1,1,0,1},{13,-124,850.55,1,1,0,1},{15,2020,851.55,1,1,0,1}},
{{17,153.85,383.95,1,1,0,1},{19,1795,383.95,1,1,0,1},{21,1248.2,294.8,1,1,0,1},{23,650.25,294.8,1,1,0,1},{13,-124,855.65,1,1,0,1},{15,2020,856.65,1,1,0,1}},
{{1,153.85,398.6,1,1,0,1},{3,1795,398.6,1,1,0,1},{5,1248.2,299,1,1,0,1},{7,650.25,299,1,1,0,1},{9,-124,861,1,1,0,1},{11,2020,862,1,1,0,1}},
{{25,150,455,1,1,0,1},{28,1795,450,1,1,0,1},{31,1248,413,1,1,0,1},{7,650,373,1,1,0,1},{13,-124,861,1,1,0,1},{15,2020,862,1,1,0,1}},
{{25,150,440.5,1,0.995,0,1},{28,1795,435.9,1,0.995,0,1},{31,1248,398.1,1,1,0,1},{7,650,360.45,1,1,0,1},{13,-124,851.8,1,1,0,1},{15,2020,852.8,1,1,0,1}},
{{25,150,426.6,1,0.989,0,1},{28,1795,422.35,1,0.989,0,1},{31,1248,383.8,1,1,0,1},{7,650,348.4,1,1,0,1},{13,-124,843.05,1,1,0,1},{15,2020,844.05,1,1,0,1}},
{{25,150,413.25,1,0.984,0,1},{28,1795,409.4,1,0.984,0,1},{31,1248,370.15,1,1,0,1},{7,650,336.9,1,1,0,1},{13,-124,834.8,1,1,0,1},{15,2020,835.8,1,1,0,1}},
{{25,150,400.55,1,0.979,0,1},{28,1795,397,1,0.979,0,1},{31,1248,357.05,1,1,0,1},{7,650,325.9,1,1,0,1},{13,-124,827.1,1,1,0,1},{15,2020,828.1,1,1,0,1}},
{{25,150,388.4,1,0.974,0,1},{28,1795,385.2,1,0.974,0,1},{31,1248,344.6,1,1,0,1},{7,650,315.4,1,1,0,1},{13,-124,819.85,1,1,0,1},{15,2020,820.85,1,1,0,1}},
{{1,150,376.85,1,0.968,0,1},{3,1795,373.95,1,0.968,0,1},{5,1248,332.75,1,1,0,1},{23,650,305.4,1,1,0,1},{13,-124,813.15,1,1,0,1},{15,2020,814.15,1,1,0,1}},
{{1,150,365.9,1,0.968,0,1},{3,1795,363.3,1,0.968,0,1},{5,1248,321.5,1,1,0,1},{23,650,295.95,1,1,0,1},{13,-124,806.9,1,1,0,1},{15,2020,807.9,1,1,0,1}},
{{1,150,355.55,1,0.968,0,1},{3,1795,353.25,1,0.968,0,1},{5,1248,310.85,1,1,0,1},{23,650,287,1,1,0,1},{13,-124,801.15,1,1,0,1},{15,2020,802.15,1,1,0,1}},
{{1,150,345.75,1,0.968,0,1},{3,1795,343.75,1,0.968,0,1},{5,1248,300.8,1,1,0,1},{23,650,278.55,1,1,0,1},{13,-124,795.95,1,1,0,1},{15,2020,796.95,1,1,0,1}},
{{1,150,336.6,1,0.968,0,1},{3,1795,334.8,1,0.968,0,1},{5,1248,291.4,1,1,0,1},{23,650,270.6,1,1,0,1},{13,-124,791.2,1,1,0,1},{15,2020,792.2,1,1,0,1}},
{{1,150,328,1,0.968,0,1},{3,1795,326.45,1,0.968,0,1},{5,1248,282.6,1,1,0,1},{23,650,263.2,1,1,0,1},{13,-124,786.95,1,1,0,1},{15,2020,787.95,1,1,0,1}},
{{1,150,320,1,0.968,0,1},{3,1795,318.65,1,0.968,0,1},{5,1248,274.4,1,1,0,1},{23,650,256.25,1,1,0,1},{13,-124,783.2,1,1,0,1},{15,2020,784.2,1,1,0,1}},
{{1,150,312.6,1,0.968,0,1},{3,1795,311.45,1,0.968,0,1},{5,1248,266.75,1,1,0,1},{23,650,249.85,1,1,0,1},{13,-124,780,1,1,0,1},{15,2020,781,1,1,0,1}},
{{1,150,305.8,1,0.968,0,1},{3,1795,304.85,1,0.968,0,1},{5,1248,259.8,1,1,0,1},{23,650,244,1,1,0,1},{13,-124,777.25,1,1,0,1},{15,2020,778.25,1,1,0,1}},
{{1,150,299.6,1,0.968,0,1},{3,1795,298.8,1,0.968,0,1},{5,1248,253.4,1,1,0,1},{23,650,238.6,1,1,0,1},{13,-124,775,1,1,0,1},{15,2020,776,1,1,0,1}},
{{1,150,293.95,1,0.968,0,1},{3,1795,293.35,1,0.968,0,1},{5,1248,247.6,1,1,0,1},{23,650,233.75,1,1,0,1},{13,-124,773.25,1,1,0,1},{15,2020,774.25,1,1,0,1}},
{{1,150,288.95,1,0.968,0,1},{3,1795,288.45,1,0.968,0,1},{5,1248,242.45,1,1,0,1},{23,650,229.4,1,1,0,1},{13,-124,772,1,1,0,1},{15,2020,773,1,1,0,1}},
{{1,150,284.5,1,0.968,0,1},{3,1795,284.1,1,0.968,0,1},{5,1248,237.9,1,1,0,1},{23,650,225.55,1,1,0,1},{13,-124,771.25,1,1,0,1},{15,2020,772.25,1,1,0,1}},
{{1,150,280.65,1,0.968,0,1},{3,1795,280.35,1,0.968,0,1},{5,1248,233.95,1,1,0,1},{23,650,222.2,1,1,0,1},{13,-124,771,1,1,0,1},{15,2020,772,1,1,0,1}},
{{1,150,277.4,1,0.968,0,1},{3,1795,277.2,1,0.968,0,1},{5,1248,230.6,1,1,0,1},{23,650,219.4,1,1,0,1},{13,-124,771.4,1,1,0,1},{15,2020,772.4,1,1,0,1}},
{{1,150,274.75,1,0.968,0,1},{3,1795,274.6,1,0.968,0,1},{5,1248,227.85,1,1,0,1},{23,650,217.1,1,1,0,1},{13,-124,772.5,1,1,0,1},{15,2020,773.5,1,1,0,1}},
{{1,150,272.65,1,0.968,0,1},{3,1795,272.6,1,0.968,0,1},{5,1248,225.75,1,1,0,1},{23,650,215.3,1,1,0,1},{13,-124,774.45,1,1,0,1},{15,2020,775.45,1,1,0,1}},
{{1,150,271.2,1,0.968,0,1},{3,1795,271.15,1,0.968,0,1},{5,1248,224.2,1,1,0,1},{23,650,214,1,1,0,1},{13,-124,777.1,1,1,0,1},{15,2020,778.1,1,1,0,1}},
{{1,150,270.3,1,0.968,0,1},{3,1795,270.3,1,0.968,0,1},{5,1248,223.3,1,1,0,1},{23,650,213.25,1,1,0,1},{13,-124,780.5,1,1,0,1},{15,2020,781.5,1,1,0,1}},
{{25,150,270,1,0.968,0,1},{28,1795,270,1,0.968,0,1},{31,1248,223,1,1,0,1},{23,650,213,1,1,0,1},{13,-124,784.7,1,1,0,1},{15,2020,785.7,1,1,0,1}},
{{25,150,270.95,1,0.968,0,1},{28,1795,270.9,1,0.968,0,1},{31,1248,224.05,1,1,0,1},{23,650,213.85,1,1,0,1},{13,-124,789.65,1,1,0,1},{15,2020,790.65,1,1,0,1}},
{{25,150,273.75,1,0.968,0,1},{28,1795,273.65,1,0.968,0,1},{31,1248,227.3,1,1,0,1},{23,650,216.45,1,1,0,1},{13,-124,795.35,1,1,0,1},{15,2020,796.35,1,1,0,1}},
{{25,150,278.5,1,0.968,0,1},{28,1795,278.25,1,0.968,0,1},{31,1248,232.65,1,1,0,1},{23,650,220.8,1,1,0,1},{9,-124,801.85,1,1,0,1},{11,2020,802.85,1,1,0,1}},
{{25,150,285.1,1,0.968,0,1},{28,1795,284.7,1,0.968,0,1},{31,1248,240.15,1,1,0,1},{23,650,226.9,1,1,0,1},{9,-124,809.05,1,1,0,1},{11,2020,810.05,1,1,0,1}},
{{25,150,293.6,1,0.968,0,1},{28,1795,292.95,1,0.968,0,1},{31,1248,249.8,1,1,0,1},{23,650,234.7,1,1,0,1},{9,-124,817.05,1,1,0,1},{11,2020,818.05,1,1,0,1}},
{{17,150,304,1,0.968,0,1},{19,1795,303.05,1,0.968,0,1},{21,1248,261.55,1,1,0,1},{34,650,244.2,1,1,0,1},{9,-124,825.8,1,1,0,1},{11,2020,826.8,1,1,0,1}},
{{17,150,316.25,1,0.968,0,1},{19,1795,315,1,0.968,0,1},{21,1248,275.5,1,1,0,1},{34,650,255.5,1,1,0,1},{9,-124,835.35,1,1,0,1},{11,2020,836.35,1,1,0,1}},
{{17,150,330.4,1,0.968,0,1},{19,1795,328.75,1,0.968,0,1},{21,1248,291.55,1,1,0,1},{34,650,268.5,1,1,0,1},{9,-124,845.6,1,1,0,1},{11,2020,846.6,1,1,0,1}},
{{17,150,346.45,1,0.968,0,1},{19,1795,344.4,1,0.968,0,1},{21,1248,309.8,1,1,0,1},{34,650,283.25,1,1,0,1},{9,-124,856.65,1,1,0,1},{11,2020,857.65,1,1,0,1}},
{{17,150,364.4,1,0.968,0,1},{19,1795,361.85,1,0.968,0,1},{21,1248,330.15,1,1,0,1},{34,650,299.75,1,1,0,1},{9,-124,868.45,1,1,0,1},{11,2020,869.45,1,1,0,1}},
{{17,150,384.2,1,0.968,0,1},{19,1795,381.1,1,0.968,0,1},{21,1248,352.65,1,1,0,1},{34,650,317.95,1,1,0,1},{9,-124,881,1,1,0,1},{11,2020,882,1,1,0,1}},
{{17,150,405.9,1,0.968,0,1},{19,1795,402.25,1,0.968,0,1},{21,1248,377.3,1,1,0,1},{34,650,337.9,1,1,0,1},{9,-124,876,1,1,0,1},{11,2020,877,1,1,0,1}},
{{17,150,429.5,1,0.968,0,1},{19,1795,425.2,1,0.968,0,1},{21,1248,404.05,1,1,0,1},{34,650,359.6,1,1,0,1},{9,-124,871,1,1,0,1},{11,2020,872,1,1,0,1}},
{{17,150,455,1,0.968,0,1},{19,1795,450,1,0.968,0,1},{31,1248,433,1,1,0,1},{34,650,383,1,1,0,1},{13,-124,866,1,1,0,1},{15,2020,867,1,1,0,1}},
{{25,153.85,404.6,1,0.868,0,1},{28,1795,404.6,1,0.868,0,1},{5,1248.2,343,1,1,0,1},{7,650.25,343,1,1,0,1},{9,-124,836,1,1,0,1},{11,2020,837,1,1,0,1}},
{{25,153.85,381.35,1,0.882,0,1},{28,1795,381.35,1,0.882,0,1},{5,1248.2,327.2,1,1,0,1},{7,650.25,327.2,1,1,0,1},{9,-124,829,1,1,0,1},{11,2020,830,1,1,0,1}},
{{25,153.85,358.05,1,0.895,0,1},{28,1795,358.05,1,0.895,0,1},{5,1248.2,311.4,1,1,0,1},{7,650.25,311.4,1,1,0,1},{9,-124,822,1,1,0,1},{11,2020,823,1,1,0,1}},
{{25,153.85,334.85,1,0.908,0,1},{28,1795,334.85,1,0.908,0,1},{5,1248.2,295.6,1,1,0,1},{7,650.25,295.6,1,1,0,1},{9,-124,815,1,1,0,1},{11,2020,816,1,1,0,1}},
{{25,153.85,311.6,1,0.921,0,1},{28,1795,311.6,1,0.921,0,1},{5,1248.2,279.8,1,1,0,1},{7,650.25,279.8,1,1,0,1},{9,-124,808,1,1,0,1},{11,2020,809,1,1,0,1}},
{{25,153.85,288.35,1,0.934,0,1},{28,1795,288.35,1,0.934,0,1},{5,1248.2,264,1,1,0,1},{7,650.25,264,1,1,0,1},{9,-124,801,1,1,0,1},{11,2020,802,1,1,0,1}},
{{25,153.85,265.15,1,0.947,0,1},{28,1795,265.15,1,0.947,0,1},{5,1248.2,248.2,1,1,0,1},{7,650.25,248.2,1,1,0,1},{9,-124,794,1,1,0,1},{11,2020,795,1,1,0,1}},
{{25,153.85,241.85,1,0.961,0,1},{28,1795,241.85,1,0.961,0,1},{5,1248.2,232.4,1,1,0,1},{7,650.25,232.4,1,1,0,1},{9,-124,787,1,1,0,1},{11,2020,788,1,1,0,1}},
{{25,153.85,218.65,1,0.974,0,1},{28,1795,218.65,1,0.974,0,1},{5,1248.2,216.6,1,1,0,1},{7,650.25,216.6,1,1,0,1},{9,-124,780,1,1,0,1},{11,2020,781,1,1,0,1}},
{{25,153.85,195.35,1,0.987,0,1},{28,1795,195.35,1,0.987,0,1},{5,1248.2,200.8,1,1,0,1},{7,650.25,200.8,1,1,0,1},{9,-124,773,1,1,0,1},{11,2020,774,1,1,0,1}},
{{17,153.85,248.15,1,1,0,1},{19,1795,248.15,1,1,0,1},{21,1248.2,185,1,1,0,1},{23,650.25,185,1,1,0,1},{13,-124,766,1,1,0,1},{15,2020,767,1,1,0,1}},
{{17,153.85,248.7,1,1,0,1},{19,1795,248.7,1,1,0,1},{21,1248.2,185.6,1,1,0,1},{23,650.25,185.6,1,1,0,1},{13,-124,766.55,1,1,0,1},{15,2020,767.55,1,1,0,1}},
{{17,153.85,250.3,1,1,0,1},{19,1795,250.3,1,1,0,1},{21,1248.2,187.4,1,1,0,1},{23,650.25,187.4,1,1,0,1},{13,-124,768.15,1,1,0,1},{15,2020,769.15,1,1,0,1}},
{{17,153.85,253,1,1,0,1},{19,1795,253,1,1,0,1},{21,1248.2,190.4,1,1,0,1},{23,650.25,190.4,1,1,0,1},{13,-124,770.8,1,1,0,1},{15,2020,771.8,1,1,0,1}},
{{17,153.85,256.8,1,1,0,1},{19,1795,256.8,1,1,0,1},{21,1248.2,194.55,1,1,0,1},{23,650.25,194.55,1,1,0,1},{13,-124,774.55,1,1,0,1},{15,2020,775.55,1,1,0,1}},
{{17,153.85,261.65,1,1,0,1},{19,1795,261.65,1,1,0,1},{21,1248.2,199.95,1,1,0,1},{23,650.25,199.95,1,1,0,1},{13,-124,779.35,1,1,0,1},{15,2020,780.35,1,1,0,1}},
{{17,153.85,267.6,1,1,0,1},{19,1795,267.6,1,1,0,1},{21,1248.2,206.5,1,1,0,1},{23,650.25,206.5,1,1,0,1},{13,-124,785.2,1,1,0,1},{15,2020,786.2,1,1,0,1}},
{{17,153.85,274.65,1,1,0,1},{19,1795,274.65,1,1,0,1},{21,1248.2,214.3,1,1,0,1},{23,650.25,214.3,1,1,0,1},{13,-124,792.15,1,1,0,1},{15,2020,793.15,1,1,0,1}},
{{17,153.85,282.75,1,1,0,1},{19,1795,282.75,1,1,0,1},{21,1248.2,223.25,1,1,0,1},{23,650.25,223.25,1,1,0,1},{13,-124,800.15,1,1,0,1},{15,2020,801.15,1,1,0,1}},
{{17,153.85,291.95,1,1,0,1},{19,1795,291.95,1,1,0,1},{21,1248.2,233.4,1,1,0,1},{23,650.25,233.4,1,1,0,1},{13,-124,809.2,1,1,0,1},{15,2020,810.2,1,1,0,1}},
{{17,153.85,302.2,1,1,0,1},{19,1795,302.2,1,1,0,1},{21,1248.2,244.8,1,1,0,1},{23,650.25,244.8,1,1,0,1},{13,-124,819.35,1,1,0,1},{15,2020,820.35,1,1,0,1}},
{{17,153.85,313.55,1,1,0,1},{19,1795,313.55,1,1,0,1},{21,1248.2,257.35,1,1,0,1},{23,650.25,257.35,1,1,0,1},{13,-124,830.55,1,1,0,1},{15,2020,831.55,1,1,0,1}},
{{17,153.85,326,1,1,0,1},{19,1795,326,1,1,0,1},{21,1248.2,271.1,1,1,0,1},{23,650.25,271.1,1,1,0,1},{13,-124,842.8,1,1,0,1},{15,2020,843.8,1,1,0,1}},
{{17,153.85,339.5,1,1,0,1},{19,1795,339.5,1,1,0,1},{21,1248.2,286.05,1,1,0,1},{23,650.25,286.05,1,1,0,1},{13,-124,856.15,1,1,0,1},{15,2020,857.15,1,1,0,1}},
{{17,153.85,354.1,1,1,0,1},{19,1795,354.1,1,1,0,1},{21,1248.2,302.15,1,1,0,1},{23,650.25,302.15,1,1,0,1},{13,-124,870.55,1,1,0,1},{15,2020,871.55,1,1,0,1}},
{{17,153.85,369.75,1,1,0,1},{19,1795,369.75,1,1,0,1},{21,1248.2,319.5,1,1,0,1},{23,650.25,319.5,1,1,0,1},{13,-124,886,1,1,0,1},{15,2020,887,1,1,0,1}},
{{17,153.85,386.5,1,1,0,1},{19,1795,386.5,1,1,0,1},{21,1248.2,338.05,1,1,0,1},{23,650.25,338.05,1,1,0,1},{13,-124,902.55,1,1,0,1},{15,2020,903.55,1,1,0,1}},
{{17,153.85,404.35,1,1,0,1},{19,1795,404.35,1,1,0,1},{21,1248.2,357.75,1,1,0,1},{23,650.25,357.75,1,1,0,1},{13,-124,920.15,1,1,0,1},{15,2020,921.15,1,1,0,1}},
{{17,153.85,423.25,1,1,0,1},{19,1795,423.25,1,1,0,1},{21,1248.2,378.7,1,1,0,1},{23,650.25,378.7,1,1,0,1},{13,-124,938.8,1,1,0,1},{15,2020,939.8,1,1,0,1}},
{{17,153.85,443.25,1,1,0,1},{19,1795,443.25,1,1,0,1},{21,1248.2,400.8,1,1,0,1},{23,650.25,400.8,1,1,0,1},{13,-124,958.55,1,1,0,1},{15,2020,959.55,1,1,0,1}},
{{17,153.85,464.35,1,1,0,1},{19,1795,464.35,1,1,0,1},{21,1248.2,424.1,1,1,0,1},{23,650.25,424.1,1,1,0,1},{13,-124,979.35,1,1,0,1},{15,2020,980.35,1,1,0,1}},
{{17,153.85,486.5,1,1,0,1},{19,1795,486.5,1,1,0,1},{21,1248.2,448.6,1,1,0,1},{23,650.25,448.6,1,1,0,1},{13,-124,1001.2,1,1,0,1},{15,2020,1002.2,1,1,0,1}},
{{17,153.85,509.75,1,1,0,1},{19,1795,509.75,1,1,0,1},{21,1248.2,474.35,1,1,0,1},{23,650.25,474.35,1,1,0,1},{13,-124,1024.2,1,1,0,1},{15,2020,1025.2,1,1,0,1}},
{{17,153.85,534.05,1,1,0,1},{19,1795,534.05,1,1,0,1},{21,1248.2,501.2,1,1,0,1},{23,650.25,501.2,1,1,0,1},{13,-124,1048.2,1,1,0,1},{15,2020,1049.2,1,1,0,1}},
{{17,153.85,559.5,1,1,0,1},{19,1795,559.5,1,1,0,1},{21,1248.2,529.3,1,1,0,1},{23,650.25,529.3,1,1,0,1},{13,-124,1073.2,1,1,0,1},{15,2020,1074.2,1,1,0,1}},
{{17,153.85,585.95,1,1,0,1},{19,1795,585.95,1,1,0,1},{21,1248.2,558.6,1,1,0,1},{23,650.25,558.6,1,1,0,1},{13,-124,1099.3,1,1,0,1},{15,2020,1100.3,1,1,0,1}},
{{17,153.85,613.55,1,1,0,1},{19,1795,613.55,1,1,0,1},{21,1248.2,589.1,1,1,0,1},{23,650.25,589.1,1,1,0,1},{13,-124,1126.6,1,1,0,1},{15,2020,1127.6,1,1,0,1}},
{{17,153.85,642.15,1,1,0,1},{19,1795,642.15,1,1,0,1},{21,1248.2,620.75,1,1,0,1},{23,650.25,620.75,1,1,0,1},{13,-124,1154.8,1,1,0,1},{15,2020,1155.8,1,1,0,1}},
{{17,153.85,671.9,1,1,0,1},{19,1795,671.9,1,1,0,1},{21,1248.2,653.65,1,1,0,1},{23,650.25,653.65,1,1,0,1},{13,-124,1184.2,1,1,0,1},{15,2020,1185.2,1,1,0,1}},
{{17,153.85,702.7,1,1,0,1},{19,1795,702.7,1,1,0,1},{21,1248.2,687.75,1,1,0,1},{23,650.25,687.75,1,1,0,1},{13,-124,1214.6,1,1,0,1},{15,2020,1215.6,1,1,0,1}},
{{1,153.85,734.6,1,1,0,1},{3,1795,734.6,1,1,0,1},{5,1248.2,723,1,1,0,1},{7,650.25,723,1,1,0,1},{9,-124,1246,1,1,0,1},{11,2020,1247,1,1,0,1}},
},
}
@@ -0,0 +1,148 @@
-- GENERATED by scratchpad/lyric/fever_export.py from enso/fever/fever_effect2.nulm -- do not hand-edit.
-- 1920x540 stage placed at screen y 540. frames[f+1] = {{shape, tx, ty, sx, sy, rot_deg, alpha}, ...}
-- shapes[shape] = {w, h, ox, oy}: png size and where the shape origin sits inside it.
return {
nframes = 125,
labels = {wait = 0, normal_fever = 5, fever = 44, fever_normal = 84},
shapes = {
[1] = {880, 500, 440, 250},
[3] = {880, 500, 440, 250},
[5] = {880, 500, 440, 250},
[7] = {880, 500, 440, 250},
[10] = {200, 160, 100, 80},
[12] = {200, 160, 100, 80},
[15] = {880, 500, 400, 250},
[17] = {880, 500, 400, 230},
[20] = {200, 160, 100, 80},
[22] = {200, 160, 100, 80},
[25] = {200, 160, 100, 80},
[27] = {200, 160, 100, 80},
},
frames = {
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
{{1,288.05,1005.8,1,1,0,1},{3,1612.2,1008,1,1,0,1},{12,465,979.8,1,1,0,1},{15,272.05,1014.8,1,1,0,1},{17,1614.2,997.05,1,1,0,1},{20,750,992.8,1,1,0,1},{25,1230,969.8,1,1,0,1}},
{{1,288.05,939.35,1,1,0,1},{3,1612.2,941.55,1,1,0,1},{12,465,913.35,1,1,0,1},{15,272.05,949.35,1,1,0,1},{17,1614.2,931.55,1,1,0,1},{20,750,926.35,1,1,0,1},{25,1230,903.35,1,1,0,1}},
{{1,288.05,876.75,1,1,0,1},{3,1612.2,878.95,1,1,0,1},{12,465,850.75,1,1,0,1},{15,272.05,887.65,1,1,0,1},{17,1614.2,869.85,1,1,0,1},{20,750,863.75,1,1,0,1},{25,1230,840.75,1,1,0,1}},
{{1,288.05,817.95,1,1,0,1},{3,1612.2,820.15,1,1,0,1},{12,465,791.95,1,1,0,1},{15,272.05,829.7,1,1,0,1},{17,1614.2,811.9,1,1,0,1},{20,750,804.95,1,1,0,1},{25,1230,781.95,1,1,0,1}},
{{1,288.05,762.9,1,1,0,1},{3,1612.2,765.1,1,1,0,1},{12,465,736.9,1,1,0,1},{15,272.05,775.5,1,1,0,1},{17,1614.2,757.7,1,1,0,1},{20,750,749.9,1,1,0,1},{25,1230,726.9,1,1,0,1}},
{{1,288.05,711.7,1,1,0,1},{3,1612.2,713.9,1,1,0,1},{12,465,685.7,1,1,0,1},{15,272.05,725,1,1,0,1},{17,1614.2,707.2,1,1,0,1},{20,750,698.7,1,1,0,1},{25,1230,675.7,1,1,0,1}},
{{1,288.05,664.25,1,1,0,1},{3,1612.2,666.45,1,1,0,1},{10,465,638.25,1,1,0,1},{15,272.05,678.25,1,1,0,1},{17,1614.2,660.45,1,1,0,1},{20,750,651.25,1,1,0,1},{25,1230,628.25,1,1,0,1}},
{{1,288.05,620.6,1,1,0,1},{3,1612.2,622.8,1,1,0,1},{10,465,594.6,1,1,0,1},{15,272.05,635.25,1,1,0,1},{17,1614.2,617.45,1,1,0,1},{20,750,607.6,1,1,0,1},{25,1230,584.6,1,1,0,1}},
{{1,288.05,580.75,1,1,0,1},{3,1612.2,582.95,1,1,0,1},{10,465,554.75,1,1,0,1},{15,272.05,596,1,1,0,1},{17,1614.2,578.2,1,1,0,1},{20,750,567.75,1,1,0,1},{25,1230,544.75,1,1,0,1}},
{{1,288.05,544.7,1,1,0,1},{3,1612.2,546.9,1,1,0,1},{10,465,518.7,1,1,0,1},{15,272.05,560.45,1,1,0,1},{17,1614.2,542.65,1,1,0,1},{20,750,531.7,1,1,0,1},{25,1230,508.7,1,1,0,1}},
{{1,288.05,512.45,1,1,0,1},{3,1612.2,514.65,1,1,0,1},{10,465,486.45,1,1,0,1},{15,272.05,528.65,1,1,0,1},{17,1614.2,510.85,1,1,0,1},{20,750,499.45,1,1,0,1},{25,1230,476.45,1,1,0,1}},
{{1,288.05,484,1,1,0,1},{3,1612.2,486.2,1,1,0,1},{10,465,458,1,1,0,1},{15,272.05,500.65,1,1,0,1},{17,1614.2,482.85,1,1,0,1},{20,750,471,1,1,0,1},{25,1230,448,1,1,0,1}},
{{1,288.05,459.3,1,1,0,1},{3,1612.2,461.5,1,1,0,1},{12,465,433.3,1,1,0,1},{15,272.05,476.3,1,1,0,1},{17,1614.2,458.5,1,1,0,1},{20,750,446.3,1,1,0,1},{25,1230,423.3,1,1,0,1}},
{{1,288.05,438.45,1,1,0,1},{3,1612.2,440.65,1,1,0,1},{12,465,412.45,1,1,0,1},{15,272.05,455.75,1,1,0,1},{17,1614.2,437.95,1,1,0,1},{20,750,425.45,1,1,0,1},{25,1230,402.45,1,1,0,1}},
{{1,288.05,421.35,1,1,0,1},{3,1612.2,423.55,1,1,0,1},{12,465,395.35,1,1,0,1},{15,272.05,438.9,1,1,0,1},{17,1614.2,421.1,1,1,0,1},{20,750,408.35,1,1,0,1},{25,1230,385.35,1,1,0,1}},
{{1,288.05,408.1,1,1,0,1},{3,1612.2,410.3,1,1,0,1},{12,465,382.1,1,1,0,1},{15,272.05,425.85,1,1,0,1},{17,1614.2,408.05,1,1,0,1},{20,750,395.1,1,1,0,1},{25,1230,372.1,1,1,0,1}},
{{1,288.05,398.6,1,1,0,1},{3,1612.2,400.8,1,1,0,1},{12,465,372.6,1,1,0,1},{15,272.05,416.5,1,1,0,1},{17,1614.2,398.7,1,1,0,1},{20,750,385.6,1,1,0,1},{25,1230,362.6,1,1,0,1}},
{{1,288.05,392.9,1,1,0,1},{3,1612.2,395.1,1,1,0,1},{12,465,366.9,1,1,0,1},{15,272.05,410.85,1,1,0,1},{17,1614.2,393.05,1,1,0,1},{20,750,379.9,1,1,0,1},{25,1230,356.9,1,1,0,1}},
{{1,288.05,391,1,1,0,1},{3,1612.2,393.2,1,1,0,1},{10,465,365,1,1,0,1},{15,272.05,409,1,1,0,1},{17,1614.2,391.2,1,1,0,1},{20,750,378,1,1,0,1},{25,1230,355,1,1,0,1}},
{{1,288.05,391.2,1,1,0,1},{3,1612.2,393.4,1,1,0,1},{10,465,365.2,1,1,0,1},{15,272.05,409.2,1,1,0,1},{17,1614.2,391.4,1,1,0,1},{20,750,378.2,1,1,0,1},{25,1230,355.2,1,1,0,1}},
{{1,288.05,391.85,1,1,0,1},{3,1612.2,394.05,1,1,0,1},{10,465,365.85,1,1,0,1},{15,272.05,409.7,1,1,0,1},{17,1614.2,391.9,1,1,0,1},{20,750,378.85,1,1,0,1},{25,1230,355.85,1,1,0,1}},
{{1,288.05,392.85,1,1,0,1},{3,1612.2,395.05,1,1,0,1},{10,465,366.85,1,1,0,1},{15,272.05,410.6,1,1,0,1},{17,1614.2,392.8,1,1,0,1},{20,750,379.85,1,1,0,1},{25,1230,356.85,1,1,0,1}},
{{5,288.05,394.3,1,1,0,1},{7,1612.2,396.5,1,1,0,1},{10,465,368.3,1,1,0,1},{15,272.05,411.9,1,1,0,1},{17,1614.2,394.1,1,1,0,1},{22,750,381.3,1,1,0,1},{27,1230,358.3,1,1,0,1}},
{{5,288.05,396.2,1,1,0,1},{7,1612.2,398.4,1,1,0,1},{10,465,370.2,1,1,0,1},{15,272.05,413.5,1,1,0,1},{17,1614.2,395.7,1,1,0,1},{22,750,383.2,1,1,0,1},{27,1230,360.2,1,1,0,1}},
{{5,288.05,398.5,1,1,0,1},{7,1612.2,400.7,1,1,0,1},{10,465,372.5,1,1,0,1},{15,272.05,415.5,1,1,0,1},{17,1614.2,397.7,1,1,0,1},{22,750,385.5,1,1,0,1},{27,1230,362.5,1,1,0,1}},
{{5,288.05,401.2,1,1,0,1},{7,1612.2,403.4,1,1,0,1},{10,465,375.2,1,1,0,1},{15,272.05,417.8,1,1,0,1},{17,1614.2,400,1,1,0,1},{22,750,388.2,1,1,0,1},{27,1230,365.2,1,1,0,1}},
{{5,288.05,404.3,1,1,0,1},{7,1612.2,406.5,1,1,0,1},{10,465,378.3,1,1,0,1},{15,272.05,420.5,1,1,0,1},{17,1614.2,402.7,1,1,0,1},{22,750,391.3,1,1,0,1},{27,1230,368.3,1,1,0,1}},
{{5,288.05,407.85,1,1,0,1},{7,1612.2,410.05,1,1,0,1},{10,465,381.85,1,1,0,1},{15,272.05,423.6,1,1,0,1},{17,1614.2,405.8,1,1,0,1},{22,750,394.85,1,1,0,1},{27,1230,371.85,1,1,0,1}},
{{5,288.05,411.8,1,1,0,1},{7,1612.2,414,1,1,0,1},{10,465,385.8,1,1,0,1},{15,272.05,427,1,1,0,1},{17,1614.2,409.2,1,1,0,1},{22,750,398.8,1,1,0,1},{27,1230,375.8,1,1,0,1}},
{{5,288.05,416.15,1,1,0,1},{7,1612.2,418.35,1,1,0,1},{10,465,390.15,1,1,0,1},{15,272.05,430.8,1,1,0,1},{17,1614.2,413,1,1,0,1},{22,750,403.15,1,1,0,1},{27,1230,380.15,1,1,0,1}},
{{5,288.05,420.9,1,1,0,1},{7,1612.2,423.1,1,1,0,1},{10,465,394.9,1,1,0,1},{15,272.05,434.95,1,1,0,1},{17,1614.2,417.15,1,1,0,1},{22,750,407.9,1,1,0,1},{27,1230,384.9,1,1,0,1}},
{{5,288.05,426.1,1,1,0,1},{7,1612.2,428.3,1,1,0,1},{10,465,400.1,1,1,0,1},{15,272.05,439.45,1,1,0,1},{17,1614.2,421.65,1,1,0,1},{22,750,413.1,1,1,0,1},{27,1230,390.1,1,1,0,1}},
{{5,288.05,431.7,1,1,0,1},{7,1612.2,433.9,1,1,0,1},{10,465,405.7,1,1,0,1},{15,272.05,444.3,1,1,0,1},{17,1614.2,426.5,1,1,0,1},{22,750,418.7,1,1,0,1},{27,1230,395.7,1,1,0,1}},
{{1,288.05,437.75,1,1,0,1},{3,1612.2,439.95,1,1,0,1},{10,465,411.75,1,1,0,1},{15,272.05,449.5,1,1,0,1},{17,1614.2,431.7,1,1,0,1},{22,750,424.75,1,1,0,1},{27,1230,401.75,1,1,0,1}},
{{1,288.05,444.2,1,1,0,1},{3,1612.2,446.4,1,1,0,1},{10,465,418.2,1,1,0,1},{15,272.05,455.1,1,1,0,1},{17,1614.2,437.3,1,1,0,1},{20,750,431.2,1,1,0,1},{25,1230,408.2,1,1,0,1}},
{{1,288.05,451.05,1,1,0,1},{3,1612.2,453.25,1,1,0,1},{10,465,425.05,1,1,0,1},{15,272.05,461.05,1,1,0,1},{17,1614.2,443.25,1,1,0,1},{20,750,438.05,1,1,0,1},{25,1230,415.05,1,1,0,1}},
{{1,288.05,458.3,1,1,0,1},{3,1612.2,460.5,1,1,0,1},{10,465,432.3,1,1,0,1},{15,272.05,467.35,1,1,0,1},{17,1614.2,449.55,1,1,0,1},{20,750,445.3,1,1,0,1},{25,1230,422.3,1,1,0,1}},
{{1,288.05,466,1,1,0,1},{3,1612.2,468.2,1,1,0,1},{10,465,440,1,1,0,1},{15,272.05,474,1,1,0,1},{17,1614.2,456.2,1,1,0,1},{20,750,453,1,1,0,1},{25,1230,430,1,1,0,1}},
{{1,288.05,466,1,1,0,1},{3,1612.2,468.2,1,1,0,1},{10,465,440,1,1,0,1},{15,272.05,474,1,1,0,1},{17,1614.2,456.2,1,1,0,1},{20,750,453,1,1,0,1},{25,1230,430,1,1,0,1}},
{{1,288.05,457.8,1,1,0,1},{3,1612.2,460,1,1,0,1},{10,465,433.35,1,1,0,1},{15,272.05,469.9,1,1,0,1},{17,1614.2,452.1,1,1,0,1},{20,750,443.45,1,1,0,1},{25,1230,419.95,1,1,0,1}},
{{1,288.05,450.05,1,1,0,1},{3,1612.2,452.25,1,1,0,1},{12,465,427.05,1,1,0,1},{15,272.05,466,1,1,0,1},{17,1614.2,448.2,1,1,0,1},{20,750,434.45,1,1,0,1},{25,1230,410.45,1,1,0,1}},
{{1,288.05,442.75,1,1,0,1},{3,1612.2,444.95,1,1,0,1},{12,465,421.1,1,1,0,1},{15,272.05,462.35,1,1,0,1},{17,1614.2,444.55,1,1,0,1},{20,750,425.95,1,1,0,1},{25,1230,401.5,1,1,0,1}},
{{1,288.05,435.85,1,1,0,1},{3,1612.2,438.05,1,1,0,1},{12,465,415.5,1,1,0,1},{15,272.05,458.95,1,1,0,1},{17,1614.2,441.15,1,1,0,1},{20,750,417.95,1,1,0,1},{25,1230,393.1,1,1,0,1}},
{{1,288.05,429.45,1,1,0,1},{3,1612.2,431.65,1,1,0,1},{12,465,410.3,1,1,0,1},{15,272.05,455.7,1,1,0,1},{17,1614.2,437.9,1,1,0,1},{20,750,410.5,1,1,0,1},{25,1230,385.2,1,1,0,1}},
{{1,288.05,423.45,1,1,0,1},{3,1612.2,425.65,1,1,0,1},{12,465,405.45,1,1,0,1},{15,272.05,452.75,1,1,0,1},{17,1614.2,434.95,1,1,0,1},{20,750,403.55,1,1,0,1},{25,1230,377.9,1,1,0,1}},
{{1,288.05,417.9,1,1,0,1},{3,1612.2,420.1,1,1,0,1},{12,465,400.95,1,1,0,1},{15,272.05,449.95,1,1,0,1},{17,1614.2,432.15,1,1,0,1},{20,750,397.1,1,1,0,1},{25,1230,371.1,1,1,0,1}},
{{1,288.05,412.8,1,1,0,1},{3,1612.2,415,1,1,0,1},{10,465,396.8,1,1,0,1},{15,272.05,447.4,1,1,0,1},{17,1614.2,429.6,1,1,0,1},{20,750,391.15,1,1,0,1},{25,1230,364.85,1,1,0,1}},
{{1,288.05,408.15,1,1,0,1},{3,1612.2,410.35,1,1,0,1},{10,465,393,1,1,0,1},{15,272.05,445.1,1,1,0,1},{17,1614.2,427.3,1,1,0,1},{20,750,385.75,1,1,0,1},{25,1230,359.15,1,1,0,1}},
{{1,288.05,403.95,1,1,0,1},{3,1612.2,406.15,1,1,0,1},{10,465,389.6,1,1,0,1},{15,272.05,442.95,1,1,0,1},{17,1614.2,425.15,1,1,0,1},{20,750,380.85,1,1,0,1},{25,1230,354,1,1,0,1}},
{{1,288.05,400.2,1,1,0,1},{3,1612.2,402.4,1,1,0,1},{10,465,386.5,1,1,0,1},{15,272.05,441.1,1,1,0,1},{17,1614.2,423.3,1,1,0,1},{20,750,376.5,1,1,0,1},{25,1230,349.35,1,1,0,1}},
{{1,288.05,396.85,1,1,0,1},{3,1612.2,399.05,1,1,0,1},{10,465,383.8,1,1,0,1},{15,272.05,439.45,1,1,0,1},{17,1614.2,421.65,1,1,0,1},{20,750,372.6,1,1,0,1},{25,1230,345.3,1,1,0,1}},
{{1,288.05,394,1,1,0,1},{3,1612.2,396.2,1,1,0,1},{10,465,381.5,1,1,0,1},{15,272.05,438,1,1,0,1},{17,1614.2,420.2,1,1,0,1},{20,750,369.3,1,1,0,1},{25,1230,341.75,1,1,0,1}},
{{1,288.05,391.55,1,1,0,1},{3,1612.2,393.75,1,1,0,1},{12,465,379.5,1,1,0,1},{15,272.05,436.75,1,1,0,1},{17,1614.2,418.95,1,1,0,1},{20,750,366.45,1,1,0,1},{25,1230,338.8,1,1,0,1}},
{{1,288.05,389.55,1,1,0,1},{3,1612.2,391.75,1,1,0,1},{12,465,377.9,1,1,0,1},{15,272.05,435.75,1,1,0,1},{17,1614.2,417.95,1,1,0,1},{20,750,364.1,1,1,0,1},{25,1230,336.35,1,1,0,1}},
{{1,288.05,388,1,1,0,1},{3,1612.2,390.2,1,1,0,1},{12,465,376.6,1,1,0,1},{15,272.05,435,1,1,0,1},{17,1614.2,417.2,1,1,0,1},{20,750,362.3,1,1,0,1},{25,1230,334.45,1,1,0,1}},
{{1,288.05,386.9,1,1,0,1},{3,1612.2,389.1,1,1,0,1},{12,465,375.7,1,1,0,1},{15,272.05,434.45,1,1,0,1},{17,1614.2,416.65,1,1,0,1},{20,750,361.05,1,1,0,1},{25,1230,333.1,1,1,0,1}},
{{1,288.05,386.2,1,1,0,1},{3,1612.2,388.4,1,1,0,1},{12,465,375.2,1,1,0,1},{15,272.05,434.1,1,1,0,1},{17,1614.2,416.3,1,1,0,1},{20,750,360.25,1,1,0,1},{25,1230,332.25,1,1,0,1}},
{{1,288.05,386,1,1,0,1},{3,1612.2,388.2,1,1,0,1},{12,465,375,1,1,0,1},{15,272.05,434,1,1,0,1},{17,1614.2,416.2,1,1,0,1},{20,750,360,1,1,0,1},{25,1230,332,1,1,0,1}},
{{1,288.05,386.35,1,1,0,1},{3,1612.2,388.55,1,1,0,1},{10,465,375.35,1,1,0,1},{15,272.05,434.2,1,1,0,1},{17,1614.2,416.4,1,1,0,1},{20,750,360.35,1,1,0,1},{25,1230,332.45,1,1,0,1}},
{{1,288.05,387.4,1,1,0,1},{3,1612.2,389.6,1,1,0,1},{10,465,376.3,1,1,0,1},{15,272.05,434.85,1,1,0,1},{17,1614.2,417.05,1,1,0,1},{20,750,361.45,1,1,0,1},{25,1230,333.75,1,1,0,1}},
{{1,288.05,389.1,1,1,0,1},{3,1612.2,391.3,1,1,0,1},{10,465,377.95,1,1,0,1},{15,272.05,435.85,1,1,0,1},{17,1614.2,418.05,1,1,0,1},{20,750,363.2,1,1,0,1},{25,1230,335.95,1,1,0,1}},
{{1,288.05,391.55,1,1,0,1},{3,1612.2,393.75,1,1,0,1},{10,465,380.25,1,1,0,1},{15,272.05,437.3,1,1,0,1},{17,1614.2,419.5,1,1,0,1},{20,750,365.7,1,1,0,1},{25,1230,339.05,1,1,0,1}},
{{5,288.05,394.65,1,1,0,1},{7,1612.2,396.85,1,1,0,1},{10,465,383.2,1,1,0,1},{15,272.05,439.2,1,1,0,1},{17,1614.2,421.4,1,1,0,1},{22,750,368.9,1,1,0,1},{27,1230,343,1,1,0,1}},
{{5,288.05,398.45,1,1,0,1},{7,1612.2,400.65,1,1,0,1},{10,465,386.85,1,1,0,1},{15,272.05,441.45,1,1,0,1},{17,1614.2,423.65,1,1,0,1},{22,750,372.85,1,1,0,1},{27,1230,347.8,1,1,0,1}},
{{5,288.05,402.95,1,1,0,1},{7,1612.2,405.15,1,1,0,1},{10,465,391.1,1,1,0,1},{15,272.05,444.15,1,1,0,1},{17,1614.2,426.35,1,1,0,1},{22,750,377.45,1,1,0,1},{27,1230,353.55,1,1,0,1}},
{{5,288.05,408.15,1,1,0,1},{7,1612.2,410.35,1,1,0,1},{10,465,396.05,1,1,0,1},{15,272.05,447.3,1,1,0,1},{17,1614.2,429.5,1,1,0,1},{22,750,382.8,1,1,0,1},{27,1230,360.1,1,1,0,1}},
{{5,288.05,414.05,1,1,0,1},{7,1612.2,416.25,1,1,0,1},{10,465,401.65,1,1,0,1},{15,272.05,450.8,1,1,0,1},{17,1614.2,433,1,1,0,1},{22,750,388.85,1,1,0,1},{27,1230,367.6,1,1,0,1}},
{{5,288.05,420.6,1,1,0,1},{7,1612.2,422.8,1,1,0,1},{10,465,407.85,1,1,0,1},{15,272.05,454.75,1,1,0,1},{17,1614.2,436.95,1,1,0,1},{22,750,395.65,1,1,0,1},{27,1230,375.95,1,1,0,1}},
{{5,288.05,427.85,1,1,0,1},{7,1612.2,430.05,1,1,0,1},{10,465,414.8,1,1,0,1},{15,272.05,459.1,1,1,0,1},{17,1614.2,441.3,1,1,0,1},{22,750,403.1,1,1,0,1},{27,1230,385.15,1,1,0,1}},
{{5,288.05,435.85,1,1,0,1},{7,1612.2,438.05,1,1,0,1},{10,465,422.35,1,1,0,1},{15,272.05,463.9,1,1,0,1},{17,1614.2,446.1,1,1,0,1},{22,750,411.3,1,1,0,1},{27,1230,395.3,1,1,0,1}},
{{5,288.05,444.5,1,1,0,1},{7,1612.2,446.7,1,1,0,1},{10,465,430.55,1,1,0,1},{15,272.05,469.1,1,1,0,1},{17,1614.2,451.3,1,1,0,1},{22,750,420.25,1,1,0,1},{27,1230,406.25,1,1,0,1}},
{{5,288.05,453.8,1,1,0,1},{7,1612.2,456,1,1,0,1},{10,465,439.45,1,1,0,1},{15,272.05,474.7,1,1,0,1},{17,1614.2,456.9,1,1,0,1},{22,750,429.85,1,1,0,1},{27,1230,418.15,1,1,0,1}},
{{5,288.05,463.85,1,1,0,1},{7,1612.2,466.05,1,1,0,1},{10,465,448.95,1,1,0,1},{15,272.05,480.7,1,1,0,1},{17,1614.2,462.9,1,1,0,1},{22,750,440.2,1,1,0,1},{27,1230,430.9,1,1,0,1}},
{{1,288.05,474.6,1,1,0,1},{3,1612.2,476.8,1,1,0,1},{10,465,459.15,1,1,0,1},{15,272.05,487.15,1,1,0,1},{17,1614.2,469.35,1,1,0,1},{22,750,451.25,1,1,0,1},{27,1230,444.5,1,1,0,1}},
{{1,288.05,486,1,1,0,1},{3,1612.2,488.2,1,1,0,1},{10,465,470,1,1,0,1},{15,272.05,494,1,1,0,1},{17,1614.2,476.2,1,1,0,1},{20,750,463,1,1,0,1},{25,1230,459,1,1,0,1}},
{{1,288.05,481,1,1,0,1},{3,1612.2,483.2,1,1,0,1},{10,465,460,1,1,0,1},{15,272.05,489,1,1,0,1},{17,1614.2,471.2,1,1,0,1},{20,750,459.65,1,1,0,1},{25,1230,451.35,1,1,0,1}},
{{1,288.05,476,1,1,0,1},{3,1612.2,478.2,1,1,0,1},{10,465,450,1,1,0,1},{15,272.05,484,1,1,0,1},{17,1614.2,466.2,1,1,0,1},{20,750,456.35,1,1,0,1},{25,1230,443.65,1,1,0,1}},
{{1,288.05,471,1,1,0,1},{3,1612.2,473.2,1,1,0,1},{10,465,440,1,1,0,1},{15,272.05,479,1,1,0,1},{17,1614.2,461.2,1,1,0,1},{20,750,453,1,1,0,1},{25,1230,436,1,1,0,1}},
{{1,288.05,471,1,1,0,1},{3,1612.2,473.2,1,1,0,1},{10,465,440,1,1,0,1},{15,272.05,479,1,1,0,1},{17,1614.2,461.2,1,1,0,1},{20,750,453,1,1,0,1},{25,1230,436,1,1,0,1}},
{{1,288.05,466.3,1,1,0,1},{3,1612.2,468.5,1,1,0,1},{10,465,435.65,1,1,0,1},{15,272.05,474.3,1,1,0,1},{17,1614.2,456.5,1,1,0,1},{20,750,448.15,1,1,0,1},{25,1230,430.65,1,1,0,1}},
{{1,288.05,461.65,1,1,0,1},{3,1612.2,463.85,1,1,0,1},{12,465,431.25,1,1,0,1},{15,272.05,469.65,1,1,0,1},{17,1614.2,451.85,1,1,0,1},{20,750,443.25,1,1,0,1},{25,1230,425.25,1,1,0,1}},
{{1,288.05,456.95,1,1,0,1},{3,1612.2,459.15,1,1,0,1},{12,465,426.9,1,1,0,1},{15,272.05,464.95,1,1,0,1},{17,1614.2,447.15,1,1,0,1},{20,750,438.4,1,1,0,1},{25,1230,419.9,1,1,0,1}},
{{1,288.05,452.25,1,1,0,1},{3,1612.2,454.45,1,1,0,1},{12,465,422.5,1,1,0,1},{15,272.05,460.25,1,1,0,1},{17,1614.2,442.45,1,1,0,1},{20,750,433.5,1,1,0,1},{25,1230,414.5,1,1,0,1}},
{{1,288.05,447.55,1,1,0,1},{3,1612.2,449.75,1,1,0,1},{12,465,418.15,1,1,0,1},{15,272.05,455.55,1,1,0,1},{17,1614.2,437.75,1,1,0,1},{20,750,428.6,1,1,0,1},{25,1230,409.1,1,1,0,1}},
{{1,288.05,442.9,1,1,0,1},{3,1612.2,445.1,1,1,0,1},{12,465,413.75,1,1,0,1},{15,272.05,450.9,1,1,0,1},{17,1614.2,433.1,1,1,0,1},{20,750,423.75,1,1,0,1},{25,1230,403.75,1,1,0,1}},
{{1,288.05,438.2,1,1,0,1},{3,1612.2,440.4,1,1,0,1},{12,465,409.35,1,1,0,1},{15,272.05,446.2,1,1,0,1},{17,1614.2,428.4,1,1,0,1},{20,750,418.9,1,1,0,1},{25,1230,398.4,1,1,0,1}},
{{1,288.05,433.5,1,1,0,1},{3,1612.2,435.7,1,1,0,1},{10,465,405,1,1,0,1},{15,272.05,441.5,1,1,0,1},{17,1614.2,423.7,1,1,0,1},{20,750,414,1,1,0,1},{25,1230,393,1,1,0,1}},
{{1,288.05,428.8,1,1,0,1},{3,1612.2,431,1,1,0,1},{10,465,400.65,1,1,0,1},{15,272.05,436.8,1,1,0,1},{17,1614.2,419,1,1,0,1},{20,750,409.15,1,1,0,1},{25,1230,387.65,1,1,0,1}},
{{1,288.05,424.15,1,1,0,1},{3,1612.2,426.35,1,1,0,1},{10,465,396.25,1,1,0,1},{15,272.05,432.15,1,1,0,1},{17,1614.2,414.35,1,1,0,1},{20,750,404.25,1,1,0,1},{25,1230,382.25,1,1,0,1}},
{{1,288.05,419.45,1,1,0,1},{3,1612.2,421.65,1,1,0,1},{10,465,391.9,1,1,0,1},{15,272.05,427.45,1,1,0,1},{17,1614.2,409.65,1,1,0,1},{20,750,399.4,1,1,0,1},{25,1230,376.9,1,1,0,1}},
{{1,288.05,414.75,1,1,0,1},{3,1612.2,416.95,1,1,0,1},{10,465,387.5,1,1,0,1},{15,272.05,422.75,1,1,0,1},{17,1614.2,404.95,1,1,0,1},{20,750,394.5,1,1,0,1},{25,1230,371.5,1,1,0,1}},
{{1,288.05,410.05,1,1,0,1},{3,1612.2,412.25,1,1,0,1},{10,465,383.15,1,1,0,1},{15,272.05,418.05,1,1,0,1},{17,1614.2,400.25,1,1,0,1},{20,750,389.65,1,1,0,1},{25,1230,366.15,1,1,0,1}},
{{1,288.05,405.4,1,1,0,1},{3,1612.2,407.6,1,1,0,1},{12,465,378.75,1,1,0,1},{15,272.05,413.4,1,1,0,1},{17,1614.2,395.6,1,1,0,1},{20,750,384.75,1,1,0,1},{25,1230,360.75,1,1,0,1}},
{{1,288.05,400.7,1,1,0,1},{3,1612.2,402.9,1,1,0,1},{12,465,374.4,1,1,0,1},{15,272.05,408.7,1,1,0,1},{17,1614.2,390.9,1,1,0,1},{20,750,379.9,1,1,0,1},{25,1230,355.4,1,1,0,1}},
{{1,288.05,396,1,1,0,1},{3,1612.2,398.2,1,1,0,1},{12,465,370,1,1,0,1},{15,272.05,404,1,1,0,1},{17,1614.2,386.2,1,1,0,1},{20,750,375,1,1,0,1},{25,1230,350,1,1,0,1}},
{{1,288.05,424.35,1,1,0,1},{3,1612.2,426.55,1,1,0,1},{12,465,398.35,1,1,0,1},{15,272.05,432.35,1,1,0,1},{17,1614.2,414.55,1,1,0,1},{20,750,403.65,1,1,0,1},{25,1230,378.75,1,1,0,1}},
{{1,288.05,452.65,1,1,0,1},{3,1612.2,454.85,1,1,0,1},{12,465,426.65,1,1,0,1},{15,272.05,460.65,1,1,0,1},{17,1614.2,442.85,1,1,0,1},{20,750,432.35,1,1,0,1},{25,1230,407.5,1,1,0,1}},
{{1,288.05,481,1,1,0,1},{3,1612.2,483.2,1,1,0,1},{12,465,455,1,1,0,1},{15,272.05,489,1,1,0,1},{17,1614.2,471.2,1,1,0,1},{20,750,461,1,1,0,1},{25,1230,436.25,1,1,0,1}},
{{1,288.05,509.35,1,1,0,1},{3,1612.2,511.55,1,1,0,1},{10,465,483.35,1,1,0,1},{15,272.05,517.35,1,1,0,1},{17,1614.2,499.55,1,1,0,1},{20,750,489.65,1,1,0,1},{25,1230,465,1,1,0,1}},
{{1,288.05,537.65,1,1,0,1},{3,1612.2,539.85,1,1,0,1},{10,465,511.65,1,1,0,1},{15,272.05,545.65,1,1,0,1},{17,1614.2,527.85,1,1,0,1},{20,750,518.35,1,1,0,1},{25,1230,493.75,1,1,0,1}},
{{1,288.05,566,1,1,0,1},{3,1612.2,568.2,1,1,0,1},{10,465,540,1,1,0,1},{15,272.05,574,1,1,0,1},{17,1614.2,556.2,1,1,0,1},{20,750,547,1,1,0,1},{25,1230,522.5,1,1,0,1}},
{{1,288.05,594.35,1,1,0,1},{3,1612.2,596.55,1,1,0,1},{10,465,568.35,1,1,0,1},{15,272.05,602.35,1,1,0,1},{17,1614.2,584.55,1,1,0,1},{20,750,575.65,1,1,0,1},{25,1230,551.25,1,1,0,1}},
{{5,288.05,622.65,1,1,0,1},{7,1612.2,624.85,1,1,0,1},{10,465,596.65,1,1,0,1},{15,272.05,630.65,1,1,0,1},{17,1614.2,612.85,1,1,0,1},{22,750,604.35,1,1,0,1},{27,1230,580,1,1,0,1}},
{{5,288.05,651,1,1,0,1},{7,1612.2,653.2,1,1,0,1},{10,465,625,1,1,0,1},{15,272.05,659,1,1,0,1},{17,1614.2,641.2,1,1,0,1},{22,750,633,1,1,0,1},{27,1230,608.75,1,1,0,1}},
{{5,288.05,679.35,1,1,0,1},{7,1612.2,681.55,1,1,0,1},{10,465,653.35,1,1,0,1},{15,272.05,687.35,1,1,0,1},{17,1614.2,669.55,1,1,0,1},{22,750,661.65,1,1,0,1},{27,1230,637.5,1,1,0,1}},
{{5,288.05,707.65,1,1,0,1},{7,1612.2,709.85,1,1,0,1},{10,465,681.65,1,1,0,1},{15,272.05,715.65,1,1,0,1},{17,1614.2,697.85,1,1,0,1},{22,750,690.35,1,1,0,1},{27,1230,666.25,1,1,0,1}},
{{5,288.05,736,1,1,0,1},{7,1612.2,738.2,1,1,0,1},{10,465,710,1,1,0,1},{15,272.05,744,1,1,0,1},{17,1614.2,726.2,1,1,0,1},{22,750,719,1,1,0,1},{27,1230,695,1,1,0,1}},
{{5,288.05,764.35,1,1,0,1},{7,1612.2,766.55,1,1,0,1},{10,465,738.35,1,1,0,1},{15,272.05,772.35,1,1,0,1},{17,1614.2,754.55,1,1,0,1},{22,750,747.65,1,1,0,1},{27,1230,723.75,1,1,0,1}},
{{5,288.05,792.65,1,1,0,1},{7,1612.2,794.85,1,1,0,1},{10,465,766.65,1,1,0,1},{15,272.05,800.65,1,1,0,1},{17,1614.2,782.85,1,1,0,1},{22,750,776.35,1,1,0,1},{27,1230,752.5,1,1,0,1}},
{{5,288.05,821,1,1,0,1},{7,1612.2,823.2,1,1,0,1},{10,465,795,1,1,0,1},{15,272.05,829,1,1,0,1},{17,1614.2,811.2,1,1,0,1},{22,750,805,1,1,0,1},{27,1230,781.25,1,1,0,1}},
{{5,288.05,849.35,1,1,0,1},{7,1612.2,851.55,1,1,0,1},{10,465,823.35,1,1,0,1},{15,272.05,857.35,1,1,0,1},{17,1614.2,839.55,1,1,0,1},{22,750,833.65,1,1,0,1},{27,1230,810,1,1,0,1}},
{{5,288.05,877.65,1,1,0,1},{7,1612.2,879.85,1,1,0,1},{10,465,851.65,1,1,0,1},{15,272.05,885.65,1,1,0,1},{17,1614.2,867.85,1,1,0,1},{22,750,862.35,1,1,0,1},{27,1230,838.75,1,1,0,1}},
{{5,288.05,906,1,1,0,1},{7,1612.2,908.2,1,1,0,1},{10,465,880,1,1,0,1},{15,272.05,914,1,1,0,1},{17,1614.2,896.2,1,1,0,1},{22,750,891,1,1,0,1},{27,1230,867.5,1,1,0,1}},
{{1,288.05,934.35,1,1,0,1},{3,1612.2,936.55,1,1,0,1},{10,465,908.35,1,1,0,1},{15,272.05,942.35,1,1,0,1},{17,1614.2,924.55,1,1,0,1},{22,750,919.65,1,1,0,1},{27,1230,896.25,1,1,0,1}},
{{1,288.05,962.65,1,1,0,1},{3,1612.2,964.85,1,1,0,1},{10,465,936.65,1,1,0,1},{15,272.05,970.65,1,1,0,1},{17,1614.2,952.85,1,1,0,1},{20,750,948.35,1,1,0,1},{25,1230,925,1,1,0,1}},
{{1,288.05,991,1,1,0,1},{3,1612.2,993.2,1,1,0,1},{10,465,965,1,1,0,1},{15,272.05,999,1,1,0,1},{17,1614.2,981.2,1,1,0,1},{20,750,977,1,1,0,1},{25,1230,953.75,1,1,0,1}},
{{1,288.05,1019.3,1,1,0,1},{3,1612.2,1021.5,1,1,0,1},{10,465,993.35,1,1,0,1},{15,272.05,1027.3,1,1,0,1},{17,1614.2,1009.5,1,1,0,1},{20,750,1005.7,1,1,0,1},{25,1230,982.5,1,1,0,1}},
{{1,288.05,1047.7,1,1,0,1},{3,1612.2,1049.8,1,1,0,1},{10,465,1021.7,1,1,0,1},{15,272.05,1055.7,1,1,0,1},{17,1614.2,1037.8,1,1,0,1},{20,750,1034.3,1,1,0,1},{25,1230,1011.2,1,1,0,1}},
{{1,288.05,1076,1,1,0,1},{3,1612.2,1078.2,1,1,0,1},{10,465,1050,1,1,0,1},{15,272.05,1084,1,1,0,1},{17,1614.2,1066.2,1,1,0,1},{20,750,1063,1,1,0,1},{25,1230,1040,1,1,0,1}},
},
}
+27 -1
View File
@@ -141,16 +141,42 @@ function Fever3:draw()
tex.draw_texture(self._id_overlay, {y = y, fade = a})
end
local FeverAnim = require("background/bg_objects/fever_anim")
local Fever = {}
Fever.Base = BaseFever
Fever.Anim = FeverAnim
Fever.Fever0 = Fever0
Fever.Fever1 = Fever1
Fever.Fever2 = Fever2
Fever.Fever3 = Fever3
-- The cabinet's random pool holds two crowds, fever_effect1 and fever_effect2
-- (fever_effect0 exists but is never drawn from: a single figure parked off-screen).
-- When their exported movie data is present that pool is the whole choice;
-- otherwise the four flat overlays.
local ANIM_POOL = { 1, 2 }
local function anim_ready(path)
if (path or "background") ~= "background" then return false end
for _, n in ipairs(ANIM_POOL) do
if not FeverAnim.available(n) then return false end
end
return true
end
function Fever.variant_count(path)
if anim_ready(path) then return #ANIM_POOL end
return 4
end
function Fever.create(index, bpm, path)
if anim_ready(path) then
local crowd = FeverAnim.new(ANIM_POOL[(index % #ANIM_POOL) + 1], bpm, path)
if crowd then return crowd end
end
local map = {Fever0, Fever1, Fever2, Fever3}
return map[index + 1].new(index, bpm, path)
return map[(index % 4) + 1].new(index % 4, bpm, path)
end
return Fever
@@ -0,0 +1,137 @@
-- 魂-max crowd, replayed from the cabinet's own movie data.
--
-- Data: Scripts/background/bg_data/fever_anim/f_<n>.lua (generated by
-- scratchpad/lyric/fever_export.py from enso/fever/fever_effect<n>.nulm): for every
-- authored root frame, the world transform of every crowd group in display order.
-- Textures: Graphics/background/fevera_<n>/s<shape>.png, one per group.
--
-- The cabinet drives the movie with two labels only -- `normal_fever` when the
-- gauge reaches 魂 max, `fever_normal` when it drops below -- so the state machine is
-- wait -> (start) enter [normal_fever, fever) -> loop [fever, fever_normal)
-- -> (stop) exit [fever_normal, nframes) -> wait
-- stepped at the song's beat rate (40 frames per beat). Every crowd group is its own sprite (bob + squash),
-- and their depth order comes from the data, so the turtle/shiba groups sit exactly
-- where and how the cabinet layers them.
local FeverAnim = {}
FeverAnim.__index = FeverAnim
-- The original re-times this movie to the song (EnsoGraphicBase::FrameSync, shared
-- with the dancers): the 40-frame bob is one beat, i.e. 60 fps at 90 BPM.
local BEAT_FRAMES = 40
local function frame_ms(bpm)
if not bpm or bpm <= 0 then return 1000.0 / 60.0 end
return (60000.0 / bpm) / BEAT_FRAMES
end
local STAGE_Y = 540 -- the 1920x540 crowd stage covers the lower half of the screen
function FeverAnim.available(index)
local ok, data = pcall(require, "background/bg_data/fever_anim/f_" .. index)
return ok and type(data) == "table"
end
function FeverAnim.new(index, bpm, path)
local ok, data = pcall(require, "background/bg_data/fever_anim/f_" .. index)
if not ok or type(data) ~= "table" then return nil end
local self = setmetatable({}, FeverAnim)
self.name = "fevera_" .. index
self.path = path or "background"
tex.load_folder(self.path, self.name)
self.data = data
self.enter_f = data.labels.normal_fever or 0
self.loop_f = data.labels.fever or self.enter_f
self.exit_f = data.labels.fever_normal or data.nframes
self.ids = {}
self.state = "wait"
self.cursor = 0
self.last_ms = nil
return self
end
function FeverAnim:id_of(shape)
local id = self.ids[shape]
if id == nil then
id = tex.get_id(self.name, "s" .. shape) or false
self.ids[shape] = id
end
return id or nil
end
-- rising edge: GotoAndPlay("normal_fever") -- also restarts a crowd that was leaving
function FeverAnim:start()
if self.state == "enter" or self.state == "loop" then return end
self.state = "enter"
self.cursor = self.enter_f
end
-- falling edge: GotoAndPlay("fever_normal")
function FeverAnim:stop()
if self.state == "wait" or self.state == "exit" then return end
self.state = "exit"
self.cursor = self.exit_f
end
function FeverAnim:is_visible()
return self.state ~= "wait"
end
function FeverAnim:alpha()
return self.state ~= "wait" and 1.0 or 0.0
end
function FeverAnim:update(current_ms, bpm)
local last = self.last_ms
self.last_ms = current_ms
if self.state == "wait" or not last then return end
local dt = current_ms - last
if dt <= 0 then return end
if dt > 500 then dt = 500 end
self.cursor = self.cursor + dt / frame_ms(bpm)
if self.state == "enter" and self.cursor >= self.loop_f then
self.state = "loop"
end
if self.state == "loop" then
local span = self.exit_f - self.loop_f
if span > 0 then
self.cursor = self.loop_f + (self.cursor - self.loop_f) % span
else
self.cursor = self.loop_f
end
elseif self.state == "exit" and self.cursor >= self.data.nframes then
self.state = "wait"
end
end
function FeverAnim:draw()
if self.state == "wait" then return end
local f = math.floor(self.cursor)
if f < 0 then f = 0 elseif f >= self.data.nframes then f = self.data.nframes - 1 end
local rows = self.data.frames[f + 1]
if not rows then return end
local shapes = self.data.shapes
for i = 1, #rows do
local r = rows[i]
local a = r[7]
if a > 0.002 then
local s = shapes[r[1]]
local id = s and self:id_of(r[1])
if id then
local sx, sy = r[4], r[5]
tex.draw_texture(id, {
x = r[2],
y = r[3] + STAGE_Y,
x2 = s[1] * (sx - 1),
y2 = s[2] * (sy - 1),
origin = { s[3] * sx, s[4] * sy },
rotation = r[6],
fade = a,
})
end
end
end
end
function FeverAnim:destroy()
tex.unload_folder(self.path, self.name)
end
return FeverAnim
+7 -10
View File
@@ -34,8 +34,9 @@ function Entry.new()
-- (`scratchpad/r15ae/z_1player_en.png`). Deliberate deviation, documented here: the
-- fill colour is unchanged, so the label still reads exactly as the cabinet's black
-- text, and it is legible in every language this skin ships.
text.create_text("entry_credit_1p", { 0, 0, 0, 255 }, { 0, 0, 0, 255 }, false, 0, 0),
text.create_text("entry_credit_2p", { 0, 0, 0, 255 }, { 0, 0, 0, 255 }, false, 0, 0),
-- black ink with the cabinet's WHITE outline (same 7 stage-px border as the message)
text.create_text("entry_credit_1p", { 0, 0, 0, 255 }, { 255, 255, 255, 255 }, false, 7.0 / tex.get_screen_scale(), 0),
text.create_text("entry_credit_2p", { 0, 0, 0, 255 }, { 255, 255, 255, 255 }, false, 7.0 / tex.get_screen_scale(), 0),
}
-- the message is ONE string drawn in two colourways: the arcade stacks a black-tinted
-- outline copy (ET3 via cmul (0,0,0)) under a white fill copy (ET5), and its blink
@@ -230,7 +231,8 @@ local ROW_CY = { 432 + 72, 432 + 248 } -- 504 / 680
-- CENTRE is box.top + box.h/2 + border -- independent of which font raster is used:
local LABEL_INK_X = CREDIT_CX - 443 -- box.left(-450) + border(7), left-aligned
local MSG_INK_X = CREDIT_CX + 190 -- box.left(-137) + border(7) + box.w/2(320)
local TEXT_INK_DY = -9.5 -- box.top(-64.5) + box.h/2(48) + border(7)
local TEXT_INK_DY = 0.5 -- box.top(-64.5) + box.h/2(48) + border(7), +10: measured
-- against the cabinet the ink sat ~10 px above the pill centre
local PAD5 = 9 -- OutlinedText pad for thickness 5: (int)(5*1.5)+2
-- ROUND 15: the two player labels are now built with thickness 0 (see `text_credit_p` above),
-- so their texture pad is (int)(0*1.5)+2 = 2, not 9. Using PAD5 here would shift the ink 7 px
@@ -381,13 +383,8 @@ function Entry:draw_credit(a, sel, blink_f, flash_row, flash_a, loop_rows)
tex.draw_texture(self.cr_flash, { index = sel - 1, fade = a * pulse })
end
if sel == 0 and self.text_cancel then
self.text_cancel:draw({
x = math.floor(CANCEL_CX - self.text_cancel.width / 2 + 0.5),
y = math.floor(CANCEL_CY - self.text_cancel.height / 2 + 0.5),
fade = a,
})
end
-- The cabinet never shows a 「つかわない」 caption on this screen (the cancel side is
-- just the un-armed state), so nothing is drawn for sel == 0.
if flash_row and flash_a and flash_a > 0.002 then
tex.draw_texture(self.cr_flash, { index = flash_row - 1, fade = a * flash_a })
+19
View File
@@ -359,7 +359,25 @@ end
-- ── half 1: SONG_SELECT (close + stamp) ─────────────────────────────────────
-- Returns true when it drew anything.
-- The rig only belongs to SONG_SELECT (close leg) and DAN_SELECT (open leg).
-- Teardown used to rely on SongSelect:draw_top calling set_progress(-1), which never
-- happens when the player backs out of DAN_SELECT straight to TITLE (Esc): the last
-- engine_u stayed put and the global Indicator fallback kept painting the shut doors
-- over the title screen. Drop every bit of state as soon as we are anywhere else.
local function off_screen()
local scr = tex.current_screen and tex.current_screen() or nil
if scr == nil or scr == "SONG_SELECT" or scr == "DAN_SELECT" then return false end
M.engine_u = nil
M.armed = false
M.armed_open = false
M.open_t0 = nil
M.t0 = nil
M.open_held = false
return true
end
function M.draw()
if off_screen() then return false end
local u = M.progress()
if not u then return false end
@@ -476,6 +494,7 @@ local INTRO_FROM = 5 -- clip label `in`
local REVEAL_F = OPEN_FROM -- 182
function M.draw_open()
if off_screen() then __hss_dan_intro = nil; return false end
local req = __hss_dan_intro
if req ~= nil then
__hss_dan_intro = nil
+25 -8
View File
@@ -255,7 +255,6 @@ function SongSelect.new()
-- the 演奏オプション panel, so the NEIRO slot is unreachable and is not drawn.
local neiro_row = tex.get_skin_config("option_neiro_row")
self._neiro_in_options = (neiro_row ~= nil) and (neiro_row.x >= 1)
self._id_btn_neiro = (not self._neiro_in_options) and get_any("diff_select", "neiro") or nil
self._id_btn_glow = tex.get_id("yellow_box", "s_crown_clear") -- 168x168 button cursor plate (moved off diff_select: every 1p/2p_* name there is drawn by the engine in 2P)
self._id_small_crown = tex.get_id("diff_select", "difficulty_crown") -- 40x40, frame = crown (0 none)
self._id_small_rank = tex.get_id("yellow_box", "s_crown_outline") -- 40x40, frame = rank-1 (moved off 1p_outline_back)
@@ -485,6 +484,16 @@ function SongSelect:_opt_ids()
speed = get_any("modifier", "mod_baisaku"),
sanbai = get_any("modifier", "mod_sanbai"),
yonbai = get_any("modifier", "mod_yonbai"),
-- one badge per speed value, like the cabinet (x1.1 .. x1.9, x2, x2.5, x3, x3.5, x4)
speed_by_value = {
[11] = get_any("modifier", "mod_speed_x1_1"), [12] = get_any("modifier", "mod_speed_x1_2"),
[13] = get_any("modifier", "mod_speed_x1_3"), [14] = get_any("modifier", "mod_speed_x1_4"),
[15] = get_any("modifier", "mod_speed_x1_5"), [16] = get_any("modifier", "mod_speed_x1_6"),
[17] = get_any("modifier", "mod_speed_x1_7"), [18] = get_any("modifier", "mod_speed_x1_8"),
[19] = get_any("modifier", "mod_speed_x1_9"), [20] = get_any("modifier", "mod_speed_x2"),
[25] = get_any("modifier", "mod_speed_x2_5"), [30] = get_any("modifier", "mod_speed_x3"),
[35] = get_any("modifier", "mod_speed_x3_5"), [40] = get_any("modifier", "mod_speed_x4"),
},
display = get_any("modifier", "mod_doron"),
inverse = get_any("modifier", "mod_abekobe"),
kimagure = get_any("modifier", "mod_kimagure"),
@@ -590,9 +599,19 @@ function SongSelect:draw_option_board(player, offset, rows, cursor, change)
local icon
local st = row.state or 0
if row.name == "speed" then
if st >= 40 then icon = ids.icon.yonbai
elseif st >= 30 then icon = ids.icon.sanbai
elseif st > 10 then icon = ids.icon.speed end
if st > 10 then
-- exact badge for the value; nearest lower step for anything in between
local best
for v, id in pairs(ids.icon.speed_by_value or {}) do
if id and v <= st and (not best or v > best) then best = v end
end
icon = best and ids.icon.speed_by_value[best] or nil
end
if not icon then
if st >= 40 then icon = ids.icon.yonbai
elseif st >= 30 then icon = ids.icon.sanbai
elseif st > 10 then icon = ids.icon.speed end
end
elseif row.name == "random" then
if st == 2 then icon = ids.icon.detarame
elseif st == 1 then icon = ids.icon.kimagure end
@@ -1622,10 +1641,8 @@ function SongSelect:draw_song_diff_select(box)
-- ROUND 4d (user): option = same 128 px plain icon as return, full opacity (main_diff_other_board
-- 'option' / 'return' are the same-size boards; the cursor frame/glow geometry is shared in draw_selector)
draw_centered(self._id_btn_option, DS_SLOT_X[DIFF_MODIFIER], DS_BTN_Y, 128, 128, { fade = fade })
if self._id_btn_neiro then
draw_centered(self._id_btn_neiro, DS_SLOT_X[DIFF_NEIRO], DS_NEIRO_Y, 80, 80,
{ fade = fade * 0.35, x2 = 80 - 168, y2 = 80 - 168 })
end
-- (The faint 80 px NEIRO placeholder frame that used to sit under the return button
-- is gone: the cabinet's course-select board has no such element.)
-- diff boards
for i = 0, 3 do