Resource centre for ZX Spectrum games
using Manic Miner and Jet Set Willy game engines
Archive of the
Manic Miner & Jet Set Willy Yahoo! Group
messages
|
|
||
|
|
Message: 3845
Author: andrewbroad
Date: 10/12/2003
Subject: Collision detection for JSW ropes
It seems that a rope can pass through blocks of any type without
effect, *if* its pixels do not collide with the blocks' on-pixels.
If a rope-pixel collides with another on-pixel, the rope picks up
Willy at the point of collision - regardless of his position on the
screen. If this happens to be near the top of the screen, Willy is
`teleported' to the room above.
Thus, collision-detection for ropes appears to fit in with the
general rule of collision detection for JSW guardians: collision
occurs if any of a guardian's on-pixels collides with any on-pixel
already printed on the screen - i.e. from the 8x8 blocks, Willy, or
any guardians preceding it in the room's guardian-instance list.
(Arrows only collide with white-ink pixels.)
My knowledge of ropes is still imprecise - I still have to work out
how to make a killer rope (as I've seen in _where's woody_), and
those narrow fast-swinging ropes (e.g. strangel and ZX Heroes). And
I'm not sure that the pixel-based collision detection explains every
occurrence of the `teleport' bug.
--
Dr. Andrew Broad
http://www.geocities.com/andrewbroad/
http://www.geocities.com/andrewbroad/spectrum/
http://www.geocities.com/andrewbroad/spectrum/willy/
http://www.geocities.com/andrewbroad/spectrum/willy/collision.html
P.S. Party Willy (Part 2) is now 29/64 written.
