![]() |
Routines |
| Prev: 7286 | Up: Map | Next: 72E1 |
|
Handles room 04 logic. The current level in B controls which objects are initialised or updated on each pass.
|
||||||||||||||||||||
| Handler_Room04 | 72BD | LD A,B | Copy the current level into A. | |||||||||||||||||
| 72BE | CP $01 | Return if A is equal to 01. | ||||||||||||||||||
| 72C0 | RET Z | |||||||||||||||||||
| 72C1 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||
|
Add the helicopter for levels 02 to 04.
|
||||||||||||||||||||
| 72C2 | LD IX,$DAD0 | IX=Sprite04_3Wide_X_Position. | ||||||||||||||||||
| 72C6 | CP $05 | Call Handler_Helicopter if this is not level 05. | ||||||||||||||||||
| 72C8 | CALL NZ,Handler_Helicopter | |||||||||||||||||||
| 72CB | POP AF | Restore the current level from the stack. | ||||||||||||||||||
|
Add the plane if this is level 04 or higher.
|
||||||||||||||||||||
| 72CC | LD IX,$DAD4 | IX=Sprite05_3Wide_X_Position. | ||||||||||||||||||
| 72D0 | PUSH AF | Stash the current level on the stack. | ||||||||||||||||||
| 72D1 | CP $03 | Call Handler_Plane if this is level 04 or higher. | ||||||||||||||||||
| 72D3 | CALL NC,Handler_Plane | |||||||||||||||||||
| 72D6 | POP AF | Restore the current level from the stack. | ||||||||||||||||||
|
Add the balloon if this is level 04.
|
||||||||||||||||||||
| 72D7 | LD IX,$DAD8 | IX=Sprite06_3Wide_X_Position. | ||||||||||||||||||
| 72DB | CP $04 | Call Handler_Balloon if this is level 04. | ||||||||||||||||||
| 72DD | CALL Z,Handler_Balloon | |||||||||||||||||||
| 72E0 | RET | Return. | ||||||||||||||||||
| Prev: 7286 | Up: Map | Next: 72E1 |