| Gyruss | Routines |
| Prev: 8654 | Up: Map | Next: 867D |
|
Used by the routine at process_sprites.
|
||||||||||
| handle_sprite_type_02 | 865A | CP $02 | Is sprite type $02? | |||||||
| 865C | JP NZ,handle_sprite_types_04_0C | If not proceed to next handler | ||||||||
|
Sprite type $02 (shot)
|
||||||||||
| 865F | INC (IX+$05) | Mark for pattern reload | ||||||||
| 8662 | LD A,(IX+$01) | Get polar y | ||||||||
| 8665 | INC A | Move shot | ||||||||
| 8666 | INC A | ... | ||||||||
| 8667 | LD (IX+$01),A | And save again | ||||||||
| 866A | CP $08 | Is polar y now 7? | ||||||||
| 866C | JR NZ,handle_sprite_type_02_0 | If not, jump ahead | ||||||||
| 866E | LD (IX+$0B),$05 | Set color | ||||||||
| 8672 | RET | Return to return_from_sprite_handler | ||||||||
| handle_sprite_type_02_0 | 8673 | CP $2B | Is polar y 43? | |||||||
| 8675 | RET C | Return if less than | ||||||||
| 8676 | LD HL,active_shots | Decrease active shots | ||||||||
| 8679 | DEC (HL) | ... | ||||||||
| 867A | JP deallocate_sprite | Deallocate sprite | ||||||||
| Prev: 8654 | Up: Map | Next: 867D |