Prev: 90EB Up: Map Next: 9138
910E: OPEN, carried by doors and containers as their own handler
Not if it is locked or open already ("the ... is locked.", "the ... is open."). Opening sets flag bit 5, and a container in one place with something visible inside shows what: "you see". OPEN_IT is the way in for callers that only want it opened.
DO_OPEN 910E CALL LOCK_STATE Locked, or open already: say which
9111 JP NZ,SAY_STATE
9114 CALL FOR_REAL The test ends here
This entry point is used by the routines at DO_DIG and SIDE_DOOR_UNLOCKED.
OPEN_IT 9117 SET 5,(IX+$07) Open
911B LD A,(IX+$00) Not a container in one place: done
911E DEC A
911F RET NZ
9120 LD A,(TARGET) Nothing in it: done
9123 CALL COUNT_HELD
9126 AND A
9127 RET Z
9128 LD A,(TARGET) Introduce what it holds; nothing to show: done
912B CALL CONTENTS_INTRO
912E RET C
912F LD B,(IX+$10) "you see" and what is in it
9132 LD A,(TARGET)
9135 JP LIST_HERE
Prev: 90EB Up: Map Next: 9138