![]() |
Routines |
| Prev: 55256 | Up: Map | Next: 55308 |
|
The routine for objects of type 80 to 95, the shots that the player fires. A shot moves in a straight line, and turns into a burst when it hits something.
|
||||
|
Move the shot along both axes.
|
||||
| UpdateShot | 55277 | LD A,(IX+5) | Set the velocity of the shot from its speed and direction. | |
| 55280 | CALL SetVelocityFromSpeed | |||
| 55283 | CALL NextSpriteNumber | Change the sprite of the shot. | ||
| 55286 | CALL TestMove | Check whether the scenery blocks the move along one axis. | ||
| 55289 | CALL MoveObject | Move the shot. | ||
| 55292 | CALL TestMove_Keep | Check whether the scenery blocks the move along the other axis. | ||
| 55295 | CALL MoveObject | Move the shot. | ||
|
Burst if the shot has hit something.
|
||||
| 55298 | BIT 0,(IX+7) | Return if the shot has not hit anything. | ||
| 55302 | RET Z | |||
| 55303 | LD (IX+0),12 | Turn the shot into a burst and return. | ||
| 55307 | RET | |||
| Prev: 55256 | Up: Map | Next: 55308 |