fix(ui): render partial target-bank states

Records 90 through 104 and 109 through 120 deactivate in linked three-line
groups. For each group, the flag-bearing head switches its recovered bounds
from overlay B to overlay A until the complete bank rearms every record. Rust
updated collision activity but never drew these nine intermediate states.

Render the five bumper-bank and four TDK-bank head regions directly from the
175-record ledger. Extend the bank regression to prove partial activation and
post-completion clearing, and seed two partial groups in the deterministic
rules framebuffer.

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
- `cargo run -- --simulate targets --step 26 --screenshot /tmp/tdkpin-targets-banks.png` -- passed; partial bumper and TDK bank regions visually inspected at 640x460
- `git diff --cached --check` -- passed
This commit is contained in:
2026-08-23 20:12:45 +02:00
parent 71938c0062
commit f53cd5ab2b
5 changed files with 48 additions and 8 deletions
+1 -5
View File
@@ -230,11 +230,7 @@ impl Simulation {
game.wheel_holes.fill(true);
}
if scenario == Scenario::Targets {
game.ball.in_launcher = false;
game.ball.position = macroquad::prelude::vec2(170.0, 230.0);
game.players[0].bumper_value = 6_000;
game.target_rotation_state = Some(0);
game.wheel_holes = [true, false, true, false, false];
game.begin_target_scenario();
}
if scenario == Scenario::Effect7 {
game.begin_effect_scenario(7);