Routines |
Prev: C620 | Up: Map | Next: C72B |
Used by the routine at BA5C.
|
||||
C6C2 | LD A,(IX+$09) | Check enemy type | ||
C6C5 | AND $7F | |||
C6C7 | CP $08 | is SCANNER? | ||
C6C9 | JP Z,$C2FD | Jump to handle scanner moving down | ||
C6CC | CP $0C | Return if POD | ||
C6CE | RET Z | |||
C6CF | CP $0D | Return if MINE LAYER | ||
C6D1 | RET Z | |||
C6D2 | CP $0E | Return if MINE | ||
C6D4 | RET Z | |||
C6D5 | CP $0F | Return if BLOB | ||
C6D7 | RET Z | |||
C6D8 | LD A,(IX+$03) | Return if FOOT MAN jumping | ||
C6DB | OR A | |||
C6DC | RET NZ | |||
C6DD | LD A,(IX+$01) | Add to y-position the falling speed | ||
C6E0 | ADD A,(IX+$06) | |||
C6E3 | CP $B8 | y-position is greater than $B8? | ||
C6E5 | JP NC,$C71A | Jump to make FOOTMAN invisible | ||
C6E8 | LD (IX+$01),A | Set the new y-position | ||
C6EB | AND $07 | Return if y-position is not grid fixed | ||
C6ED | OR A | |||
C6EE | RET NZ | |||
C6EF | CALL $C72B | Obtain into HL the tile type address pointer under FOOT MAN | ||
C6F2 | LD A,(HL) | Set A the tile type under FOOT MAN | ||
C6F3 | CALL $D08B | Check if tile type is 'background' tile | ||
C6F6 | JP NZ,$C70D | Jump if wall tile type | ||
C6F9 | INC HL | Increment HL | ||
C6FA | LD A,(HL) | Set A the tile type under FOOT MAN | ||
C6FB | CALL $D08B | Check if tile type is 'background' tile | ||
C6FE | JP NZ,$C70D | Jump if wall tile type | ||
continue falling
|
||||
C701 | LD A,(IX+$06) | Increment falling speed by 2 if speed less than $04 | ||
C704 | ADD A,$02 | |||
C706 | CP $06 | |||
C708 | RET Z | |||
C709 | LD (IX+$06),A | |||
C70C | RET | |||
stop falling
|
||||
C70D | LD (IX+$06),$00 | Reset falling | ||
C711 | LD A,(IX+$09) | if enemy is FOOT MAN dying then destroy it | ||
C714 | CP $07 | |||
C716 | JP Z,$981F | |||
C719 | RET | |||
enemy falling from screen
|
||||
C71A | LD (IX+$0C),$00 | Set entity invisble | ||
C71E | LD HL,$E9FF | Set base address into attribute buffer for score points | ||
C721 | LD ($A039),HL | |||
C724 | LD HL,$0000 | Set score point to zero | ||
C727 | LD ($A03C),HL | |||
C72A | RET |
Prev: C620 | Up: Map | Next: C72B |