Prev: 51906 Up: Map Next: 51946
51910: Handle Bullet
Type 2: a bullet fired by the sheriff in the town. It moves twice, checking the walls each time. If it hits a wall it becomes type 7.
Input
IX The address of the object
Move the bullet in two steps.
HandleBullet 51910 LD A,(IX+5) Fetch the speed.
51913 CALL SetSpeedsFromHeading Call SetSpeedsFromHeading.
51916 CALL TestMove Call TestMove.
51919 CALL MoveObject Call MoveObject.
51922 CALL CheckWalls Call CheckWalls.
51925 CALL MoveObject Call MoveObject.
Turn into smoke if it has hit a wall.
51928 RES 1,(IX+7) Clear bit 1 of the flags.
51932 BIT 0,(IX+7) Return if it has not hit a wall.
51936 RET Z
51937 LD (IX+0),7 Turn the object into type 7.
51941 LD (IX+12),2 Set the counter to 2 and return.
51945 RET
Prev: 51906 Up: Map Next: 51946