Routines |
Prev: F330 | Up: Map | Next: F375 |
|
||||
F334 | LD A,$08 | Touching a banana drops endurance by 8. | ||
F336 | LD ($F26E),A | |||
F339 | LD IX,$F327 | Point IX at the data for this room. | ||
F33D | LD BC,$F330 | Set the bounds. | ||
F340 | CALL $EF35 | Update moving objects. | ||
F343 | LD A,(IX+$00) | Get the current object ID. (8F78) | ||
F346 | INC A | Increment it. | ||
F347 | CP $64 | Is it now 40? | ||
F349 | JR NZ,$F34D | Skip the next bit if not. | ||
F34B | LD A,$60 | Otherwise reset to ID 60. | ||
F34D | LD (IX+$00),A | Set the new object ID. | ||
F350 | CALL $A83D | Draw the object. | ||
F353 | INC IX | Move to the next position in the buffer. | ||
F355 | CALL $EF35 | Update moving objects. | ||
F358 | LD A,$64 | Point A at the object ID for the banana. (8FF8) | ||
F35A | CALL $A83D | Draw the object. | ||
F35D | CALL $E329 | Check for collision detection. | ||
F360 | LD A,(IX-$01) | Get the Y direction change. | ||
F363 | CP $FE | Is it now trying to move upwards? | ||
F365 | RET NZ | Return if so. | ||
The banana has hit the boundary, instead of reversing direction, draw it again from the start.
|
||||
F366 | LD (IX-$03),$6E | Set the Y co-ordinate back to 6E. | ||
F36A | LD (IX-$01),$02 | Set the direction change back to 2 downwards. | ||
F36E | LD A,(IX-$09) | Set the X co-ordinate to the same as the monkey, so it looks like the monkey has directly thrown the banana. | ||
F371 | LD (IX-$04),A | |||
F374 | RET | Return. |
Prev: F330 | Up: Map | Next: F375 |