fix(game): restore swept target sensors

Move claw contact and all eleven initially active type-4 circle records onto a
swept millipixel sensor test with per-object enter latching. Preserve the exact
left-bank and top-gate coordinates, radii, and scores from the initialized
object ledger.

Remove the inferred top-bank completion rule. Each original top target now
scores 500 and independently starts recovered magnetic-gate timing instead of
requiring all three for an invented bonus.

Test Plan:
- `cargo test --all-targets` -- 44 passed
- `cargo clippy --all-targets -- -D warnings` -- passed
- `cargo build --profile production` -- passed
- top sensor contact-latch and re-entry test -- passed
- 20-second deterministic launch remained in active table motion
- `git diff --cached --check` -- passed
This commit is contained in:
2026-08-22 21:12:41 +02:00
parent 9d91cc51c7
commit bf5b855f44
5 changed files with 189 additions and 30 deletions
+7
View File
@@ -143,3 +143,10 @@ from the record geometry. Three live left-edge probes at `(115,390)`,
`(133.397,360)`, and `(138.182,355)` with raw velocities `(1932,-3523)`,
`(2079,-4658)`, and `(2217,-5889)`. The Rust upward stroke fits those states;
the full raw calculation and return-stroke transfer remain pending.
The type-4 rule dispatcher at `1000:b476` shows that records 150-152 are three
independent 500-point sensors. Each sets its own ten-callback timer and enables
the associated magnetic gate; there is no recovered 1,500-per-target plus
5,000 completion rule. Records 140-147 carry their exact 1,000 through 3,000
scores and use the same enter-once contact bit, which clears after the ball
leaves their radius.