dan select: 自己ベスト rows and all six clear stamps #65

Merged
GanYiZhong merged 1 commits from GanYiZhong/YataiDONNijiiro:feat/dan-select-best-stamps into main 2026-10-14 15:38:04 +02:00
Collaborator

Builds on the course panel PR (fix/dan-select-exam-panel). Merge that one first.

自己ベスト rows

Each exam shows a 自己ベスト row like the cabinet's: a white pill under the condition, with the label on the left and the recorded best on the right.

  • The gauge box's pill is already part of exam_gauge_box.
  • The right-hand boxes get yellow_box/exam_best_pill, one per song segment.
  • Strings come from dan_exam_best_label (ja/en/zh/ko); value size from dan_exam_best_value.
  • The values come from the engine's box:exam_best(i) / box:exam_song_best(i, j) (Yonokid/YataiDON#307). Without them, or before a course is played, only the label is shown.

Six clear stamps

box/clear_mark and yellow_box/clear_mark now have all six stamps: red/gold × pass/full combo/all good.

  • The stamp is picked by the record's rank, box.record_rank (2–7), also from #307.
  • On an engine without it, clear_mark still picks frame 0 (passed) or 5 (rank 7), as before.

Checked on dan select with a two-song test course on auto: the bests appeared after the run and the matching stamp was shown. No errors in the log.

checksums.sha256 is not part of this PR.

🤖 Generated with Claude Code

Builds on the course panel PR (`fix/dan-select-exam-panel`). Merge that one first. **自己ベスト rows** Each exam shows a 自己ベスト row like the cabinet's: a white pill under the condition, with the label on the left and the recorded best on the right. - The gauge box's pill is already part of `exam_gauge_box`. - The right-hand boxes get `yellow_box/exam_best_pill`, one per song segment. - Strings come from `dan_exam_best_label` (ja/en/zh/ko); value size from `dan_exam_best_value`. - The values come from the engine's `box:exam_best(i)` / `box:exam_song_best(i, j)` (Yonokid/YataiDON#307). Without them, or before a course is played, only the label is shown. **Six clear stamps** `box/clear_mark` and `yellow_box/clear_mark` now have all six stamps: red/gold × pass/full combo/all good. - The stamp is picked by the record's rank, `box.record_rank` (2–7), also from #307. - On an engine without it, `clear_mark` still picks frame 0 (passed) or 5 (rank 7), as before. Checked on dan select with a two-song test course on auto: the bests appeared after the run and the matching stamp was shown. No errors in the log. `checksums.sha256` is not part of this PR. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
GanYiZhong added 1 commit 2026-10-14 15:37:58 +02:00
- Each exam shows its 自己ベスト row as on the cabinet: a white pill (part of
  exam_gauge_box, and yellow_box/exam_best_pill for the right-hand boxes, one per song
  segment) with the label on the left and the recorded best on the right. Needs the
  engine's box:exam_best / exam_song_best; without them, or before a course is played,
  the label is shown alone.
- box/clear_mark and yellow_box/clear_mark have the cabinet's six stamps (red/gold x
  pass/full combo/all good), picked by the record's rank (box.record_rank); an engine
  without it falls back to clear_mark (frames 0 and 5).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
GanYiZhong merged commit b5f9ee628e into main 2026-10-14 15:38:04 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Yonokid/YataiDONNijiiro#65