Prev: 26631 Up: Map Next: 26715
26636: Action: Inventory
Prints message 16, you are carrying the following, then every carried or worn object. Nothing carried says so. A worn object is marked with message 30.
ListCarried 26636 LD A,16 Message 16: you are carrying the following.
26638 CALL PrintSystemMessage
26641 XOR A Nothing has been listed yet.
26642 LD (23418),A
26645 LD B,160 160 object slots, from the first location byte.
26647 LD HL,24010
ListCarried_Scan 26650 LD A,(23945) A carried object is printed.
26653 CP (HL)
26654 CALL Z,ListCarried_One
26657 LD A,(23946) A worn object is printed.
26660 CP (HL)
26661 CALL Z,ListCarried_One
26664 INC HL The next object.
26665 DJNZ ListCarried_Scan
26667 LD A,(23418) An empty list says so.
26670 OR A
26671 JR NZ,ListCarried_End
26673 LD A,17 Message 17: nothing at all.
26675 JP PrintSystemMessage
ListCarried_End 26678 LD A,12 Two backspaces remove the trailing comma.
26680 CALL PrintCharacter
26683 LD A,12
26685 CALL PrintCharacter
26688 LD A,46 A full stop ends the list.
26690 JP PrintCharacter
ListCarried_One 26693 LD A,160 The object id is 160 minus the countdown.
26695 SUB B
26696 CALL PrintObjectName Call PrintObjectName to print its name.
26699 LD (23418),A Remember that something was listed.
26702 LD A,(23946) Message 30 marks the worn object.
26705 CP (HL)
26706 RET NZ
26707 PUSH BC Print " (worn),".
26708 LD A,30
26710 CALL PrintSystemMessage
26713 POP BC Restore the countdown from the stack.
26714 RET Return.
Prev: 26631 Up: Map Next: 26715