Prev: 51267 Up: Map Next: 51335
51316: Test Passage Along Plus X
Finds out if the player is far enough through the wall on the side of high x, in the same way as TestPassageAlongMinusX.
Input
IX Door record
IY Record of the legs of the player
Return unless the player is through the wall.
TestPassageAlongPlusX 51316 POP HL Restore the limits of the room from the stack.
51317 LD A,L Fetch the limit along x.
51318 ADD A,128 Add 128 to it, to get the position of the wall.
51320 LD L,A Keep the position of the wall.
51321 LD A,(IY+1) Fetch the x position of the player.
51324 SUB (IY+4) Take away the half size along x.
51327 CP L Return if the player is not through the wall.
51328 RET C
51329 LD (IY+1),255 Put the player at the highest x position, ready for the next room.
51333 JR TestPassageAlongMinusX_Done Jump to TestPassageAlongMinusX_Done.
Prev: 51267 Up: Map Next: 51335