Prev: 59906 Up: Map Next: 60717
60658: Print Inventory
Used by the routines at Unpack_Rooms, Event_BumpDigit and Event_RandomCombination.
Prints the four CollectionSlots digits and flashes them when every slot is 9.
Print_Inventory 60658 LD A,15 Write WHITE to *ATTR_T.
60660 LD (23695),A
60663 LD HL,15360 Write 15360 to *CHARS.
60666 LD (23606),HL
60669 LD BC,263 Call JumpTable_SetPrintPosition at column 7 row 1.
60672 CALL JumpTable_SetPrintPosition
Print the four combination digits.
60675 LD BC,1024 BC=1024.
60678 LD HL,25793 HL=CollectionSlots.
Print_Inventory_Target 60681 LD A,(HL) Jump to Print_Inventory_Continue unless this digit is 9.
60682 CP 9
60684 JR NZ,Print_Inventory_Continue
60686 INC C Increase the "9" count.
Print_Inventory_Continue 60687 ADD A,48 Convert the digit into ASCII.
60689 CALL JumpTable_PrintCharacter Call JumpTable_PrintCharacter.
60692 INC HL Advance the digit pointer and loop back to Print_Inventory_Target.
60693 DJNZ Print_Inventory_Target
Flash the four cells when every digit is 9.
60695 LD A,C Return unless all four digits were 9.
60696 CP 4
60698 RET NZ
60699 LD BC,263 Convert column 7 row 1 into a Buffer_RoomTiles offset.
60702 CALL JumpTable_ConvertCoordinate
60705 LD DE,22528 Point HL at the matching attribute cells.
60708 ADD HL,DE
60709 LD B,4
Print_Inventory_Target2 60711 SET 7,(HL) Set FLASH on each of the four cells.
60713 INC HL
60714 DJNZ Print_Inventory_Target2
60716 RET Return.
Prev: 59906 Up: Map Next: 60717