Fixes the dan select layout and the dan result screen after the 2026-10-15 skin config changes.
Dan select
PyTaikoGreen's dan_select.lua no longer has the exam grid, value centring, rank plate or total-notes options, which this skin's dan select is built on. This skin was falling back to the plain exam rows, with the parent's offsets and margins, so song rows, levels and the exam boxes were out of place.
The SKIN table added at the top of this skin's dan_select.lua (dan_yellow_box_offset) is local to this file, so the parent's script never saw it.
Scripts/dan_select/dan_select_base.lua is the parent's dan select as of 4d325135 with those options fixed to this skin's values. Keys that were dropped get this skin's own numbers from before the change; renamed keys (dan_select_title, dan_select_subtitle, dan_select_chip_name, dan_select_exam_info, song_select_box_name) are read under their new names. dan_select.lua loads it in place of the parent's script.
Dan result
SKIN.dan_result_song_name has no outline, so DanResultDraw.new compared nil and the dan result screen never built. It now has outline = -1, the old skin_config default.
Checked in play: dan select looks as it did before the change, with the exam grid, three songs and levels; a one-song dan course plays through to its result screen with no Lua errors.
Fixes the dan select layout and the dan result screen after the 2026-10-15 skin config changes.
**Dan select**
- PyTaikoGreen's `dan_select.lua` no longer has the exam grid, value centring, rank plate or total-notes options, which this skin's dan select is built on. This skin was falling back to the plain exam rows, with the parent's offsets and margins, so song rows, levels and the exam boxes were out of place.
- The `SKIN` table added at the top of this skin's `dan_select.lua` (`dan_yellow_box_offset`) is local to this file, so the parent's script never saw it.
- `Scripts/dan_select/dan_select_base.lua` is the parent's dan select as of 4d325135 with those options fixed to this skin's values. Keys that were dropped get this skin's own numbers from before the change; renamed keys (`dan_select_title`, `dan_select_subtitle`, `dan_select_chip_name`, `dan_select_exam_info`, `song_select_box_name`) are read under their new names. `dan_select.lua` loads it in place of the parent's script.
**Dan result**
- `SKIN.dan_result_song_name` has no `outline`, so `DanResultDraw.new` compared nil and the dan result screen never built. It now has `outline = -1`, the old skin_config default.
Checked in play: dan select looks as it did before the change, with the exam grid, three songs and levels; a one-song dan course plays through to its result screen with no Lua errors.
`checksums.sha256` is not part of this PR.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Upstream removed the exam grid, value centring, rank plate and total-notes options from PyTaikoGreen's dan_select.lua and moved its numbers into the script, so this skin fell back to the parent's plain exam rows with the parent's offsets (its own SKIN table never reached the parent's local one). dan_select_base.lua is the parent's script as of 4d325135 with those options fixed to this skin's values and the dropped keys given this skin's own numbers from before the migration; dan_select.lua loads it instead of the parent's.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The table that replaced the skin_config entry has no outline, so DanResultDraw.new compared nil and the dan result screen never built.
Co-Authored-By: Claude Opus 5.5 <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.
Fixes the dan select layout and the dan result screen after the 2026-10-15 skin config changes.
Dan select
dan_select.luano longer has the exam grid, value centring, rank plate or total-notes options, which this skin's dan select is built on. This skin was falling back to the plain exam rows, with the parent's offsets and margins, so song rows, levels and the exam boxes were out of place.SKINtable added at the top of this skin'sdan_select.lua(dan_yellow_box_offset) is local to this file, so the parent's script never saw it.Scripts/dan_select/dan_select_base.luais the parent's dan select as of 4d325135 with those options fixed to this skin's values. Keys that were dropped get this skin's own numbers from before the change; renamed keys (dan_select_title,dan_select_subtitle,dan_select_chip_name,dan_select_exam_info,song_select_box_name) are read under their new names.dan_select.lualoads it in place of the parent's script.Dan result
SKIN.dan_result_song_namehas nooutline, soDanResultDraw.newcompared nil and the dan result screen never built. It now hasoutline = -1, the old skin_config default.Checked in play: dan select looks as it did before the change, with the exam grid, three songs and levels; a one-song dan course plays through to its result screen with no Lua errors.
checksums.sha256is not part of this PR.🤖 Generated with Claude Code