a394df23e7d4869a092e698b6e358cb85abe7326
Capture removal and ordinary drains do not clear the original game's shared multiball flag at the same point. The clone treated both transitions alike, which could end double scoring before ball two's remaining slot pass or leave it active after ball two entered a capture hole. It also failed to pause the returning claw until collapse and to clear the flag on a fifth lock. Collapse capture-driven multiball state at the next timer callback, retain the immediate drain behavior, and end the mode explicitly when all five lock contacts complete. Calculate lock awards from the live contact words so a second ball still settling in another hole is counted. Stage effect-seven slot creation until the primary substep batch returns, matching the timer's spawn request ordering. The original leaves a multiball capture contact as value 2, so a later single ball may enter that same wheel slot once more and convert it to the permanent 99 sentinel. This possibly unintended original-game quirk remains for binary parity. Test Plan: - `just test` -- passed (141 game tests and 8 service tests) - `just clippy` -- passed - `just build-production` -- passed - `cargo +nightly fmt --all -- --check` -- passed - `rumdl check --flavor commonmark CHANGELOG.md` -- passed - `git diff --cached --check` -- passed
Description
No description provided
22 MiB
Languages
C
73.8%
Rust
13.9%
C++
5.1%
Python
4.1%
Shell
1.4%
Other
1.6%