![]() |
Routines |
| Prev: 47834 | Up: Map | Next: 47883 |
|
Type 17: an outlaw who has been hit. For six frames he is drawn with the two body sprites at DyingOutlawSprites_Shot and then he starts to die.
|
||||
| HandleShotOutlaw | 47837 | INC (IX+12) | Move on to the next frame. | |
| 47840 | LD A,(IX+12) | Fetch the frame. | ||
| 47843 | CP 6 | Jump to HandleShotOutlaw_Die if the six frames are over. | ||
| 47845 | JR Z,HandleShotOutlaw_Die | |||
| 47847 | LD A,(IX+2) | Fetch the horizontal position of the outlaw and keep it in L. | ||
| 47850 | LD L,A | |||
| 47851 | LD (41504),A | Store it as the horizontal pixel position for the sprites. | ||
| 47854 | LD H,(IX+4) | Fetch the vertical position of the outlaw into H. | ||
| 47857 | CALL CalculateBufferAddress | Find the address in the buffer. | ||
| 47860 | LD DE,48072 | Point DE at DyingOutlawSprites_Shot. | ||
| 47863 | LD B,2 | Set the number of sprites to two. | ||
| 47865 | CALL DrawWideSprites | Draw the body into the buffer. | ||
| 47868 | LD BC,65416 | Five buffer rows up is one hundred and twenty bytes. | ||
| 47871 | ADD HL,BC | Move the address up five rows of the buffer. | ||
| 47872 | JP DrawOutlawFace | Jump to DrawOutlawFace. | ||
|
Start the outlaw dying.
|
||||
| HandleShotOutlaw_Die | 47875 | LD (IX+0),18 | Turn the outlaw into a dying outlaw. | |
| 47879 | LD (IX+12),0 | Start at the first frame of dying. | ||
|
Continue on to HandleDyingOutlaw.
|
||||
| Prev: 47834 | Up: Map | Next: 47883 |