Once a player confirms a course, the big translucent course mark behind the difficulty board (main_diff_mark, 680x680 at x 200 / 1720) now plays the arcade's course_decide_start pop: over 30 frames the mark goes opaque on a white backing, stretches to 1.235x its height and back while a white copy of the mark flashes on top, then holds the opaque course_decide look. Before the decision it is unchanged (the 154/256 wait look).
Needs the engine binding player:difficulty_decided() (Yonokid/YataiDON#162); without it the mark simply keeps its wait look, so the skin stays compatible with older engines.
New textures Graphics/song_select/diff_mark_anim/ (opaque mark_course course_1..5 and mark_course_white), origin = centre.
The pop restarts from scratch when the engine resets the selection (course back) and the player confirms again.
Verified on the J-POP folder, かんたん: translucent -> white flash at ~160-320 ms -> opaque plum from ~600 ms on.
Once a player confirms a course, the big translucent course mark behind the difficulty board (main_diff_mark, 680x680 at x 200 / 1720) now plays the arcade's `course_decide_start` pop: over 30 frames the mark goes opaque on a white backing, stretches to 1.235x its height and back while a white copy of the mark flashes on top, then holds the opaque `course_decide` look. Before the decision it is unchanged (the 154/256 `wait` look).
- Needs the engine binding `player:difficulty_decided()` (Yonokid/YataiDON#162); without it the mark simply keeps its wait look, so the skin stays compatible with older engines.
- New textures `Graphics/song_select/diff_mark_anim/` (opaque mark_course course_1..5 and mark_course_white), origin = centre.
- The pop restarts from scratch when the engine resets the selection (course back) and the player confirms again.
Verified on the J-POP folder, かんたん: translucent -> white flash at ~160-320 ms -> opaque plum from ~600 ms on.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
main_diff_mark 'course_decide_start' (frames 35..64): once player:difficulty_decided()
(engine PR #162) the translucent 680x680 mark behind the difficulty board goes opaque
over a white backing, stretching to 1.235x its height and back while a white copy
flashes on top, then holds the 'course_decide' look. Opaque shapes of mark_course
(course_1..5) and mark_course_white exported to Graphics/song_select/diff_mark_anim.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Once a player confirms a course, the big translucent course mark behind the difficulty board (main_diff_mark, 680x680 at x 200 / 1720) now plays the arcade's
course_decide_startpop: over 30 frames the mark goes opaque on a white backing, stretches to 1.235x its height and back while a white copy of the mark flashes on top, then holds the opaquecourse_decidelook. Before the decision it is unchanged (the 154/256waitlook).player:difficulty_decided()(Yonokid/YataiDON#162); without it the mark simply keeps its wait look, so the skin stays compatible with older engines.Graphics/song_select/diff_mark_anim/(opaque mark_course course_1..5 and mark_course_white), origin = centre.Verified on the J-POP folder, かんたん: translucent -> white flash at ~160-320 ms -> opaque plum from ~600 ms on.
🤖 Generated with Claude Code