![]() |
Routines |
| Prev: B979 | Up: Map | Next: B9A7 |
|
Used by the routines at BlockMovementInX, BlockMovementInY, BlockMovementInZ and TestObjectIntersections.
Tests whether collision tests should take any notice of an object. The object must be in use and must not be the one that is being moved. The zero flag is set if the slot is unused or bit 1 of the flags is set.
|
||||||||||||
|
Return if the slot is empty.
|
||||||||||||
| TestObjectSolid | B99B | LD A,(IY+$00) | Fetch the sprite number of the object. | |||||||||
| B99E | AND A | Return if the slot is not used. | ||||||||||
| B99F | RET Z | |||||||||||
|
After invert, bit 1 is set when the object is not ignored.
|
||||||||||||
| B9A0 | LD A,(IY+$07) | Fetch the flags of the object. | ||||||||||
| B9A3 | CPL | Invert them. | ||||||||||
| B9A4 | AND %00000010 | Test the flag for being moved, which is set in the object being moved. | ||||||||||
| B9A6 | RET | Return. | ||||||||||
|
View the equivalent code in;
|
||||||||||||
| Prev: B979 | Up: Map | Next: B9A7 |