fix(game): restore six-state target rotation
Replace the free-running 68x60 wheel animation with the original six-callback 91x90 DAT600 mechanism. Start WAVE 2011 at state one, advance once per selected detail timer, and rotate the five per-player lock contact/item values exactly at state six. Decode the 17x17 DAT600 target image/mask pair and render all six recovered position sets over the correct atlas or overlay-B base. Preserve filled targets in their resting state after rotation and add a deterministic `targets` scenario for trace and framebuffer validation. Test Plan: - `cargo test --all-targets` -- passed, 74 tests - `cargo clippy --all-targets -- -D warnings` -- passed - `rumdl check CHANGELOG.md README.md RECONSTRUCTION.md` -- passed - rendered all six target-rotation states -- visually verified - `git diff --cached --check` -- passed
This commit is contained in:
+4
-4
@@ -44,10 +44,10 @@ cargo run -- --simulate claw-6 --at 0.15 \
|
||||
```
|
||||
|
||||
Use `--step N` instead of `--at SECONDS` to reproduce one exact update. The
|
||||
available scenarios are `autoplay`, `launcher`, `flippers`, `panel`, `claw-1`,
|
||||
`claw-6`, `claw-7`, and `claw-18`; `--seed N` fixes random choices. `autoplay` charges
|
||||
each ball and operates the flippers from live ball position for long end-to-end
|
||||
validation runs.
|
||||
available scenarios are `autoplay`, `launcher`, `flippers`, `panel`, `targets`,
|
||||
`claw-1`, `claw-6`, `claw-7`, and `claw-18`; `--seed N` fixes random choices.
|
||||
`autoplay` charges each ball and operates the flippers from live ball position
|
||||
for long end-to-end validation runs.
|
||||
|
||||
## Original and modern controls
|
||||
|
||||
|
||||
Reference in New Issue
Block a user