![]() |
Routines |
| Prev: 56005 | Up: Map | Next: 56100 |
|
Used by the routine at Dispatch_Handlers.
Room 9 chooses a frame from the player column. Rooms 10 and 11 animate at Handler_Pendulum.
|
||||||
|
Return unless this is a pendulum room.
|
||||||
| Handler_PendulumRooms | 56069 | LD A,(25762) | Return if the room is 12 or higher. | |||
| 56072 | CP 12 | |||||
| 56074 | RET NC | |||||
| 56075 | CP 9 | Return if the room is lower than 9. | ||||
| 56077 | RET C | |||||
|
Animate rooms 10 and 11.
|
||||||
| 56078 | CP 10 | Jump to Handler_Pendulum if the room is 10 or 11. | ||||
| 56080 | JR NC,Handler_Pendulum | |||||
|
Choose a frame from the player column.
|
||||||
| 56082 | LD A,(25764) | Start from the player column minus 4. | ||||
| 56085 | SUB 4 | |||||
|
||||||
| 56087 | LD B,224 | Set the sprite ID to 224. | ||||
|
Step the sprite ID back for each six columns.
|
||||||
| Handler_Pendulum_FrameLoop | 56089 | SUB 6 | Subtract 6 until A is negative, decreasing the sprite ID by two each pass. | |||
| 56091 | BIT 7,A | |||||
| 56093 | JR NZ,Handler_Pendulum_DrawPair | |||||
| 56095 | DEC B | |||||
| 56096 | DEC B | |||||
| 56097 | JR Handler_Pendulum_FrameLoop | |||||
|
Use the same frame for both sprites.
|
||||||
| Handler_Pendulum_DrawPair | 56099 | LD C,B | Copy the sprite ID into C. | |||
|
Continue on to Draw_Pendulum.
|
||||||
| Prev: 56005 | Up: Map | Next: 56100 |