Prev: 55202 Up: Map Next: 55295
55250: Handler: Collectibles
Used by the routine at Dispatch_Handlers.
Walks the 3-byte records at *ReferenceCollectibles. When the player stands on an active record, bit 7 is set and Dispatch_Events runs.
Handler_Collectibles 55250 LD IX,(25636) IX=*ReferenceCollectibles.
Handler_Collectibles_Loop 55254 LD A,(IX+0) Return if the terminator 255 is reached.
55257 CP 255
55259 RET Z Jump to Handler_Collectibles_Next if this record is already collected.
55260 BIT 7,A
55262 JR NZ,Handler_Collectibles_Next
55264 LD A,(25764) Jump to Handler_Collectibles_Next if the column does not match *Player.
55267 CP (IX+0)
55270 JR NZ,Handler_Collectibles_Next
55272 LD A,(25765) Jump to Handler_Collectibles_Next if the row does not match *Player_Row.
55275 CP (IX+1)
55278 JR NZ,Handler_Collectibles_Next
55280 LD A,(IX+2) Set bit 7 of the record.
55283 SET 7,A
55285 JP Dispatch_Events Jump to Dispatch_Events.
Handler_Collectibles_Next 55288 LD DE,3 IX+=0003.
55291 ADD IX,DE
55293 JR Handler_Collectibles_Loop Jump to Handler_Collectibles_Loop.
Prev: 55202 Up: Map Next: 55295