![]() |
Routines |
| Prev: 29318 | Up: Map | Next: 29409 |
Handles room 4 logic. The current level in B controls which objects are initialised or updated on each pass.
|
||||||||||||||||||||||
| Handler_Room04 | 29373 | LD A,B | Copy the current level into A. | |||||||||||||||||||
| 29374 | CP 1 | Return if A is equal to 1. | ||||||||||||||||||||
| 29376 | RET Z | |||||||||||||||||||||
| 29377 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||||
|
Add the helicopter for levels 2 to 4.
|
||||||||||||||||||||||
| 29378 | LD IX,56016 | IX=Sprite04_3Wide_X_Position. | ||||||||||||||||||||
| 29382 | CP 5 | Call Handler_Helicopter if this is not level 5. | ||||||||||||||||||||
| 29384 | CALL NZ,Handler_Helicopter | |||||||||||||||||||||
| 29387 | POP AF | Restore the current level from the stack. | ||||||||||||||||||||
|
Add the plane if this is level 3 or higher.
|
||||||||||||||||||||||
| 29388 | LD IX,56020 | IX=Sprite05_3Wide_X_Position. | ||||||||||||||||||||
| 29392 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||||
| 29393 | CP 3 | Call Handler_Plane if this is level 3 or higher. | ||||||||||||||||||||
| 29395 | CALL NC,Handler_Plane | |||||||||||||||||||||
| 29398 | POP AF | Restore the current level from the stack. | ||||||||||||||||||||
|
Add the balloon if this is level 4.
|
||||||||||||||||||||||
| 29399 | LD IX,56024 | IX=Sprite06_3Wide_X_Position. | ||||||||||||||||||||
| 29403 | CP 4 | Call Handler_Balloon if this is level 4. | ||||||||||||||||||||
| 29405 | CALL Z,Handler_Balloon | |||||||||||||||||||||
| 29408 | RET | Return. | ||||||||||||||||||||
| Prev: 29318 | Up: Map | Next: 29409 |