![]() |
Routines |
| Prev: B894 | Up: Map | Next: B8C8 |
|
Used by the routine at end_of_frame.
Called once a frame from end_of_frame. In the wizard's room, room $88, it puts the bubbles into object record 3 if that record is empty and the game is not already won ($5BC3). Records 2 and 3 are where the special objects found in a room go; in this room the code that drops an object only considers record 2, which leaves 3 for the bubbles.
|
||||
| init_cauldron_bubbles | B8A9 | LD A,($5C10) | not the wizard's room | |
| B8AC | CP $88 | |||
| B8AE | RET NZ | |||
| B8AF | LD DE,$5C68 | record 3 already in use | ||
| B8B2 | LD A,(DE) | |||
| B8B3 | AND A | |||
| B8B4 | RET NZ | |||
| B8B5 | LD A,($5BC3) | the game has been won | ||
| B8B8 | AND A | |||
| B8B9 | RET NZ | |||
| B8BA | LD HL,cauldron_bubbles | copy the bubbles' first 18 bytes in; IX = record 3 | ||
| B8BD | LD BC,$0012 | |||
| B8C0 | PUSH DE | |||
| B8C1 | POP IX | |||
| B8C3 | LDIR | |||
| B8C5 | JP adj_m4_m12 | set their pixel offsets, and return | ||
| Prev: B894 | Up: Map | Next: B8C8 |