Prev: 32195 Up: Map Next: 32382
32291: Draw Room
Used by the routine at MainLoop.
DrawRoom 32291 LD A,(60049) A=PlayerRoom.
32294 LD L,A Create an offset in HL (A * 2).
32295 LD H,0
32297 ADD HL,HL
32298 LD BC,30077 HL=RoomTable + offset.
32301 ADD HL,BC
32302 LD A,(HL) HL=the current room data.
32303 INC HL
32304 LD H,(HL)
32305 LD L,A
32306 LD (24091),HL Stash the room data pointer at CurrentRoom.
Decor_Loop 32309 LD HL,(24091) HL=CurrentRoom.
32312 LD A,(HL)
32313 INC HL
32314 INC HL
32315 LD (24091),HL
32318 DEC HL
32319 LD H,(HL)
32320 LD L,A
32321 OR H
32322 JR NZ,ProcessAction_3
32324 LD HL,(24082) HL=CounterLow.
32327 INC HL
32328 LD (24082),HL
32331 LD HL,24084 HL=GameFlags.
32334 BIT 0,(HL)
32336 JR NZ,DrawRoom_0
32338 CALL HandlerCaveDoorLocked_6
DrawRoom_0 32341 LD HL,24084 HL=GameFlags.
32344 SET 0,(HL)
32346 LD HL,(24069)
32349 LD DE,(23672)
32353 ADD HL,DE
32354 LD A,(24082) A=CounterLow.
32357 ADD A,L
32358 LD L,A
32359 LD (24069),HL
32362 CALL HandlerCaveDoorLocked_18
32365 CALL 38025
32368 CALL SetKeyPositions_1
32371 LD A,(60049) A=PlayerRoom.
32374 CP 142
32376 JP Z,GameComplete
32379 JP MainLoop Jump to MainLoop.
Prev: 32195 Up: Map Next: 32382