fix(multiball): defer fifth-lock panel for survivor
The fifth type-three lock always pays and transfers its accumulated award, but the original starts the DAT600 panel only when no multiball is active. Rust started the panel unconditionally and suspended the surviving ball. A later capture with all five contacts already set could also shift the award to 320,000 instead of retaining the binary's 160,000 cap. Derive each lock award from the post-capture filled count capped at five. Keep the transfer, multiplier increment, and extra ball during multiball, but defer the panel until a single-ball completion. Cover the fifth multiball capture and its survivor recapture end to end. Test Plan: - `cargo test --workspace --all-targets --all-features` -- 120 passed - `cargo clippy --workspace --all-targets --all-features -- -D warnings` -- passed - `rumdl check --flavor commonmark RECONSTRUCTION.md CHANGELOG.md` -- passed - `git diff --cached --check` -- passed
This commit is contained in:
@@ -99,7 +99,9 @@ and this project adheres to
|
||||
only for an active ball, pauses in the launcher, and survives a normal drain.
|
||||
- Restore the complete 281-callback DAT600 panel sequence after the fifth lock
|
||||
hole, including physics suspension, contact/item cleanup, all nine image
|
||||
phases, and the original WAVE 2013/2012/stop boundaries.
|
||||
phases, and the original WAVE 2013/2012/stop boundaries. A fifth lock captured
|
||||
during multiball still transfers its capped 160,000-step award but defers the
|
||||
panel until a later single-ball completion.
|
||||
- Remove the invented attract-screen instruction panel and stop assigning the
|
||||
original F2/F3 keys to modern overlays. The idle view is the original table;
|
||||
optional settings/high-score viewers move to F10/F9.
|
||||
|
||||
Reference in New Issue
Block a user