![]() |
Routines |
| Prev: 41555 | Up: Map | Next: 41625 |
|
Step the 16 debris particles at Debris_Particles, repeating until none of them is still moving (DebrisCount is zero).
|
||||
| AnimatePickupDebris | 41586 | XOR A | Write 0 to DebrisCount. | |
| 41587 | LD (24169),A | |||
| 41590 | LD A,(24187) | Fetch Debris_Pitch. | ||
| 41593 | DEC A | Decrease it by one. | ||
| 41594 | LD (24187),A | Write it back. | ||
| 41597 | CALL SoundsDebris | Call SoundsDebris. | ||
|
Step each of the 16 debris particles in turn.
|
||||
| 41600 | LD IX,43595 | IX=Debris_Particles. | ||
| 41604 | LD B,16 | Set a particle counter in B for 16 loops. | ||
| AnimatePickupDebris_CallParticle | 41606 | PUSH BC | Stash the particle counter on the stack. | |
| 41607 | CALL MoveDebrisParticle | Call MoveDebrisParticle. | ||
| 41610 | LD BC,5 | Set the step to the next particle in BC to 0005. | ||
| 41613 | ADD IX,BC | Move onto the next particle. | ||
| 41615 | POP BC | Restore the particle counter from the stack. | ||
| 41616 | DJNZ AnimatePickupDebris_CallParticle | Decrease the particle counter by one and loop back to AnimatePickupDebris_CallParticle until all 16 have moved. | ||
|
Go round again while particles are still moving, else return.
|
||||
| 41618 | LD A,(24169) | Fetch DebrisCount. | ||
| 41621 | AND A | Jump back to AnimatePickupDebris if any particles remain. | ||
| 41622 | JR NZ,AnimatePickupDebris | |||
| 41624 | RET | Return. | ||
| Prev: 41555 | Up: Map | Next: 41625 |