Files
YataiDONNijiiro/Graphics/dan_select/animation.json
T
TaikoZhongandClaude Opus 5.5 a887052197 Animations: follow the engine's merged move animations (cf785cf)
The engine now reads one move per effect where it used to add several:
kusudama 11 (= old 11 + 12) and 13 (= old 13 + 18), diff sort bounce 22
(= old 22-25), score counter 38 (y before the fan-out, from the old start
y and 39) and 39 (fan-out = old 40); the single-point "waypoint" key is
now a "waypoints" list. Same motion as before, at this skin's values.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 00:41:16 +08:00

168 lines
6.5 KiB
JSON

[
{
"id": 8,
"type": "fade",
"duration": 183.33,
"initial_opacity": 0.0,
"final_opacity": 1.0,
"delay": 183.33,
"comment": "confirmation box fade in"
},
{
"id": 9,
"type": "move",
"duration": 83.33,
"start_position": 960,
"total_distance": -630,
"delay": 83.33,
"comment": "yellow box left out -> arcade board left edge 330"
},
{
"id": 10,
"type": "move",
"duration": 83.33,
"start_position": 960,
"total_distance": 834,
"delay": 83.33,
"comment": "yellow box right out -> 1794 (= 1874 - 80 edge)"
},
{
"id": 11,
"type": "move",
"duration": 83.33,
"start_position": 0,
"total_distance": 1384,
"delay": 83.33,
"comment": "yellow box center out -> 1544 - 2*80"
},
{
"id": 12,
"type": "fade",
"duration": 83.33,
"initial_opacity": 0.0,
"final_opacity": 1.0,
"delay": 83.33,
"comment": "yellow box fade in"
},
{
"id": 13,
"type": "move",
"duration": 116.67,
"start_position": 960,
"total_distance": -630,
"comment": "yellow box left out 2 -> 330"
},
{
"id": 14,
"type": "move",
"duration": 116.67,
"start_position": 960,
"total_distance": 834,
"comment": "yellow box right out 2 -> 1794"
},
{
"id": 15,
"type": "move",
"duration": 116.67,
"start_position": 0,
"total_distance": 1384,
"comment": "yellow box center out 2 -> 1384"
},
{
"id": 16,
"type": "move",
"duration": 133.33,
"start_position": 540,
"total_distance": -358,
"delay": {
"reference_id": 13,
"property": "duration"
},
"comment": "yellow box top out -> arcade board top 182"
},
{
"id": 17,
"type": "move",
"duration": 133.33,
"start_position": 0,
"total_distance": 712,
"delay": {
"reference_id": 13,
"property": "duration"
},
"comment": "yellow box center h out -> 872 - 2*80"
},
{
"id": 18,
"type": "fade",
"duration": 116.67,
"initial_opacity": 0.0,
"final_opacity": 1.0,
"delay": {
"init_val": {
"init_val": 16.67,
"reference_id": 16,
"property": "duration"
},
"reference_id": 13,
"property": "duration"
},
"comment": "yellow box fade in 2"
},
{
"id": 28,
"type": "move",
"duration": 333.33,
"total_distance": 548,
"waypoints": [
{
"at": 245.6,
"value": 623
}
],
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. option/neiro panel slide IN. Arcade song_select_main_diff_option MC65 'board_left' label 'in' = 20 frames @60fps (333.33 ms), PIECEWISE LINEAR through an OVERSHOOT: y 650 -> -75 over frames 0..14, then -75 -> 0 over frames 14..19. Engine space: json y 1080, resting top 532 => total_distance 548, waypoint 548+75 = 623 at 14/19 = 0.7368. (MC64 'board_right' reaches -75 one frame later, at 15/19; not portable, the two boards share one animation id here.)"
},
{
"id": 29,
"type": "fade",
"duration": 1000,
"loop": true,
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. neiro blue arrow fade out"
},
{
"id": 30,
"type": "move",
"duration": 1000,
"total_distance": 5,
"loop": true,
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. option/neiro arrow bounce (arcade arrow select: 5 px)"
},
{
"id": 31,
"type": "move",
"duration": 250,
"total_distance": 70,
"ease_out": "quadratic",
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. option value text slide (= skin_config option_text_in.x)"
},
{
"id": 32,
"type": "fade",
"duration": 250,
"ease_out": "quadratic",
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. neiro fade sideways"
},
{
"id": 39,
"type": "move",
"duration": 333.33,
"total_distance": 548,
"waypoints": [
{
"at": 70.17,
"value": -75
}
],
"comment": "ROUND 17: copied verbatim from song_select/animation.json so the 演奏オプション panel the 段位道場 confirmation dialog's option chip opens runs identically on DAN_SELECT. ModifierSelector's constructor reads 28/29/30/31/32 (+39 optional) and get_animation THROWS on a missing id; a child animation.json replaces the parent's rather than merging, so DAN_SELECT had none of them. option/neiro panel slide OUT (ModifierSelector/NeiroSelector pick this up on confirm when it exists; without it they replay id 28). Arcade MC65 label 'out' = frames 25..44: y 0 -> -75 over 4 frames, then -75 -> 650 over 15. Engine space the drawn y is `attribute + song_select_offset.x` (= -548 in this skin), so attribute runs 0 -> -75 at 4/19 = 0.2105 -> 548."
}
]