|  | 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 |