fix(input): dispatch release-handler actions on key-up
The original key-release handler owns add-player, all three nudge actions, and F12 sound toggling. Rust dispatched those actions on the initial key press, which changed launcher/player timing and applied nudges before the player released the key. Use Macroquad's key-up edges for every recovered release-handler action. Keep F1 on key-down, flippers as held key bytes, and the launcher as press/repeat plus release, matching their separate binary paths. Test Plan: - `cargo test --workspace --all-targets --all-features` -- 125 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:
@@ -178,6 +178,8 @@ and this project adheres to
|
||||
- Match the original low-byte keyboard scans: both Ctrl keys operate the left
|
||||
flipper, both Enter keys operate the right, and the physical `0x1b`
|
||||
main-keyboard plus/right-bracket position starts or adds players.
|
||||
- Dispatch add-player, nudge, and F12 sound-toggle actions on key release through
|
||||
the original `1000:638e` timing rather than on their initial key press.
|
||||
- Route a single-ball type-3 completion during Tilt through `1000:ae6e` instead
|
||||
of granting a free launcher reset: lock holes consume the ball, while record
|
||||
148 can still take its required-state special-respawn branch.
|
||||
|
||||
Reference in New Issue
Block a user