![]() |
Routines |
| Prev: 29199 | Up: Map | Next: 29285 |
Handles room 1 logic. The current level in B controls which objects are initialised or updated on each pass.
|
||||||||||||||||||||||
| Handler_Room01 | 29247 | LD A,B | Copy the current level into A. | |||||||||||||||||||
| 29248 | CP 1 | Return if this is level 1. | ||||||||||||||||||||
| 29250 | RET Z | |||||||||||||||||||||
|
Add the helicopter.
|
||||||||||||||||||||||
| 29251 | LD IX,56024 | IX=Sprite06_3Wide_X_Position. | ||||||||||||||||||||
| 29255 | LD IY,29960 | IY=Helicopter_State_Data_1. | ||||||||||||||||||||
| 29259 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||||
| 29260 | CALL Handler_Helicopter | Call Handler_Helicopter. | ||||||||||||||||||||
| 29263 | POP AF | Restore the current level from the stack. | ||||||||||||||||||||
|
Add the second object (level 3 only).
|
||||||||||||||||||||||
| 29264 | LD IX,56028 | IX=Sprite07_3Wide_X_Position. | ||||||||||||||||||||
| 29268 | LD IY,29965 | IY=Helicopter_State_Data_2. | ||||||||||||||||||||
| 29272 | CP 3 | Is this level 3? | ||||||||||||||||||||
| 29274 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||||
| 29275 | CALL Z,Handler_Helicopter_Entry | Call Handler_Helicopter_Entry if this is level 3. | ||||||||||||||||||||
| 29278 | POP AF | Restore the current level from the stack. | ||||||||||||||||||||
|
Add the balloon if this is level 4 or higher.
|
||||||||||||||||||||||
| 29279 | CP 4 | Call Handler_Balloon if this is level 4 or higher. | ||||||||||||||||||||
| 29281 | CALL NC,Handler_Balloon | |||||||||||||||||||||
| 29284 | RET | Return. | ||||||||||||||||||||
| Prev: 29199 | Up: Map | Next: 29285 |