.FUNCT NOT-HERE-OBJECT-F,TBL,PRSO?=1,OBJ EQUAL? PRSO,NOT-HERE-OBJECT \?ELS3 EQUAL? PRSI,NOT-HERE-OBJECT \?ELS3 PRINTR "Those things aren't here!" ?ELS3: EQUAL? PRSO,NOT-HERE-OBJECT \?ELS9 SET 'TBL,P-PRSO JUMP ?CND1 ?ELS9: SET 'TBL,P-PRSI SET 'PRSO?,FALSE-VALUE ?CND1: SET 'P-CONT,FALSE-VALUE SET 'QUOTE-FLAG,FALSE-VALUE EQUAL? WINNER,PLAYER \?ELS14 PRINTI "You can't see any " CALL NOT-HERE-PRINT,PRSO? PRINTR " here!" ?ELS14: PRINTI "The " PRINTD WINNER PRINTI " seems confused. ""I don't see any " CALL NOT-HERE-PRINT,PRSO? PRINTR " here!""" .FUNCT NOT-HERE-PRINT,PRSO?,?TMP1 ZERO? P-OFLAG /?ELS5 ZERO? P-XADJ /?CND7 PRINTB P-XADJN ?CND7: ZERO? P-XNAM /FALSE PRINTB P-XNAM RTRUE ?ELS5: ZERO? PRSO? /?ELS18 GET P-ITBL,P-NC1 >?TMP1 GET P-ITBL,P-NC1L CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE RSTACK ?ELS18: GET P-ITBL,P-NC2 >?TMP1 GET P-ITBL,P-NC2L CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE RSTACK .FUNCT NULL-F,A1,A2 RFALSE .FUNCT STAIRS-F EQUAL? PRSA,V?THROUGH \FALSE PRINTR "You should say whether you want to go up or down." .FUNCT SAILOR-FCN EQUAL? PRSA,V?TELL \?ELS5 SET 'P-CONT,FALSE-VALUE SET 'QUOTE-FLAG,FALSE-VALUE PRINTR "You can't talk to the sailor that way." ?ELS5: EQUAL? PRSA,V?EXAMINE \?ELS9 FSET? VIKING-SHIP,INVISIBLE /?CND10 PRINTR "He looks like a sailor." ?CND10: PRINTR "There is no sailor to be seen." ?ELS9: EQUAL? PRSA,V?HELLO \FALSE INC 'HS FSET? VIKING-SHIP,INVISIBLE /?ELS23 PRINTI "The seaman looks up and maneuvers the boat toward shore. He cries out ""I have waited three ages for someone to say those words and save me from sailing this endless ocean. Please accept this gift. You may find it useful!"" He throws something which falls near you in the sand, then sails off toward the west, singing a lively, but somewhat uncouth, sailor song." CRLF FSET VIKING-SHIP,INVISIBLE MOVE VIAL,HERE RTRUE ?ELS23: EQUAL? HERE,FLATHEAD-OCEAN \?ELS27 ZERO? SHIP-GONE /?ELS32 PRINTR "Nothing happens anymore." ?ELS32: PRINTR "Nothing happens yet." ?ELS27: PRINTR "Nothing happens here." .FUNCT GROUND-FUNCTION EQUAL? PRSA,V?PUT-ON,V?PUT \?ELS5 EQUAL? PRSI,GROUND \?ELS5 CALL PERFORM,V?DROP,PRSO RTRUE ?ELS5: CALL NULL-F ZERO? STACK \FALSE EQUAL? PRSA,V?DIG \FALSE PRINTR "The ground is too hard for digging here." .FUNCT GRUE-FUNCTION EQUAL? PRSA,V?EXAMINE \?ELS5 PRINTR "The grue is a sinister, lurking presence in the dark places of the earth. Its favorite diet is adventurers, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of day, and few have survived its fearsome jaws to tell the tale." ?ELS5: EQUAL? PRSA,V?FIND \?ELS9 PRINTR "There is no grue here, but I'm sure there is at least one lurking in the darkness nearby. I wouldn't let my light go out if I were you!" ?ELS9: EQUAL? PRSA,V?LISTEN \FALSE PRINTR "It makes no sound but is always lurking in the darkness nearby." .FUNCT CRETIN-FCN EQUAL? PRSA,V?TELL \?ELS5 SET 'P-CONT,FALSE-VALUE SET 'QUOTE-FLAG,FALSE-VALUE PRINTR "Talking to yourself is said to be a sign of impending mental collapse." ?ELS5: EQUAL? PRSA,V?GIVE \?ELS9 EQUAL? PRSI,ME \?ELS9 CALL PERFORM,V?TAKE,PRSO RTRUE ?ELS9: EQUAL? PRSA,V?MAKE \?ELS13 PRINTR "Only you can do that." ?ELS13: EQUAL? PRSA,V?DISEMBARK \?ELS17 PRINTR "You'll have to do that on your own." ?ELS17: EQUAL? PRSA,V?EAT \?ELS21 PRINTR "Auto-cannibalism is not the answer." ?ELS21: EQUAL? PRSA,V?MUNG,V?ATTACK \?ELS25 ZERO? PRSI /?ELS30 FSET? PRSI,WEAPONBIT \?ELS30 CALL JIGS-UP,STR?24 RSTACK ?ELS30: PRINTR "Suicide is not the answer." ?ELS25: EQUAL? PRSA,V?THROW \?ELS38 EQUAL? PRSO,ME \FALSE PRINTR "Why don't you just walk like normal people?" ?ELS38: EQUAL? PRSA,V?TAKE \?ELS47 PRINTR "How romantic!" ?ELS47: EQUAL? PRSA,V?EXAMINE \FALSE ZERO? INVIS /?ELS56 PRINTR "A good trick, as you are currently invisible." ?ELS56: PRINTR "What you can see looks pretty much as usual, sorry to say." .FUNCT PATH-OBJECT EQUAL? PRSA,V?FOLLOW,V?TAKE \?ELS5 PRINTR "You must specify a direction to go." ?ELS5: EQUAL? PRSA,V?FIND \?ELS9 PRINTR "I can't help you there...." ?ELS9: EQUAL? PRSA,V?DIG \FALSE PRINTR "Not a chance." .FUNCT ZORKMID-FUNCTION EQUAL? PRSA,V?EXAMINE \?ELS5 PRINTR "The zorkmid is the unit of currency of the Great Underground Empire." ?ELS5: EQUAL? PRSA,V?FIND \FALSE PRINTR "The best way to find zorkmids is to go out and look for them." .ENDI