Compare commits

..
28 Commits
Author SHA1 Message Date
Yonokid 69c091d8c6 Merge branch 'main' into fever-crowd-anim 2026-09-09 17:09:06 +02:00
Yonokid 254c528928 Merge pull request 'dan doors: tear down outside SONG_SELECT / DAN_SELECT' (#9) from GanYiZhong/YataiDONNijiiro:dan-doors-teardown into main
Reviewed-on: Yonokid/YataiDONNijiiro#9
2026-09-09 17:08:54 +02:00
Yonokid 87b52c9ffc Merge branch 'main' into dan-doors-teardown 2026-09-09 17:08:05 +02:00
Yonokid 839851882f Merge branch 'GanYiZhong-hud-nijiiro-modifiers' 2026-09-09 11:07:43 -04:00
Yonokid 16503ae066 Merge pull request 'entry: centre the credit-row text, white outline on the 1P/2P labels' (#7) from GanYiZhong/YataiDONNijiiro:entry-credit-text into main
Reviewed-on: Yonokid/YataiDONNijiiro#7
2026-09-09 17:06:08 +02:00
Yonokid 2af98a9a81 Merge pull request 'song select: drop the placeholder NEIRO frame under the return button' (#6) from GanYiZhong/YataiDONNijiiro:diffselect-no-neiro-frame into main
Reviewed-on: Yonokid/YataiDONNijiiro#6
2026-09-09 17:05:55 +02:00
Yonokid 12ead8f71b Merge branch 'main' into diffselect-no-neiro-frame 2026-09-09 17:05:36 +02:00
Yonokid 76168ea4bb Merge pull request 'entry: drop the 「つかわない」 caption' (#5) from GanYiZhong/YataiDONNijiiro:entry-no-cancel-caption into main
Reviewed-on: Yonokid/YataiDONNijiiro#5
2026-09-09 17:05:27 +02:00
Yonokid 8ad6f0a24d Merge branch 'main' into entry-no-cancel-caption 2026-09-09 17:05:06 +02:00
Yonokid 2a83611372 Merge branch 'GanYiZhong-fix-gauge-fade' 2026-09-09 11:04:40 -04:00
TaikoZhongandClaude Fable 5.1 41c27b11f4 Soul-max crowd: step at the song's beat like the original
The original re-times this movie to the song (the same frame sync the dancers
use): the 40-frame bob is one beat, so 60 fps only at 90 BPM.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 15:12:14 +08:00
TaikoZhongandClaude Fable 5.1 4196e7e0f5 Soul-max crowd: step at 60 Hz
Checked against the original: the crowd bobs at half the speed the 120 Hz
step gave it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 13:37:18 +08:00
Yonokid a82fcee8e6 Merge pull request 'Enable gauge_cell_fade_in' (#3) from GanYiZhong/YataiDONNijiiro:sco-gauge-cell-fade-in into main
Reviewed-on: Yonokid/YataiDONNijiiro#3
2026-09-09 06:32:40 +02:00
Yonokid 978beb1d21 Merge branch 'main' into sco-gauge-cell-fade-in 2026-09-09 06:32:29 +02:00
Yonokid c098e1147a Merge pull request 'Enable combo_color_tiers (silver 50+, gold 100+)' (#2) from GanYiZhong/YataiDONNijiiro:sco-combo-color-tiers into main
Reviewed-on: Yonokid/YataiDONNijiiro#2
2026-09-09 06:23:22 +02:00
TaikoZhongandClaude Fable 5.1 d56bdad922 Soul-max crowd: step at 120 Hz and paint it over the band
The original advances the movie at 120 Hz, so the bob ran at half speed, and it
paints the crowd after the bottom band, not under it.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 11:05:07 +08:00
TaikoZhongandClaude Fable 5.1 6e583787a0 Soul-max crowd: draw from the two crowds the original actually uses
The original's random pool only holds fever_effect1 and fever_effect2;
fever_effect0 is a single figure parked off-screen, so picking it showed an
empty crowd at 魂 max. Drop it and pick from the two real crowds.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 10:55:21 +08:00
TaikoZhongandClaude Fable 5.1 1b74eb9c99 Soul-max crowd: replay the per-group movie instead of a flat overlay
The 魂 max crowd was two flattened PNGs, so every figure sat at one fixed
position, the turtle/shiba groups lost their depth order, and nothing moved.
The crowd is now data-driven: one texture per crowd group
(background/fevera_N) plus a per-frame display list
(bg_data/fever_anim/f_N.lua) covering the rise, the loop and the fall, replayed
by bg_objects/fever_anim.lua at 60 fps. Every group bobs and squashes on its
own phase and layers exactly as authored; the base of the crowd lands on the
band. Three crowds are shipped; the old flat overlays stay as a fallback for
skins without the data.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 09:48:44 +08:00
TaikoZhongandClaude Fable 5.1 972bea88be dan doors: tear the rig down when the screen is not SONG_SELECT/DAN_SELECT
Backing out of DAN_SELECT straight to TITLE skipped the song-select teardown,
so the shut doors stayed painted over the title screen.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 08:48:57 +08:00
TaikoZhongandClaude Fable 5.1 eff95cd28e song select: per-value speed badges in the option panel
The はやさ row showed the same badge for every value; use the cabinet's
one-badge-per-speed set (x1.1 .. x1.9, x2, x2.5, x3, x3.5, x4).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 08:30:29 +08:00
TaikoZhongandClaude Fable 5.1 ae9fba1206 game HUD: cabinet option badges on the 3x2 slot grid
The in-game modifier badges were inherited from the base skin (2x2, three
coarse speed tiers). Ship the cabinet badge art (one per speed x1.1..x4,
doron, abekobe, kimagure, detarame) and declare the cabinet slot grid
(3 columns x 2 rows, 44 px pitch, first slot at 170,77) as mod_badge_grid.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 07:34:58 +08:00
TaikoZhongandClaude Fable 5.1 a90ca40ea9 entry: centre the credit-row text and give the 1P/2P labels their white outline
The 1人プレイ / 2人プレイ labels and the 太鼓をたたいてスタート! prompt sat about
10 px above the middle of their yellow pills; the labels also lacked the
cabinet's white outline (they were drawn black on black).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 06:25:28 +08:00
TaikoZhongandClaude Fable 5.1 4c2a7da14b gauge: draw the fill on the cabinet's 50-cell / 21 px grid
The gauge art (border/overlay separators, クリア box, 魂) is a 50-cell, 21 px
grid from x=738, but the fill pieces were 12 px wide and the engine stepped
in 87 units, so the fill edge landed mid-cell ("超過但不到一格"). Declare
gauge_cells = 50 (engine reads it via skin_entry) and widen every fill
piece to one 21 px cell; the fade/transition pieces are anchored on the
cell they belong to and lined up with the bar rows (1P -34 / 2P -91).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 04:46:42 +08:00
TaikoZhongandClaude Fable 5.1 50cd893a3e song select: drop the placeholder NEIRO frame under the return button
The course-select board drew a faint 80 px square at (440, 602) as a stand-in
for a separate NEIRO slot; the cabinet has no such element and it read as a
stray popup.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-09 02:05:53 +08:00
TaikoZhongandClaude Fable 5.1 91529eeb53 entry: drop the 「つかわない」 caption
The cabinet's entry screen has no such caption; the cancel side is simply
the un-armed state, so the label sat as stray text under the prompts.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 23:04:54 +08:00
TaikoZhongandClaude Fable 5.1 9b16a03b66 Enable gauge_cell_fade_in (new gauge cell fades in instead of flashing)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 21:22:41 +08:00
TaikoZhongandClaude Fable 5.1 b50605c3f1 gauge: align the cell fade-in sprite with the bar
1p/2p_bar_fade was a 24 px (two-cell) sprite drawn half a cell left of the
new cell and 3 px below the bar (4 px for 2P), so gaining a cell looked like
a half-cell bump. Crop it to one cell (12 px), anchor it on the new cell and
line its body up with the bar rows. Gauge frame position is unchanged.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 20:29:19 +08:00
TaikoZhongandClaude Fable 5.1 a9c214e5d0 Enable combo_color_tiers (silver 50+, gold 100+)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-08 17:02:04 +08:00
82 changed files with 795 additions and 41 deletions

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
}
}
+13 -1
View File
@@ -16,7 +16,9 @@
"dan_confirm_yes_left": false,
"songselect_2p_join": true,
"costume_preset_slots": true,
"dan_title_horizontal": true
"dan_title_horizontal": true,
"combo_color_tiers": true,
"gauge_cell_fade_in": true
}
},
"score_counter_pos": {
@@ -540,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