Prev: 7286 Up: Map Next: 72E1
72BD: Handler: Room 04
Handles room 04 logic. The current level in B controls which objects are initialised or updated on each pass.
Levels Baddies
01 None
02 Helicopter
03 Helicopter
04 Helicopter, Plane, Balloon
05+ Plane
Input
B Current level
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