Prev: 897C Up: Map Next: 89C9
8980: Choose the animation frame
Used by the routines at MOVE_PLAYER and MOVE_RESCUEE.
The explosion while it lasts; then, stunned for five frames or more, frame 3 (or 2 while still falling); stunned for less, 2; falling, 4; walking, 0 and 1 in turn; standing, 0.
CHOOSE_FRAME 8980 LD A,(IX+$09)
8983 AND A
8984 JR Z,CHOOSE_FRAME_0
8986 AND $03
8988 ADD A,$F4
898A LD (IX+$08),A
898D RET
CHOOSE_FRAME_0 898E LD A,(IX+$06)
8991 CP $05
8993 JR C,CHOOSE_FRAME_1
8995 LD A,(IX+$05)
8998 AND A
8999 JR NZ,CHOOSE_FRAME_2
899B LD (IX+$08),$03
899F RET
CHOOSE_FRAME_1 89A0 AND A
89A1 JR Z,CHOOSE_FRAME_3
CHOOSE_FRAME_2 89A3 LD (IX+$08),$02
89A7 RET
CHOOSE_FRAME_3 89A8 LD A,(IX+$05)
89AB CP $02
89AD JR C,CHOOSE_FRAME_4
89AF LD (IX+$08),$04
89B3 RET
CHOOSE_FRAME_4 89B4 BIT 2,(IX+$07)
89B8 JR NZ,CHOOSE_FRAME_5
89BA LD (IX+$08),$00
89BE RET
CHOOSE_FRAME_5 89BF LD A,(IX+$08)
89C2 INC A
89C3 AND $01
89C5 LD (IX+$08),A
89C8 RET
Prev: 897C Up: Map Next: 89C9