Prev: 7D98 Up: Map Next: 7E4D
7DBC: The target's name did not lead to an action that worked: say why
Used by the routine at PARSE_ACTION.
Nothing in an order, which is left to the character. One thing fitted: that is the one, and the action is done for real so that its refusal is told. Several: ASK_WHICH. None: the name is looked for among the rooms the exits lead to and all the objects, and if it is there it is the refusal that is told; otherwise "i do not see the ... here". No name given at all: "i see nothing to ..." or "... what ?".
TARGET_TROUBLE 7DBC LD A,(IS_ORDER)
7DBF DEC A
7DC0 RET Z
7DC1 LD A,(ALL_ACTION)
7DC4 AND A
7DC5 JR Z,TARGET_TROUBLE_0
7DC7 POP HL
7DC8 JP FRAME_DONE
TARGET_TROUBLE_0 7DCB LD A,(TARGETS_FAILED)
7DCE CP $01
7DD0 JR Z,INSTRUMENT_TROUBLE
7DD2 LD HL,PHRASES
7DD5 BIT 0,(HL)
7DD7 JP Z,TARGET_TROUBLE_3
7DDA BIT 1,(HL)
7DDC LD HL,TARGET_NAME
7DDF LD DE,TARGET
7DE2 LD BC,TARGET_IS_PLACE
7DE5 JR Z,TROUBLE_AS_PLACE
7DE7 LD A,(TARGETS_FOUND)
7DEA AND A
7DEB JR Z,SAY_WHY_NOT
7DED DEC A
7DEE JR NZ,ASK_WHICH
7DF0 CALL WANTS_INSTRUMENT
7DF3 JR NZ,INSTRUMENT_TROUBLE
This entry point is used by the routines at OBEY and INSTRUMENT_TROUBLE.
SAY_WHY_NOT 7DF5 CALL PRINT_NOW
7DF8 CALL DO_ACTION
7DFB JP OBEY_NEXT
This entry point is used by the routine at INSTRUMENT_TROUBLE.
TROUBLE_AS_PLACE 7DFE PUSH HL
7DFF CALL FIRST_EXIT
7E02 LD A,$01
7E04 LD (BC),A
7E05 CALL ROOM_BY_NAME
7E08 CP $FF
7E0A JR NZ,TARGET_TROUBLE_1
7E0C POP HL
7E0D LD A,$02
7E0F LD (FIND_MODE),A
7E12 LD IX,$C060
7E16 XOR A
7E17 LD (BC),A
7E18 PUSH HL
7E19 CALL FIND_NAMED_OBJECT
7E1C CP $FF
7E1E JR Z,TARGET_TROUBLE_2
TARGET_TROUBLE_1 7E20 POP HL
7E21 LD (DE),A
7E22 JP NARRATE_REFUSAL
TARGET_TROUBLE_2 7E25 CALL PRINT_NOW
7E28 LD HL,MSG_I_DO_NOT_SEE
7E2B CALL RUN_MESSAGE
7E2E XOR A
7E2F RET
TARGET_TROUBLE_3 7E30 CALL PUSH_PATTERN_WORDS_NZ
7E33 LD HL,(PROBE_VERB)
7E36 PUSH HL
7E37 LD HL,MSG_CODES_ONLY_B
7E3A LD A,(TARGETS_FAILED)
7E3D AND A
7E3E JP Z,SAY_NOW
7E41 LD A,(TARGET_PHRASE_AT)
7E44 CALL KEEP_QUESTION
7E47 LD HL,MSG_WHAT_C
7E4A JP SAY_NOW
Prev: 7D98 Up: Map Next: 7E4D