mirror of
https://github.com/historicalsource/stationfall
synced 2024-05-17 08:18:19 +03:00
Revision 107
This commit is contained in:
parent
24f2323694
commit
43e39b2ba0
568
globals.zap
568
globals.zap
|
@ -6,63 +6,68 @@
|
||||||
|
|
||||||
|
|
||||||
.FUNCT INTNUM-F
|
.FUNCT INTNUM-F
|
||||||
CALL NOUN-USED,W?ONE,INTNUM
|
CALL ADJ-USED,A?BIN,INTNUM
|
||||||
ZERO? STACK \?PRD5
|
|
||||||
CALL NOUN-USED,W?TWO,INTNUM
|
|
||||||
ZERO? STACK \?PRD5
|
|
||||||
CALL NOUN-USED,W?THREE,INTNUM
|
|
||||||
ZERO? STACK /?CCL3
|
ZERO? STACK /?CCL3
|
||||||
?PRD5: CALL GLOBAL-IN?,KEYPAD,HERE
|
EQUAL? HERE,ROBOT-POOL /?CCL6
|
||||||
ZERO? STACK /?CCL3
|
PRINT YOU-CANT
|
||||||
EQUAL? PRSA,V?TYPE,V?PUSH \?CCL3
|
PRINTR "see any bin here!]"
|
||||||
PRINTR "[Use numerals: for example, TYPE 5 rather than TYPE FIVE.]"
|
?CCL6: GRTR? P-NUMBER,3 \?CCL8
|
||||||
?CCL3: EQUAL? PRSA,V?ON,V?SHOOT,V?EXAMINE /?PRD13
|
PRINTR "There are only three bins!"
|
||||||
EQUAL? PRSA,V?MUNG,V?KILL,V?OFF \?CCL11
|
?CCL8: PRINT REFER-TO-BIN
|
||||||
?PRD13: GET WELDER-TABLE,WELDER-TABLE-POINTER
|
|
||||||
EQUAL? STACK,P-NUMBER \?CCL11
|
|
||||||
IN? WELDER,HERE \?CCL11
|
|
||||||
EQUAL? PRSO,INTNUM \?CCL19
|
|
||||||
CALL PERFORM-PRSA,WELDER,PRSI
|
|
||||||
RSTACK
|
|
||||||
?CCL19: CALL PERFORM-PRSA,PRSO,WELDER
|
|
||||||
RSTACK
|
|
||||||
?CCL11: EQUAL? PRSA,V?ENTER \?PRD23
|
|
||||||
EQUAL? P-PRSA-WORD,W?ENTER \?PRD23
|
|
||||||
CALL GLOBAL-IN?,KEYPAD,HERE
|
|
||||||
ZERO? STACK \?CTR20
|
|
||||||
?PRD23: EQUAL? PRSA,V?PUSH \?CCL21
|
|
||||||
CALL GLOBAL-IN?,KEYPAD,HERE
|
|
||||||
ZERO? STACK /?CCL21
|
|
||||||
?CTR20: CALL PERFORM,V?TYPE,INTNUM
|
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL21: EQUAL? PRSA,V?SET \?CCL30
|
?CCL3: GET P-NAMW,0
|
||||||
ZERO? PRSI \?CCL30
|
EQUAL? STACK,W?ONE,W?TWO,W?THREE \?CCL10
|
||||||
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL30
|
CALL GLOBAL-IN?,KEYPAD,HERE
|
||||||
EQUAL? P-NUMBER,DIAL-SETTING \?CCL36
|
ZERO? STACK /?CCL10
|
||||||
|
EQUAL? PRSA,V?TYPE,V?PUSH \?CCL10
|
||||||
|
PRINTR "[Use numerals: for example, TYPE 5 rather than TYPE FIVE.]"
|
||||||
|
?CCL10: EQUAL? PRSA,V?ON,V?SHOOT,V?EXAMINE /?PRD17
|
||||||
|
EQUAL? PRSA,V?MUNG,V?KILL,V?OFF \?CCL15
|
||||||
|
?PRD17: GET WELDER-TABLE,WELDER-TABLE-POINTER
|
||||||
|
EQUAL? STACK,P-NUMBER \?CCL15
|
||||||
|
IN? WELDER,HERE \?CCL15
|
||||||
|
EQUAL? PRSO,INTNUM \?CCL23
|
||||||
|
CALL PERFORM,PRSA,WELDER,PRSI
|
||||||
|
RTRUE
|
||||||
|
?CCL23: CALL PERFORM,PRSA,PRSO,WELDER
|
||||||
|
RTRUE
|
||||||
|
?CCL15: EQUAL? PRSA,V?ENTER \?PRD27
|
||||||
|
EQUAL? P-PRSA-WORD,W?ENTER \?PRD27
|
||||||
|
CALL GLOBAL-IN?,KEYPAD,HERE
|
||||||
|
ZERO? STACK \?CTR24
|
||||||
|
?PRD27: EQUAL? PRSA,V?PUSH \?CCL25
|
||||||
|
CALL GLOBAL-IN?,KEYPAD,HERE
|
||||||
|
ZERO? STACK /?CCL25
|
||||||
|
?CTR24: CALL PERFORM,V?TYPE,INTNUM
|
||||||
|
RTRUE
|
||||||
|
?CCL25: EQUAL? PRSA,V?SET \?CCL34
|
||||||
|
ZERO? PRSI \?CCL34
|
||||||
|
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL34
|
||||||
|
EQUAL? P-NUMBER,DIAL-SETTING \?CCL40
|
||||||
PRINT SENILITY-STRIKES
|
PRINT SENILITY-STRIKES
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL36: GRTR? P-NUMBER,8000 \?CCL38
|
?CCL40: GRTR? P-NUMBER,8000 \?CCL42
|
||||||
PRINTR "The dial only goes up to 8000."
|
PRINTR "The dial goes up to only 8000."
|
||||||
?CCL38: SET 'DIAL-SETTING,P-NUMBER
|
?CCL42: SET 'DIAL-SETTING,P-NUMBER
|
||||||
PRINTR """Click."""
|
PRINTR """Click."""
|
||||||
?CCL30: EQUAL? PRSA,V?WAIT-FOR \?CCL40
|
?CCL34: EQUAL? PRSA,V?WAIT-FOR \?CCL44
|
||||||
GRTR? P-NUMBER,40 \?CCL43
|
GRTR? P-NUMBER,40 \?CCL47
|
||||||
PRINT TOO-LONG-TO-WAIT
|
PRINT TOO-LONG-TO-WAIT
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL43: CALL V-WAIT
|
?CCL47: CALL V-WAIT
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL40: EQUAL? PRSA,V?WAIT-UNTIL \?CCL45
|
?CCL44: EQUAL? PRSA,V?WAIT-UNTIL \?CCL49
|
||||||
GRTR? P-NUMBER,INTERNAL-MOVES \?CCL48
|
GRTR? P-NUMBER,INTERNAL-MOVES \?CCL52
|
||||||
SUB P-NUMBER,INTERNAL-MOVES
|
SUB P-NUMBER,INTERNAL-MOVES
|
||||||
LESS? STACK,41 \?CCL48
|
LESS? STACK,41 \?CCL52
|
||||||
CALL V-WAIT
|
CALL V-WAIT
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL48: PRINT TOO-LONG-TO-WAIT
|
?CCL52: PRINT TOO-LONG-TO-WAIT
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL45: CALL TOUCHING?,INTNUM
|
?CCL49: CALL TOUCHING?,INTNUM
|
||||||
ZERO? STACK \?CCL52
|
ZERO? STACK \?CCL56
|
||||||
EQUAL? PRSA,V?SHOOT \FALSE
|
EQUAL? PRSA,V?SHOOT \FALSE
|
||||||
?CCL52: PRINT HUH
|
?CCL56: PRINT HUH
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
@ -129,41 +134,26 @@
|
||||||
|
|
||||||
.FUNCT FIND-NOT-HERE,TBL,PRSO?,M-F,OBJ
|
.FUNCT FIND-NOT-HERE,TBL,PRSO?,M-F,OBJ
|
||||||
CALL MOBY-FIND,TBL >M-F
|
CALL MOBY-FIND,TBL >M-F
|
||||||
ZERO? DEBUG /?CND1
|
EQUAL? 1,M-F \?CCL3
|
||||||
PRINTI "[Found "
|
ZERO? PRSO? /?CCL6
|
||||||
PRINTN M-F
|
|
||||||
PRINTI " obj]"
|
|
||||||
CRLF
|
|
||||||
?CND1: EQUAL? 1,M-F \?CCL5
|
|
||||||
ZERO? DEBUG /?CND6
|
|
||||||
PRINTI "[Namely: "
|
|
||||||
PRINTD P-MOBY-FOUND
|
|
||||||
PRINTC 93
|
|
||||||
CRLF
|
|
||||||
?CND6: ZERO? PRSO? /?CCL10
|
|
||||||
SET 'PRSO,P-MOBY-FOUND
|
SET 'PRSO,P-MOBY-FOUND
|
||||||
CALL THIS-IS-IT,PRSO
|
CALL THIS-IS-IT,PRSO
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL10: SET 'PRSI,P-MOBY-FOUND
|
?CCL6: SET 'PRSI,P-MOBY-FOUND
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL5: LESS? 1,M-F \?CCL12
|
?CCL3: LESS? 1,M-F \?CCL8
|
||||||
GET TBL,1 >OBJ
|
GET TBL,1 >OBJ
|
||||||
GETP OBJ,P?GENERIC
|
GETP OBJ,P?GENERIC
|
||||||
CALL STACK >OBJ
|
CALL STACK >OBJ
|
||||||
ZERO? OBJ /?CCL12
|
ZERO? OBJ /?CCL8
|
||||||
ZERO? DEBUG /?CND15
|
EQUAL? OBJ,NOT-HERE-OBJECT /TRUE
|
||||||
PRINTI "[Generic: "
|
ZERO? PRSO? /?CCL15
|
||||||
PRINTD OBJ
|
|
||||||
PRINTC 93
|
|
||||||
CRLF
|
|
||||||
?CND15: EQUAL? OBJ,NOT-HERE-OBJECT /TRUE
|
|
||||||
ZERO? PRSO? /?CCL21
|
|
||||||
SET 'PRSO,OBJ
|
SET 'PRSO,OBJ
|
||||||
CALL THIS-IS-IT,PRSO
|
CALL THIS-IS-IT,PRSO
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL21: SET 'PRSI,OBJ
|
?CCL15: SET 'PRSI,OBJ
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL12: RETURN NOT-HERE-OBJECT
|
?CCL8: RETURN NOT-HERE-OBJECT
|
||||||
|
|
||||||
|
|
||||||
.FUNCT NOT-HERE-PRINT,PRSO?,?TMP1
|
.FUNCT NOT-HERE-PRINT,PRSO?,?TMP1
|
||||||
|
@ -188,12 +178,24 @@
|
||||||
|
|
||||||
.FUNCT GROUND-F
|
.FUNCT GROUND-F
|
||||||
EQUAL? PRSA,V?ENTER,V?CLIMB-ON \?CCL3
|
EQUAL? PRSA,V?ENTER,V?CLIMB-ON \?CCL3
|
||||||
SET 'C-ELAPSED,31
|
ZERO? STUNNED /?CCL6
|
||||||
|
PRINT LOOK-AROUND
|
||||||
|
RTRUE
|
||||||
|
?CCL6: SET 'C-ELAPSED,31
|
||||||
PRINTR "After a brief squat on the floor, you stand again."
|
PRINTR "After a brief squat on the floor, you stand again."
|
||||||
?CCL3: EQUAL? PRSA,V?LOOK-UNDER \?CCL5
|
?CCL3: EQUAL? PRSA,V?CLEAN \?CCL8
|
||||||
|
SET 'AWAITING-REPLY,1
|
||||||
|
ADD C-ELAPSED,2
|
||||||
|
CALL QUEUE,I-REPLY,STACK
|
||||||
|
PRINTR "Do you also do windows?"
|
||||||
|
?CCL8: EQUAL? PRSA,V?LOOK-UNDER \?CCL10
|
||||||
CALL IMPOSSIBLES
|
CALL IMPOSSIBLES
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL5: EQUAL? PRSA,V?LEAVE \FALSE
|
?CCL10: EQUAL? PRSA,V?OPEN \?CCL12
|
||||||
|
EQUAL? HERE,BOTTOM-OF-AIR-SHAFT \?CCL12
|
||||||
|
CALL PERFORM,V?OPEN,GRATING
|
||||||
|
RTRUE
|
||||||
|
?CCL12: EQUAL? PRSA,V?LEAVE \FALSE
|
||||||
CALL DO-WALK,P?UP
|
CALL DO-WALK,P?UP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
@ -209,15 +211,20 @@
|
||||||
.FUNCT CEILING-F
|
.FUNCT CEILING-F
|
||||||
EQUAL? PRSA,V?SEARCH,V?EXAMINE \?CCL3
|
EQUAL? PRSA,V?SEARCH,V?EXAMINE \?CCL3
|
||||||
EQUAL? HERE,PET-STORE \?CCL3
|
EQUAL? HERE,PET-STORE \?CCL3
|
||||||
|
IN? PANEL,HERE \?CCL8
|
||||||
|
PRINTI "There's a panel mounted in the ceiling. "
|
||||||
|
CALL PERFORM,V?EXAMINE,PANEL
|
||||||
|
RTRUE
|
||||||
|
?CCL8: IN? PANEL,LOCAL-GLOBALS \FALSE
|
||||||
MOVE PANEL,HERE
|
MOVE PANEL,HERE
|
||||||
CALL THIS-IS-IT,PANEL
|
CALL THIS-IS-IT,PANEL
|
||||||
PRINTR "As you look carefully, you notice something that a casual inspection of the Pet Store would never have uncovered: a panel mounted in the ceiling."
|
PRINTR "As you look carefully, you notice something that a casual inspection of the Pet Store would never have uncovered: a panel mounted in the ceiling."
|
||||||
?CCL3: EQUAL? PRSA,V?EXAMINE \?CCL7
|
?CCL3: EQUAL? PRSA,V?EXAMINE \?CCL12
|
||||||
EQUAL? HERE,DOME \?CCL7
|
EQUAL? HERE,DOME \?CCL12
|
||||||
PRINT DOME-DESC
|
PRINT DOME-DESC
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL7: EQUAL? PRSA,V?LOOK-UNDER \FALSE
|
?CCL12: EQUAL? PRSA,V?LOOK-UNDER \FALSE
|
||||||
CALL PERFORM,V?LOOK
|
CALL PERFORM,V?LOOK
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
@ -246,7 +253,7 @@
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL19: EQUAL? HERE,GREASY-STRAW \?CCL21
|
?CCL19: EQUAL? HERE,GREASY-STRAW \?CCL21
|
||||||
IN? NECTAR,LOCAL-GLOBALS \?CCL21
|
FSET? NECTAR,TOUCHBIT /?CCL21
|
||||||
MOVE NECTAR,HERE
|
MOVE NECTAR,HERE
|
||||||
CALL THIS-IS-IT,NECTAR
|
CALL THIS-IS-IT,NECTAR
|
||||||
PRINTR "You spot a cup of Ramosian Fire Nectar behind the counter!"
|
PRINTR "You spot a cup of Ramosian Fire Nectar behind the counter!"
|
||||||
|
@ -277,7 +284,9 @@
|
||||||
PRINTR "You see a large cargo bay."
|
PRINTR "You see a large cargo bay."
|
||||||
?CCL14: EQUAL? SPACETRUCK-COUNTER,4 \?CCL16
|
?CCL14: EQUAL? SPACETRUCK-COUNTER,4 \?CCL16
|
||||||
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CCL16
|
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CCL16
|
||||||
PRINTR " You are approaching the station from slightly above it (on the galactic plane), thus offering a good view of the station's layout. In the center is the large, spherical Command Module. Jutting ""north"" from it is a smaller Sub-Module. Joining the Command Module, at its two other connection points, is a tangle of tubes and space bubbles and derelict rockets. These form a ""village,"" the sort of seedy, unauthorized village that frequently collects around a space station."
|
PRINTI " You are approaching the station from slightly above it (on the galactic plane), thus offering a good view of the station's layout. In the center is the large, spherical Command Module. Jutting ""north"" from it is a smaller Sub-Module. Joining the Command Module, at its two other connection points,"
|
||||||
|
PRINT TANGLE-OF-TUBES
|
||||||
|
PRINTR " These form a ""village,"" the sort of seedy, unauthorized village that frequently collects around a space station."
|
||||||
?CCL16: PRINTR "You see nothing but the majestic sweep of the galaxy."
|
?CCL16: PRINTR "You see nothing but the majestic sweep of the galaxy."
|
||||||
?CCL3: EQUAL? PRSA,V?CLEAN \FALSE
|
?CCL3: EQUAL? PRSA,V?CLEAN \FALSE
|
||||||
SET 'AWAITING-REPLY,1
|
SET 'AWAITING-REPLY,1
|
||||||
|
@ -388,7 +397,7 @@ FREZONE (tm) explosive available."""
|
||||||
SET 'PRSO,FALSE-VALUE
|
SET 'PRSO,FALSE-VALUE
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL3: EQUAL? PRSA,V?SHAKE \?CCL5
|
?CCL3: EQUAL? PRSA,V?SHAKE \?CCL5
|
||||||
CALL FIND-IN,HERE,ACTORBIT,STR?87 >ACTOR
|
CALL FIND-IN,HERE,ACTORBIT,STR?89 >ACTOR
|
||||||
ZERO? ACTOR /?CCL8
|
ZERO? ACTOR /?CCL8
|
||||||
CALL PERFORM,V?SHAKE-WITH,HANDS,ACTOR
|
CALL PERFORM,V?SHAKE-WITH,HANDS,ACTOR
|
||||||
RTRUE
|
RTRUE
|
||||||
|
@ -403,19 +412,26 @@ FREZONE (tm) explosive available."""
|
||||||
?CCL10: EQUAL? PRSA,V?CLEAN \?CCL15
|
?CCL10: EQUAL? PRSA,V?CLEAN \?CCL15
|
||||||
PRINTR "Done."
|
PRINTR "Done."
|
||||||
?CCL15: EQUAL? PRSA,V?SHOOT \?CCL17
|
?CCL15: EQUAL? PRSA,V?SHOOT \?CCL17
|
||||||
CALL JIGS-UP,STR?88
|
CALL JIGS-UP,STR?90
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL17: EQUAL? PRSA,V?TAKE-WITH \FALSE
|
?CCL17: EQUAL? PRSA,V?DRILL \?CCL19
|
||||||
|
PRINTI "Hmmm. Are you trying for a hole in "
|
||||||
|
PRINTD PRSO
|
||||||
|
PRINTR " to match the hole in your head?"
|
||||||
|
?CCL19: EQUAL? PRSA,V?TAKE-WITH \FALSE
|
||||||
EQUAL? PRSI,HANDS \FALSE
|
EQUAL? PRSI,HANDS \FALSE
|
||||||
CALL PERFORM,V?TAKE,PRSO
|
CALL PERFORM,V?TAKE,PRSO
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT TONGUE-F
|
.FUNCT TONGUE-F
|
||||||
EQUAL? PRSA,V?RUN-OVER,V?PUT-ON \FALSE
|
EQUAL? PRSA,V?RUN-OVER,V?PUT-ON \?CCL3
|
||||||
EQUAL? PRSO,TONGUE \FALSE
|
EQUAL? PRSO,TONGUE \?CCL3
|
||||||
CALL PERFORM,V?TASTE,PRSI
|
CALL PERFORM,V?TASTE,PRSI
|
||||||
RTRUE
|
RTRUE
|
||||||
|
?CCL3: EQUAL? PRSA,V?DRILL \FALSE
|
||||||
|
CALL HANDS-F
|
||||||
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
.FUNCT ME-F
|
.FUNCT ME-F
|
||||||
|
@ -442,10 +458,10 @@ FREZONE (tm) explosive available."""
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL17: EQUAL? PRSA,V?MUNG,V?KILL \?CCL19
|
?CCL17: EQUAL? PRSA,V?MUNG,V?KILL \?CCL19
|
||||||
EQUAL? PRSO,ME \?CCL19
|
EQUAL? PRSO,ME \?CCL19
|
||||||
CALL JIGS-UP,STR?89
|
CALL JIGS-UP,STR?91
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL19: EQUAL? PRSA,V?SHOOT \?CCL23
|
?CCL19: EQUAL? PRSA,V?SHOOT \?CCL23
|
||||||
CALL JIGS-UP,STR?90
|
CALL JIGS-UP,STR?92
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL23: EQUAL? PRSA,V?WHERE,V?FIND \?CCL25
|
?CCL23: EQUAL? PRSA,V?WHERE,V?FIND \?CCL25
|
||||||
PRINTI "You're in"
|
PRINTI "You're in"
|
||||||
|
@ -482,30 +498,30 @@ FREZONE (tm) explosive available."""
|
||||||
CALL BOTH-SEATS-NOT-OCCUPIED
|
CALL BOTH-SEATS-NOT-OCCUPIED
|
||||||
ZERO? STACK /?CCL15
|
ZERO? STACK /?CCL15
|
||||||
PRINTI "The form is spit back out. "
|
PRINTI "The form is spit back out. "
|
||||||
CALL RECORDING,STR?93
|
CALL RECORDING,STR?95
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL15: REMOVE PRSO
|
?CCL15: REMOVE PRSO
|
||||||
FSET PRSO,NDESCBIT
|
FSET PRSO,NDESCBIT
|
||||||
PRINT FORM-ACCEPTED
|
PRINT FORM-ACCEPTED
|
||||||
CALL RECORDING,STR?94
|
CALL RECORDING,STR?96
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL10: EQUAL? PRSO,ROBOT-USE-AUTHORIZATION-FORM \?CCL19
|
?CCL10: EQUAL? PRSO,ROBOT-USE-AUTHORIZATION-FORM \?CCL19
|
||||||
EQUAL? HERE,ROBOT-POOL \?CCL19
|
EQUAL? HERE,ROBOT-POOL \?CCL19
|
||||||
REMOVE PRSO
|
REMOVE PRSO
|
||||||
FSET PRSO,NDESCBIT
|
FSET PRSO,NDESCBIT
|
||||||
PRINT FORM-ACCEPTED
|
PRINT FORM-ACCEPTED
|
||||||
CALL RECORDING,STR?95
|
CALL RECORDING,STR?97
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL19: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM \?CCL23
|
?CCL19: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM \?CCL23
|
||||||
EQUAL? HERE,DECK-TWELVE \?CCL23
|
EQUAL? HERE,DECK-TWELVE \?CCL23
|
||||||
PRINT FORM-REJECTED
|
PRINT FORM-REJECTED
|
||||||
CALL RECORDING,STR?96
|
CALL RECORDING,STR?98
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL23: EQUAL? PRSO,VILLAGE-FORM \?CCL27
|
?CCL23: EQUAL? PRSO,VILLAGE-FORM \?CCL27
|
||||||
EQUAL? HERE,SOUTH-CONNECTION,EAST-CONNECTION \?CCL27
|
EQUAL? HERE,SOUTH-CONNECTION,EAST-CONNECTION \?CCL27
|
||||||
ZERO? VILLAGE-FORM-VALIDATED \?CCL32
|
ZERO? VILLAGE-FORM-VALIDATED \?CCL32
|
||||||
PRINT FORM-REJECTED
|
PRINT FORM-REJECTED
|
||||||
CALL RECORDING,STR?96
|
CALL RECORDING,STR?98
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL32: ADD SCORE,6 >SCORE
|
?CCL32: ADD SCORE,6 >SCORE
|
||||||
INC 'ROBOT-EVILNESS
|
INC 'ROBOT-EVILNESS
|
||||||
|
@ -516,14 +532,14 @@ FREZONE (tm) explosive available."""
|
||||||
?CCL27: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM,ROBOT-USE-AUTHORIZATION-FORM /?CTR33
|
?CCL27: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM,ROBOT-USE-AUTHORIZATION-FORM /?CTR33
|
||||||
EQUAL? PRSO,VILLAGE-FORM \?CCL34
|
EQUAL? PRSO,VILLAGE-FORM \?CCL34
|
||||||
?CTR33: PRINT FORM-REJECTED
|
?CTR33: PRINT FORM-REJECTED
|
||||||
CALL RECORDING,STR?97
|
CALL RECORDING,STR?99
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL34: GETP P?SIZE,PRSO
|
?CCL34: GETP P?SIZE,PRSO
|
||||||
LESS? STACK,3 \?CCL38
|
LESS? STACK,3 \?CCL38
|
||||||
PRINTI "The slot swallows"
|
PRINTI "The slot swallows"
|
||||||
CALL TPRINT-PRSO
|
CALL TPRINT-PRSO
|
||||||
PRINTR " and then spits it back."
|
PRINTR " and then spits it back."
|
||||||
?CCL38: CALL DOESNT-FIT,STR?98
|
?CCL38: CALL DOESNT-FIT,STR?100
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL3: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
|
?CCL3: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
|
||||||
PRINT ONLY-BLACKNESS
|
PRINT ONLY-BLACKNESS
|
||||||
|
@ -534,7 +550,7 @@ FREZONE (tm) explosive available."""
|
||||||
IN? PROTAGONIST,PILOT-SEAT \?CCL3
|
IN? PROTAGONIST,PILOT-SEAT \?CCL3
|
||||||
IN? FLOYD,COPILOT-SEAT /FALSE
|
IN? FLOYD,COPILOT-SEAT /FALSE
|
||||||
?CCL3: IN? PROTAGONIST,COPILOT-SEAT \TRUE
|
?CCL3: IN? PROTAGONIST,COPILOT-SEAT \TRUE
|
||||||
IN? FLOYD,COPILOT-SEAT /FALSE
|
IN? FLOYD,PILOT-SEAT /FALSE
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
@ -550,8 +566,8 @@ FREZONE (tm) explosive available."""
|
||||||
|
|
||||||
|
|
||||||
.FUNCT FURNISHING-F
|
.FUNCT FURNISHING-F
|
||||||
EQUAL? PRSA,V?LOOK-INSIDE,V?SEARCH,V?OPEN /?CTR2
|
EQUAL? PRSA,V?SEARCH,V?OPEN,V?ENTER /?CTR2
|
||||||
EQUAL? PRSA,V?EXAMINE \?CCL3
|
EQUAL? PRSA,V?EXAMINE,V?LOOK-INSIDE \?CCL3
|
||||||
?CTR2: PRINTR "You merely find a few personal items of little interest."
|
?CTR2: PRINTR "You merely find a few personal items of little interest."
|
||||||
?CCL3: EQUAL? PRSA,V?PUT-ON,V?PUT \FALSE
|
?CCL3: EQUAL? PRSA,V?PUT-ON,V?PUT \FALSE
|
||||||
PRINTI "The "
|
PRINTI "The "
|
||||||
|
@ -561,29 +577,50 @@ FREZONE (tm) explosive available."""
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT VILLAGE-F
|
||||||
|
EQUAL? HERE,SPACETRUCK \?CCL3
|
||||||
|
EQUAL? SPACETRUCK-COUNTER,4 \?CTR2
|
||||||
|
EQUAL? COURSE-PICKED,RIGHT-COURSE /?CCL3
|
||||||
|
?CTR2: CALL CANT-SEE,VILLAGE
|
||||||
|
RSTACK
|
||||||
|
?CCL3: EQUAL? PRSA,V?EXIT,V?WALK-TO,V?ENTER /?CTR8
|
||||||
|
EQUAL? PRSA,V?DISEMBARK,V?LEAVE \?CCL9
|
||||||
|
?CTR8: CALL V-WALK-AROUND
|
||||||
|
RSTACK
|
||||||
|
?CCL9: EQUAL? PRSA,V?EXAMINE \FALSE
|
||||||
|
EQUAL? HERE,SPACETRUCK \FALSE
|
||||||
|
PRINTI "The village"
|
||||||
|
PRINT TANGLE-OF-TUBES
|
||||||
|
CRLF
|
||||||
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT BED-F
|
.FUNCT BED-F
|
||||||
EQUAL? PRSA,V?WALK-TO \?CCL3
|
EQUAL? PRSA,V?WALK-TO \?CCL3
|
||||||
CALL GLOBAL-IN?,BED,HERE
|
CALL GLOBAL-IN?,BED,HERE
|
||||||
ZERO? STACK \?CCL3
|
ZERO? STACK \?CCL3
|
||||||
PRINTR "There's no bed here!"
|
PRINTR "There's no bed here!"
|
||||||
?CCL3: EQUAL? PRSA,V?WALK-TO,V?ENTER \?CCL7
|
?CCL3: EQUAL? PRSA,V?WALK-TO,V?ENTER \?CCL7
|
||||||
GRTR? SLEEPY-LEVEL,0 \?CCL10
|
ZERO? STUNNED /?CCL10
|
||||||
|
CALL YOURE-STUNNED
|
||||||
|
RSTACK
|
||||||
|
?CCL10: GRTR? SLEEPY-LEVEL,0 \?CCL12
|
||||||
MOVE PROTAGONIST,BED
|
MOVE PROTAGONIST,BED
|
||||||
CALL QUEUE,I-FALL-ASLEEP,22
|
CALL QUEUE,I-FALL-ASLEEP,22
|
||||||
CALL DEQUEUE,I-SLEEP-WARNINGS
|
CALL DEQUEUE,I-SLEEP-WARNINGS
|
||||||
PRINTR "Ahhh...the bed is soft and comfortable. You should be asleep in short order."
|
PRINTR "Ahhh...the bed is soft and comfortable. You should be asleep in short order."
|
||||||
?CCL10: MOVE PROTAGONIST,BED
|
?CCL12: MOVE PROTAGONIST,BED
|
||||||
PRINTR "You are now in bed."
|
PRINTR "You are now in bed."
|
||||||
?CCL7: EQUAL? PRSA,V?EXIT,V?STAND,V?DISEMBARK /?PRD14
|
?CCL7: EQUAL? PRSA,V?EXIT,V?STAND,V?DISEMBARK /?PRD16
|
||||||
EQUAL? PRSA,V?DROP \?CCL12
|
EQUAL? PRSA,V?DROP \?CCL14
|
||||||
?PRD14: CALL QUEUED?,I-FALL-ASLEEP
|
?PRD16: CALL QUEUED?,I-FALL-ASLEEP
|
||||||
ZERO? STACK /?CCL12
|
ZERO? STACK /?CCL14
|
||||||
PRINTR "But you're so tired and this bed is so comfy!"
|
PRINTR "But you're so tired and this bed is so comfy!"
|
||||||
?CCL12: EQUAL? PRSA,V?DROP,V?EXIT,V?LEAVE \?CCL18
|
?CCL14: EQUAL? PRSA,V?DROP,V?EXIT,V?LEAVE \?CCL20
|
||||||
CALL PERFORM,V?DISEMBARK,BED
|
CALL PERFORM,V?DISEMBARK,BED
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL18: EQUAL? PRSA,V?PUT-ON,V?PUT \?CCL20
|
?CCL20: EQUAL? PRSA,V?PUT-ON,V?PUT \?CCL22
|
||||||
EQUAL? PRSI,BED \?CCL20
|
EQUAL? PRSI,BED \?CCL22
|
||||||
MOVE PRSO,HERE
|
MOVE PRSO,HERE
|
||||||
PRINTI "The "
|
PRINTI "The "
|
||||||
PRINTD PRSO
|
PRINTD PRSO
|
||||||
|
@ -591,19 +628,19 @@ FREZONE (tm) explosive available."""
|
||||||
PRINT LANDS-ON-FLOOR
|
PRINT LANDS-ON-FLOOR
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL20: EQUAL? PRSA,V?LOOK-UNDER \?CCL24
|
?CCL22: EQUAL? PRSA,V?LOOK-UNDER \?CCL26
|
||||||
IN? PROTAGONIST,BED \?CCL24
|
IN? PROTAGONIST,BED \?CCL26
|
||||||
PRINTR "You're IN the bed, so unless you have X-ray vision..."
|
PRINTR "You're IN the bed, so unless you have X-ray vision..."
|
||||||
?CCL24: EQUAL? PRSA,V?LOOK-UNDER \?CCL28
|
?CCL26: EQUAL? PRSA,V?LOOK-UNDER \?CCL30
|
||||||
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL28
|
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL30
|
||||||
FSET? VALIDATION-STAMP,TOUCHBIT /?CCL28
|
FSET? VALIDATION-STAMP,TOUCHBIT /?CCL30
|
||||||
FSET VALIDATION-STAMP,TOUCHBIT
|
FSET VALIDATION-STAMP,TOUCHBIT
|
||||||
MOVE VALIDATION-STAMP,HERE
|
MOVE VALIDATION-STAMP,HERE
|
||||||
CALL THIS-IS-IT,VALIDATION-STAMP
|
CALL THIS-IS-IT,VALIDATION-STAMP
|
||||||
PRINTI "You discover a "
|
PRINTI "You discover a "
|
||||||
PRINTD VALIDATION-STAMP
|
PRINTD VALIDATION-STAMP
|
||||||
PRINTR "!"
|
PRINTR "!"
|
||||||
?CCL28: EQUAL? PRSA,V?SHOOT,V?KILL,V?DRILL \FALSE
|
?CCL30: EQUAL? PRSA,V?SHOOT,V?KILL,V?DRILL \FALSE
|
||||||
PRINTR "That would be a clear case of mattresscide!"
|
PRINTR "That would be a clear case of mattresscide!"
|
||||||
|
|
||||||
|
|
||||||
|
@ -616,43 +653,54 @@ FREZONE (tm) explosive available."""
|
||||||
.FUNCT I-SLEEP-WARNINGS
|
.FUNCT I-SLEEP-WARNINGS
|
||||||
IN? WELDER,HERE \?PRD4
|
IN? WELDER,HERE \?PRD4
|
||||||
GRTR? SLEEPY-LEVEL,3 /?CCL2
|
GRTR? SLEEPY-LEVEL,3 /?CCL2
|
||||||
?PRD4: GRTR? PLATO-ATTACK-COUNTER,0 \?CND1
|
?PRD4: ZERO? STUNNED /?CND1
|
||||||
IN? PLATO,HERE \?CND1
|
|
||||||
?CCL2: CALL QUEUE,I-HUNGER-WARNINGS,2
|
?CCL2: CALL QUEUE,I-HUNGER-WARNINGS,2
|
||||||
RFALSE
|
RFALSE
|
||||||
?CND1: INC 'SLEEPY-LEVEL
|
?CND1: INC 'SLEEPY-LEVEL
|
||||||
PRINTI " "
|
PRINTI " "
|
||||||
IN? PROTAGONIST,BED \?CCL11
|
IN? PROTAGONIST,BED \?CCL9
|
||||||
CALL DEQUEUE,I-SLEEP-WARNINGS
|
CALL DEQUEUE,I-SLEEP-WARNINGS
|
||||||
CALL QUEUE,I-FALL-ASLEEP,16
|
CALL QUEUE,I-FALL-ASLEEP,16
|
||||||
PRINTR "You suddenly realize how tired you were and how comfortable the bed is. You should be asleep in no time."
|
PRINTI "You suddenly realize how tired you were and how comfortable the bed is. You should be asleep in no time."
|
||||||
?CCL11: EQUAL? SLEEPY-LEVEL,1 \?CCL13
|
CRLF
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL9: EQUAL? SLEEPY-LEVEL,1 \?CCL11
|
||||||
CALL QUEUE,I-SLEEP-WARNINGS,320
|
CALL QUEUE,I-SLEEP-WARNINGS,320
|
||||||
PRINTR "You begin to feel weary. It might be time to think about finding a nice safe place to sleep."
|
PRINTI "You begin to feel weary. It might be time to think about finding a nice safe place to sleep."
|
||||||
?CCL13: EQUAL? SLEEPY-LEVEL,2 \?CCL15
|
CRLF
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL11: EQUAL? SLEEPY-LEVEL,2 \?CCL13
|
||||||
CALL QUEUE,I-SLEEP-WARNINGS,160
|
CALL QUEUE,I-SLEEP-WARNINGS,160
|
||||||
PRINTR "You're really tired now. You'd better find a place to sleep real soon."
|
PRINTI "You're really tired now. You'd better find a place to sleep real soon."
|
||||||
?CCL15: EQUAL? SLEEPY-LEVEL,3 \?CCL17
|
CRLF
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL13: EQUAL? SLEEPY-LEVEL,3 \?CCL15
|
||||||
CALL QUEUE,I-SLEEP-WARNINGS,80
|
CALL QUEUE,I-SLEEP-WARNINGS,80
|
||||||
PRINTR "If you don't get some sleep soon you'll probably drop."
|
PRINTI "If you don't get some sleep soon you'll probably drop."
|
||||||
?CCL17: EQUAL? SLEEPY-LEVEL,4 \?CCL19
|
CRLF
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL15: EQUAL? SLEEPY-LEVEL,4 \?CCL17
|
||||||
CALL QUEUE,I-SLEEP-WARNINGS,40
|
CALL QUEUE,I-SLEEP-WARNINGS,40
|
||||||
PRINTR "You can barely keep your eyes open."
|
PRINTI "You can barely keep your eyes open."
|
||||||
?CCL19: EQUAL? HERE,BED \?CCL22
|
CRLF
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL17: EQUAL? HERE,BED \?CCL20
|
||||||
PRINTI "You slowly sink into a deep and blissful sleep."
|
PRINTI "You slowly sink into a deep and blissful sleep."
|
||||||
JUMP ?CND20
|
JUMP ?CND18
|
||||||
?CCL22: CALL GLOBAL-IN?,BED,HERE
|
?CCL20: CALL GLOBAL-IN?,BED,HERE
|
||||||
ZERO? STACK /?CCL24
|
ZERO? STACK /?CCL22
|
||||||
MOVE PROTAGONIST,BED
|
MOVE PROTAGONIST,BED
|
||||||
PRINTI "You climb into one of the beds and immediately fall asleep."
|
PRINTI "You climb into one of the beds and immediately fall asleep."
|
||||||
JUMP ?CND20
|
JUMP ?CND18
|
||||||
?CCL24: PRINT YOU-CANT
|
?CCL22: PRINT YOU-CANT
|
||||||
PRINTI "stay awake a moment longer. You drop "
|
PRINTI "stay awake a moment longer. You drop "
|
||||||
IN? PROTAGONIST,HERE \?CND25
|
IN? PROTAGONIST,HERE \?CND23
|
||||||
FSET? HERE,WEIGHTLESSBIT /?CND25
|
FSET? HERE,WEIGHTLESSBIT /?CND23
|
||||||
PRINTI "to the deck and fall "
|
PRINTI "to the deck and fall "
|
||||||
?CND25: PRINTI "into a deep but fitful sleep."
|
?CND23: PRINTI "into a deep but fitful sleep."
|
||||||
?CND20: CALL WAKING-UP
|
?CND18: CALL WAKING-UP
|
||||||
|
?CND7: IN? PROTAGONIST,BED /FALSE
|
||||||
|
CALL STOP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
@ -671,7 +719,7 @@ FREZONE (tm) explosive available."""
|
||||||
IN? PROTAGONIST,BED /?CND1
|
IN? PROTAGONIST,BED /?CND1
|
||||||
MOVE PROTAGONIST,HERE
|
MOVE PROTAGONIST,HERE
|
||||||
?CND1: FSET? SPACESUIT,WORNBIT \?CCL5
|
?CND1: FSET? SPACESUIT,WORNBIT \?CCL5
|
||||||
CALL JIGS-UP,STR?105
|
CALL JIGS-UP,STR?107
|
||||||
JUMP ?CND3
|
JUMP ?CND3
|
||||||
?CCL5: EQUAL? COURSE-PICKED,RIGHT-COURSE /?CCL7
|
?CCL5: EQUAL? COURSE-PICKED,RIGHT-COURSE /?CCL7
|
||||||
EQUAL? HERE,SPACETRUCK \?CCL7
|
EQUAL? HERE,SPACETRUCK \?CCL7
|
||||||
|
@ -693,7 +741,7 @@ FREZONE (tm) explosive available."""
|
||||||
PRINTI " fell asleep on Deck Twelve in the middle of some big assignment! The poor trot-head's been broken to Ensign Ninth, and there's talk of a court-martial!""
|
PRINTI " fell asleep on Deck Twelve in the middle of some big assignment! The poor trot-head's been broken to Ensign Ninth, and there's talk of a court-martial!""
|
||||||
Sure enough, the next morning you are led in front of a firing squad. Moral: don't screw up vital assignments like picking up "
|
Sure enough, the next morning you are led in front of a firing squad. Moral: don't screw up vital assignments like picking up "
|
||||||
PRINT FORM-NAME
|
PRINT FORM-NAME
|
||||||
CALL JIGS-UP,STR?46
|
CALL JIGS-UP,STR?9
|
||||||
JUMP ?CND3
|
JUMP ?CND3
|
||||||
?CCL14: IN? PROTAGONIST,HERE \?PRD18
|
?CCL14: IN? PROTAGONIST,HERE \?PRD18
|
||||||
FSET? DOCKING-BAY-2,TOUCHBIT \?PRD18
|
FSET? DOCKING-BAY-2,TOUCHBIT \?PRD18
|
||||||
|
@ -701,11 +749,25 @@ FREZONE (tm) explosive available."""
|
||||||
RANDOM 100
|
RANDOM 100
|
||||||
LESS? ?TMP1,STACK \?CTR15
|
LESS? ?TMP1,STACK \?CTR15
|
||||||
?PRD18: CALL ULTIMATELY-IN?,OSTRICH-NIP
|
?PRD18: CALL ULTIMATELY-IN?,OSTRICH-NIP
|
||||||
ZERO? STACK /?CCL16
|
ZERO? STACK /?PRD22
|
||||||
IN? OSTRICH,HERE \?CCL16
|
IN? OSTRICH,HERE /?CTR15
|
||||||
?CTR15: CALL JIGS-UP,STR?106
|
?PRD22: IN? EXPLOSIVE,DRILLED-HOLE \?CCL16
|
||||||
|
?CTR15: CALL JIGS-UP,STR?108
|
||||||
JUMP ?CND3
|
JUMP ?CND3
|
||||||
?CCL16: RANDOM 100
|
?CCL16: ZERO? EXPLOSIVE-CONNECTED /?CCL26
|
||||||
|
ZERO? TIMER-CONNECTED /?CCL26
|
||||||
|
IN? DIODE-M,DETONATOR \?CCL26
|
||||||
|
GRTR? TIMER-SETTING,0 \?CCL26
|
||||||
|
CALL META-LOC,EXPLOSIVE
|
||||||
|
EQUAL? STACK,HERE \?CCL33
|
||||||
|
CALL JIGS-UP,STR?109
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL33: CALL DESTROY-EXPLOSIVE-CONT
|
||||||
|
REMOVE TIMER
|
||||||
|
REMOVE EXPLOSIVE
|
||||||
|
REMOVE DETONATOR
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL26: RANDOM 100
|
||||||
LESS? 60,STACK /?CND3
|
LESS? 60,STACK /?CND3
|
||||||
PRINTI "..."
|
PRINTI "..."
|
||||||
CALL PICK-ONE,DREAMS
|
CALL PICK-ONE,DREAMS
|
||||||
|
@ -714,34 +776,41 @@ FREZONE (tm) explosive available."""
|
||||||
?CND3: INC 'DAY
|
?CND3: INC 'DAY
|
||||||
INC 'ROBOT-EVILNESS
|
INC 'ROBOT-EVILNESS
|
||||||
CALL I-ROBOT-EVILNESS
|
CALL I-ROBOT-EVILNESS
|
||||||
|
SET 'TIMER-SETTING,0
|
||||||
|
CALL DEQUEUE,I-TIMER
|
||||||
SET 'SLEEPY-LEVEL,0
|
SET 'SLEEPY-LEVEL,0
|
||||||
SET 'SUIT-PRESSED,FALSE-VALUE
|
SET 'SUIT-PRESSED,FALSE-VALUE
|
||||||
SET 'FLOYD-ANGUISHED,FALSE-VALUE
|
SET 'FLOYD-ANGUISHED,FALSE-VALUE
|
||||||
RANDOM 80
|
RANDOM 80
|
||||||
ADD 1600,STACK >INTERNAL-MOVES
|
ADD 1600,STACK >INTERNAL-MOVES
|
||||||
GRTR? DAY,2 \?CCL27
|
GRTR? DAY,2 \?CCL37
|
||||||
SET 'MOVES,9947
|
SET 'MOVES,9947
|
||||||
JUMP ?CND25
|
JUMP ?CND35
|
||||||
?CCL27: CALL QUEUE,I-MESSAGE,943
|
?CCL37: CALL QUEUE,I-MESSAGE,943
|
||||||
ADD SCORE,3 >SCORE
|
ADD SCORE,3 >SCORE
|
||||||
SET 'MOVES,INTERNAL-MOVES
|
SET 'MOVES,INTERNAL-MOVES
|
||||||
?CND25: FCLEAR AUTO-DOOR,TOUCHBIT
|
?CND35: FCLEAR AUTO-DOOR,TOUCHBIT
|
||||||
CALL QUEUE,I-SLEEP-WARNINGS,5900
|
CALL QUEUE,I-SLEEP-WARNINGS,5900
|
||||||
CALL ULTIMATELY-IN?,EXPLOSIVE,VACUUM-STORAGE
|
CALL ULTIMATELY-IN?,EXPLOSIVE,VACUUM-STORAGE
|
||||||
ZERO? STACK \?CND28
|
ZERO? STACK \?CND38
|
||||||
MOVE EXPLOSIVE,DECK-TWELVE
|
MOVE EXPLOSIVE,DECK-TWELVE
|
||||||
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
||||||
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
||||||
?CND28: FSET? HEADLAMP,ONBIT \?CND30
|
?CND38: FSET? HEADLAMP,ONBIT \?CND40
|
||||||
FCLEAR HEADLAMP,ACTIVEBIT
|
FCLEAR HEADLAMP,ACTIVEBIT
|
||||||
FCLEAR HEADLAMP,ONBIT
|
FCLEAR HEADLAMP,ONBIT
|
||||||
SET 'HEADLAMP-COUNTER,0
|
SET 'HEADLAMP-COUNTER,0
|
||||||
?CND30: GRTR? SOUP-WARMTH,0 \?CND32
|
?CND40: CALL RUNNING?,I-LOG-READER
|
||||||
FSET? THERMOS,OPENBIT \?CCL36
|
ZERO? STACK /?CND42
|
||||||
|
REMOVE LOG-READER
|
||||||
|
CALL DEQUEUE,I-LOG-READER
|
||||||
|
FCLEAR COMMANDERS-OFFICE,TOUCHBIT
|
||||||
|
?CND42: GRTR? SOUP-WARMTH,0 \?CND44
|
||||||
|
FSET? THERMOS,OPENBIT \?CCL48
|
||||||
SET 'SOUP-WARMTH,0
|
SET 'SOUP-WARMTH,0
|
||||||
JUMP ?CND32
|
JUMP ?CND44
|
||||||
?CCL36: SUB SOUP-WARMTH,30 >SOUP-WARMTH
|
?CCL48: SUB SOUP-WARMTH,30 >SOUP-WARMTH
|
||||||
?CND32: FSET OSTRICH,TOUCHBIT
|
?CND44: FSET OSTRICH,TOUCHBIT
|
||||||
CALL ROB,PROTAGONIST,HERE
|
CALL ROB,PROTAGONIST,HERE
|
||||||
USL
|
USL
|
||||||
PRINTI "***** NOVEM "
|
PRINTI "***** NOVEM "
|
||||||
|
@ -751,37 +820,37 @@ FREZONE (tm) explosive available."""
|
||||||
CRLF
|
CRLF
|
||||||
CRLF
|
CRLF
|
||||||
PRINTI "You awake "
|
PRINTI "You awake "
|
||||||
ZERO? LIT \?CCL39
|
ZERO? LIT \?CCL51
|
||||||
PRINTI "in darkness."
|
PRINTI "in darkness."
|
||||||
JUMP ?CND37
|
JUMP ?CND49
|
||||||
?CCL39: CALL QUEUED?,I-LIGHTS-OUT
|
?CCL51: CALL QUEUED?,I-LIGHTS-OUT
|
||||||
ZERO? STACK /?CCL41
|
ZERO? STACK /?CCL53
|
||||||
CALL DEQUEUE,I-LIGHTS-OUT
|
CALL DEQUEUE,I-LIGHTS-OUT
|
||||||
CALL I-LIGHTS-OUT,TRUE-VALUE
|
CALL I-LIGHTS-OUT,TRUE-VALUE
|
||||||
PRINTI "slowly, aware that something has changed. Aha! The lights have all gone out while you slept!"
|
PRINTI "slowly, aware that something has changed. Aha! The lights have all gone out while you slept!"
|
||||||
JUMP ?CND37
|
JUMP ?CND49
|
||||||
?CCL41: LOC PROTAGONIST
|
?CCL53: LOC PROTAGONIST
|
||||||
EQUAL? STACK,BED,PILOT-SEAT,COPILOT-SEAT \?CCL43
|
EQUAL? STACK,BED,PILOT-SEAT,COPILOT-SEAT \?CCL55
|
||||||
PRINTI "feeling refreshed and ready to face anything this new day might care to throw at you."
|
PRINTI "feeling refreshed and ready to face anything this new day might care to throw at you."
|
||||||
JUMP ?CND37
|
JUMP ?CND49
|
||||||
?CCL43: PRINTI "and slowly stand up, feeling stiff from your uncomfortable night's sleep."
|
?CCL55: PRINTI "and slowly stand up, feeling stiff from your uncomfortable night's sleep."
|
||||||
?CND37: EQUAL? DAY,4 \?CND44
|
?CND49: EQUAL? DAY,4 \?CND56
|
||||||
FSET? SAFE,OPENBIT /?CCL48
|
FSET? SAFE,OPENBIT /?CCL60
|
||||||
CALL QUEUE,I-LIGHTS-OUT,177
|
CALL QUEUE,I-LIGHTS-OUT,177
|
||||||
JUMP ?CND44
|
JUMP ?CND56
|
||||||
?CCL48: CALL QUEUED?,I-ANNOUNCEMENT
|
?CCL60: CALL QUEUED?,I-ANNOUNCEMENT
|
||||||
ZERO? STACK \?CND44
|
ZERO? STACK \?CND56
|
||||||
CALL QUEUE,I-ANNOUNCEMENT,383
|
CALL QUEUE,I-ANNOUNCEMENT,383
|
||||||
?CND44: GRTR? HUNGER-LEVEL,0 \?CCL52
|
?CND56: GRTR? HUNGER-LEVEL,0 \?CCL64
|
||||||
SET 'HUNGER-LEVEL,3
|
SET 'HUNGER-LEVEL,3
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,200
|
CALL QUEUE,I-HUNGER-WARNINGS,200
|
||||||
PRINTI " You're also incredibly famished. Better get some breakfast!"
|
PRINTI " You're also incredibly famished. Better get some breakfast!"
|
||||||
JUMP ?CND50
|
JUMP ?CND62
|
||||||
?CCL52: CALL QUEUE,I-HUNGER-WARNINGS,400
|
?CCL64: CALL QUEUE,I-HUNGER-WARNINGS,400
|
||||||
?CND50: CRLF
|
?CND62: CRLF
|
||||||
CALL RUNNING?,I-SPACETRUCK
|
CALL RUNNING?,I-SPACETRUCK
|
||||||
ZERO? STACK /?CND53
|
ZERO? STACK /?CND65
|
||||||
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CND53
|
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CND65
|
||||||
CALL QUEUE,I-WELDER,-1
|
CALL QUEUE,I-WELDER,-1
|
||||||
CALL DEQUEUE,I-SPACETRUCK
|
CALL DEQUEUE,I-SPACETRUCK
|
||||||
FCLEAR SPACETRUCK,WEIGHTLESSBIT
|
FCLEAR SPACETRUCK,WEIGHTLESSBIT
|
||||||
|
@ -789,75 +858,84 @@ FREZONE (tm) explosive available."""
|
||||||
SET 'SPACETRUCK-COUNTER,5
|
SET 'SPACETRUCK-COUNTER,5
|
||||||
PRINTI " You notice that, while you slept, the truck has docked itself in one of the space station's docking bays."
|
PRINTI " You notice that, while you slept, the truck has docked itself in one of the space station's docking bays."
|
||||||
CRLF
|
CRLF
|
||||||
?CND53: EQUAL? DAY,3 \?CND57
|
?CND65: EQUAL? DAY,3 \?CND69
|
||||||
FCLEAR ELEVATOR,WEIGHTLESSBIT
|
FCLEAR ELEVATOR,WEIGHTLESSBIT
|
||||||
FSET EXERCISE-MACHINE,TOUCHBIT
|
FSET EXERCISE-MACHINE,TOUCHBIT
|
||||||
MOVE EXERCISE-MACHINE,COMPUTER-CONTROL
|
MOVE EXERCISE-MACHINE,COMPUTER-CONTROL
|
||||||
CALL ROB,EXERCISE-MACHINE,GYM
|
CALL ROB,EXERCISE-MACHINE,GYM
|
||||||
FSET? CHRONOMETER,WORNBIT \?CND57
|
FSET? CHRONOMETER,WORNBIT \?CND69
|
||||||
PRINTI " "
|
PRINTI " "
|
||||||
CALL PERFORM,V?EXAMINE,CHRONOMETER
|
CALL PERFORM,V?EXAMINE,CHRONOMETER
|
||||||
?CND57: FSET? FLOYD,ACTIVEBIT \?CND61
|
?CND69: FSET? FLOYD,ACTIVEBIT \?CND73
|
||||||
IN? FLOYD,FACTORY /?CND61
|
IN? FLOYD,FACTORY /?CND73
|
||||||
EQUAL? HERE,AIRLOCK /?CND61
|
EQUAL? HERE,AIRLOCK /?CND73
|
||||||
SET 'FLOYD-SPOKE,TRUE-VALUE
|
SET 'FLOYD-SPOKE,TRUE-VALUE
|
||||||
PRINTI " Floyd "
|
PRINTI " Floyd "
|
||||||
GRTR? ROBOT-EVILNESS,13 \?CCL68
|
GRTR? ROBOT-EVILNESS,13 \?CCL80
|
||||||
PRINTI "is rudely kicking you"
|
PRINTI "is rudely kicking you"
|
||||||
IN? PROTAGONIST,BED \?CND69
|
IN? PROTAGONIST,BED \?CND81
|
||||||
PRINTI "r mattress"
|
PRINTI "r mattress"
|
||||||
?CND69: PRINTI ". ""Trot it! Will you kripping wake up already? Floyd getting bored!"""
|
?CND81: PRINTI ". ""Trot it! Will you kripping wake up already? Floyd getting bored!"""
|
||||||
CRLF
|
CRLF
|
||||||
JUMP ?CND66
|
JUMP ?CND78
|
||||||
?CCL68: PRINTI "bounces impatiently at "
|
?CCL80: PRINTI "bounces impatiently at "
|
||||||
IN? PROTAGONIST,BED \?CCL73
|
IN? PROTAGONIST,BED \?CCL85
|
||||||
PRINTI "the foot of the bed"
|
PRINTI "the foot of the bed"
|
||||||
JUMP ?CND71
|
JUMP ?CND83
|
||||||
?CCL73: PRINTI "your side"
|
?CCL85: PRINTI "your side"
|
||||||
?CND71: ZERO? PLATO-INTRODUCED /?CND74
|
?CND83: ZERO? PLATO-INTRODUCED /?CND86
|
||||||
ZERO? PLATO-ATTACK-COUNTER \?CND74
|
ZERO? PLATO-ATTACK-COUNTER \?CND86
|
||||||
MOVE PLATO,HERE
|
MOVE PLATO,HERE
|
||||||
PRINTI ". Plato is nearby, leafing through his book"
|
PRINTI ". Plato is nearby, leafing through his book"
|
||||||
?CND74: ZERO? PLATO-INTRODUCED \?CCL80
|
?CND86: ZERO? PLATO-INTRODUCED \?CCL92
|
||||||
PRINTI ", along with a slightly older-looking robot. ""Wake up and meet Floyd's new friend,"" says Floyd with unbounded exuberance and a wide grin."
|
PRINTI ", along with a slightly older-looking robot. ""Wake up and meet Floyd's new friend,"" says Floyd with unbounded exuberance and a wide grin."
|
||||||
CRLF
|
CRLF
|
||||||
CALL I-PLATO,TRUE-VALUE
|
CALL I-PLATO,TRUE-VALUE
|
||||||
JUMP ?CND66
|
JUMP ?CND78
|
||||||
?CCL80: PRINTI ". ""About time you woke up, you lazy "
|
?CCL92: PRINTI ". ""About time you woke up, you lazy "
|
||||||
GRTR? ROBOT-EVILNESS,9 \?CCL83
|
GRTR? ROBOT-EVILNESS,9 \?CCL95
|
||||||
PRINTI "slob!"" says Floyd. ""It's getting pretty trotting dull around he"
|
PRINTI "slob!"" says Floyd. ""It's getting pretty trotting dull around he"
|
||||||
JUMP ?CND81
|
JUMP ?CND93
|
||||||
?CCL83: PRINTI "bones!"" says Floyd. ""Let's explore around some mo"
|
?CCL95: PRINTI "bones!"" says Floyd. ""Let's explore around some mo"
|
||||||
?CND81: PRINTI "re!"""
|
?CND93: PRINTI "re!"""
|
||||||
CRLF
|
CRLF
|
||||||
?CND66: MOVE FLOYD,HERE
|
?CND78: MOVE FLOYD,HERE
|
||||||
?CND61: ZERO? LIT /FALSE
|
?CND73: ZERO? LIT /?CND96
|
||||||
CRLF
|
CRLF
|
||||||
CALL V-LOOK
|
CALL V-LOOK
|
||||||
|
?CND96: CALL STOP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
.FUNCT I-HUNGER-WARNINGS
|
.FUNCT I-HUNGER-WARNINGS
|
||||||
GRTR? PLATO-ATTACK-COUNTER,0 \?CND1
|
ZERO? STUNNED /?CND1
|
||||||
IN? PLATO,HERE \?CND1
|
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,2
|
CALL QUEUE,I-HUNGER-WARNINGS,2
|
||||||
RFALSE
|
RFALSE
|
||||||
?CND1: INC 'HUNGER-LEVEL
|
?CND1: INC 'HUNGER-LEVEL
|
||||||
PRINTI " "
|
PRINTI " "
|
||||||
EQUAL? HUNGER-LEVEL,1 \?CCL7
|
EQUAL? HUNGER-LEVEL,1 \?CCL5
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,450
|
CALL QUEUE,I-HUNGER-WARNINGS,450
|
||||||
PRINTR "A growl from your stomach warns that you're getting pretty hungry and thirsty."
|
PRINTI "A growl from your stomach warns that you're getting pretty hungry and thirsty."
|
||||||
?CCL7: EQUAL? HUNGER-LEVEL,2 \?CCL9
|
CRLF
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL5: EQUAL? HUNGER-LEVEL,2 \?CCL7
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,300
|
CALL QUEUE,I-HUNGER-WARNINGS,300
|
||||||
PRINTR "You're now really ravenous and your lips are quite parched."
|
PRINTI "You're now really ravenous and your lips are quite parched."
|
||||||
?CCL9: EQUAL? HUNGER-LEVEL,3 \?CCL11
|
CRLF
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL7: EQUAL? HUNGER-LEVEL,3 \?CCL9
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,150
|
CALL QUEUE,I-HUNGER-WARNINGS,150
|
||||||
PRINTR "You're starting to feel faint from lack of food and liquid."
|
PRINTI "You're starting to feel faint from lack of food and liquid."
|
||||||
?CCL11: EQUAL? HUNGER-LEVEL,4 \?CCL13
|
CRLF
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL9: EQUAL? HUNGER-LEVEL,4 \?CCL11
|
||||||
CALL QUEUE,I-HUNGER-WARNINGS,150
|
CALL QUEUE,I-HUNGER-WARNINGS,150
|
||||||
PRINTR "If you don't eat or drink something in a few millichrons, you'll probably pass out."
|
PRINTI "If you don't eat or drink something in a few millichrons, you'll probably pass out."
|
||||||
?CCL13: EQUAL? HUNGER-LEVEL,5 \FALSE
|
CRLF
|
||||||
CALL JIGS-UP,STR?107
|
JUMP ?CND3
|
||||||
|
?CCL11: EQUAL? HUNGER-LEVEL,5 \?CND3
|
||||||
|
CALL JIGS-UP,STR?110
|
||||||
|
?CND3: CALL STOP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
@ -890,6 +968,7 @@ FREZONE (tm) explosive available."""
|
||||||
ZERO? STACK /?CND15
|
ZERO? STACK /?CND15
|
||||||
PRINTI " As the heat wave hits the explosive, it "
|
PRINTI " As the heat wave hits the explosive, it "
|
||||||
PRINT SUBLIMES-INTO-FREZONE
|
PRINT SUBLIMES-INTO-FREZONE
|
||||||
|
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
||||||
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
||||||
?CND15: IN? OSTRICH,HERE \?CCL19
|
?CND15: IN? OSTRICH,HERE \?CCL19
|
||||||
FSET? OSTRICH,TOUCHBIT \?CCL19
|
FSET? OSTRICH,TOUCHBIT \?CCL19
|
||||||
|
@ -906,52 +985,6 @@ FREZONE (tm) explosive available."""
|
||||||
PRINTR "It's doubtful that you could even make a dent in the welder."
|
PRINTR "It's doubtful that you could even make a dent in the welder."
|
||||||
|
|
||||||
|
|
||||||
.FUNCT I-WELDER
|
|
||||||
IN? WELDER,HERE \?CCL3
|
|
||||||
PRINTI " "
|
|
||||||
INC 'WELDER-COUNTER
|
|
||||||
ZERO? LIT \?CCL6
|
|
||||||
REMOVE WELDER
|
|
||||||
SET 'WELDER-COUNTER,0
|
|
||||||
PRINTC 89
|
|
||||||
PRINT HEAR-WELDER-LEAVE
|
|
||||||
RTRUE
|
|
||||||
?CCL6: EQUAL? WELDER-COUNTER,2 \?CCL8
|
|
||||||
PRINTI "The welder moves closer. "
|
|
||||||
JUMP ?CND4
|
|
||||||
?CCL8: EQUAL? WELDER-COUNTER,3 /?CND4
|
|
||||||
CALL JIGS-UP,STR?108
|
|
||||||
?CND4: CALL PERFORM,V?EXAMINE,WELDER
|
|
||||||
RSTACK
|
|
||||||
?CCL3: GRTR? WELDER-COUNTER,0 \?CCL11
|
|
||||||
REMOVE WELDER
|
|
||||||
SET 'WELDER-COUNTER,0
|
|
||||||
PRINTI " Nearby, y"
|
|
||||||
PRINT HEAR-WELDER-LEAVE
|
|
||||||
RTRUE
|
|
||||||
?CCL11: FSET? HERE,NWELDERBIT /FALSE
|
|
||||||
IN? PROTAGONIST,BED /FALSE
|
|
||||||
ZERO? LIT /FALSE
|
|
||||||
RANDOM 100
|
|
||||||
LESS? NUMBER-OF-WELDERS,STACK /FALSE
|
|
||||||
GRTR? PLATO-ATTACK-COUNTER,0 \?CCL20
|
|
||||||
IN? PLATO,HERE /FALSE
|
|
||||||
?CCL20: EQUAL? HERE,SPACETRUCK \?CND18
|
|
||||||
FSET? SPACETRUCK-HATCH,OPENBIT \FALSE
|
|
||||||
?CND18: MOVE WELDER,HERE
|
|
||||||
INC 'WELDER-COUNTER
|
|
||||||
RANDOM NUMBER-OF-WELDERS >WELDER-TABLE-POINTER
|
|
||||||
PRINTI " You spot a "
|
|
||||||
PRINTD WELDER
|
|
||||||
PRINTI " approaching. "
|
|
||||||
FSET? WELDER,TOUCHBIT /?CND26
|
|
||||||
FSET WELDER,TOUCHBIT
|
|
||||||
CALL PERFORM,V?WHAT,WELDER
|
|
||||||
?CND26: CALL PERFORM,V?EXAMINE,WELDER
|
|
||||||
CALL STOP
|
|
||||||
RSTACK
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT TOUCHING?,THING
|
.FUNCT TOUCHING?,THING
|
||||||
EQUAL? PRSO,THING \?CCL3
|
EQUAL? PRSO,THING \?CCL3
|
||||||
EQUAL? PRSA,V?TAKE,V?TOUCH,V?SHAKE /TRUE
|
EQUAL? PRSA,V?TAKE,V?TOUCH,V?SHAKE /TRUE
|
||||||
|
@ -976,14 +1009,18 @@ FREZONE (tm) explosive available."""
|
||||||
SET 'P-WON,FALSE-VALUE
|
SET 'P-WON,FALSE-VALUE
|
||||||
PRINT YOU-CANT
|
PRINT YOU-CANT
|
||||||
PRINTI "see"
|
PRINTI "see"
|
||||||
CALL NAME?,OBJ
|
EQUAL? PRSO,OBJ \?CCL5
|
||||||
|
GET P-NAMW,0
|
||||||
|
JUMP ?CND3
|
||||||
|
?CCL5: GET P-NAMW,1
|
||||||
|
?CND3: CALL NAME?,STACK
|
||||||
ZERO? STACK \?CND1
|
ZERO? STACK \?CND1
|
||||||
PRINTI " any"
|
PRINTI " any"
|
||||||
?CND1: EQUAL? OBJ,PRSI \?CCL5
|
?CND1: EQUAL? OBJ,PRSI \?CCL8
|
||||||
CALL PRSI-PRINT
|
CALL PRSI-PRINT
|
||||||
JUMP ?CND3
|
JUMP ?CND6
|
||||||
?CCL5: CALL PRSO-PRINT
|
?CCL8: CALL PRSO-PRINT
|
||||||
?CND3: PRINTI " here."
|
?CND6: PRINTI " here."
|
||||||
CRLF
|
CRLF
|
||||||
CALL STOP
|
CALL STOP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
@ -1007,7 +1044,7 @@ FREZONE (tm) explosive available."""
|
||||||
EQUAL? OBJ,TIMER,DETONATOR \?CCL3
|
EQUAL? OBJ,TIMER,DETONATOR \?CCL3
|
||||||
SET 'TIMER-CONNECTED,FALSE-VALUE
|
SET 'TIMER-CONNECTED,FALSE-VALUE
|
||||||
SET 'ALSO,TRUE-VALUE
|
SET 'ALSO,TRUE-VALUE
|
||||||
CALL VISIBLE?,DETONATOR
|
CALL VISIBLE?,TIMER
|
||||||
ZERO? STACK /?CND1
|
ZERO? STACK /?CND1
|
||||||
PRINTI " (The timer is"
|
PRINTI " (The timer is"
|
||||||
PRINT NO-LONGER-ATTACHED
|
PRINT NO-LONGER-ATTACHED
|
||||||
|
@ -1015,13 +1052,16 @@ FREZONE (tm) explosive available."""
|
||||||
?CCL3: ZERO? EXPLOSIVE-CONNECTED /?CND1
|
?CCL3: ZERO? EXPLOSIVE-CONNECTED /?CND1
|
||||||
EQUAL? OBJ,EXPLOSIVE,DETONATOR \?CND1
|
EQUAL? OBJ,EXPLOSIVE,DETONATOR \?CND1
|
||||||
SET 'EXPLOSIVE-CONNECTED,FALSE-VALUE
|
SET 'EXPLOSIVE-CONNECTED,FALSE-VALUE
|
||||||
CALL VISIBLE?,DETONATOR
|
CALL VISIBLE?,EXPLOSIVE
|
||||||
ZERO? STACK /?CND1
|
ZERO? STACK /?CND1
|
||||||
PRINTI " (The explosive is"
|
PRINTI " (The explosive is"
|
||||||
ZERO? ALSO /?CND13
|
ZERO? ALSO /?CND13
|
||||||
PRINTI " also"
|
PRINTI " also"
|
||||||
?CND13: PRINT NO-LONGER-ATTACHED
|
?CND13: PRINT NO-LONGER-ATTACHED
|
||||||
?CND1: FSET OBJ,TOUCHBIT
|
?CND1: IN? EXPLOSIVE,THERMOS \?CND15
|
||||||
|
FSET? THERMOS,OPENBIT /?CND15
|
||||||
|
SET 'THERMOS-FILLED-WITH-GAS,TRUE-VALUE
|
||||||
|
?CND15: FSET OBJ,TOUCHBIT
|
||||||
FCLEAR OBJ,TRYTAKEBIT
|
FCLEAR OBJ,TRYTAKEBIT
|
||||||
REMOVE OBJ
|
REMOVE OBJ
|
||||||
RTRUE
|
RTRUE
|
||||||
|
@ -1078,6 +1118,7 @@ FREZONE (tm) explosive available."""
|
||||||
EQUAL? PRSO,ROBOT-PICKED /?CND1
|
EQUAL? PRSO,ROBOT-PICKED /?CND1
|
||||||
PRINTI " from outside the bin"
|
PRINTI " from outside the bin"
|
||||||
?CND1: PRINT PERIOD-CR
|
?CND1: PRINT PERIOD-CR
|
||||||
|
ZERO? P-MULT \TRUE
|
||||||
CALL STOP
|
CALL STOP
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
@ -1089,8 +1130,8 @@ FREZONE (tm) explosive available."""
|
||||||
CALL TPRINT,OBJ
|
CALL TPRINT,OBJ
|
||||||
?CND1: PRINTI " first."
|
?CND1: PRINTI " first."
|
||||||
CRLF
|
CRLF
|
||||||
CALL STOP
|
ZERO? P-MULT \TRUE
|
||||||
RSTACK
|
RETURN 8
|
||||||
|
|
||||||
|
|
||||||
.FUNCT DOESNT-FIT,STRING
|
.FUNCT DOESNT-FIT,STRING
|
||||||
|
@ -1165,4 +1206,13 @@ FREZONE (tm) explosive available."""
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT MESS,STRING
|
||||||
|
PRINTI "You create a "
|
||||||
|
PRINT STRING
|
||||||
|
PRINTI "ish mess. In the wink of an eye, an army of common Cassiopeian cockroaches swarms out of the ""woodwork,"" devours the "
|
||||||
|
PRINT STRING
|
||||||
|
PRINTI ", and return to their hidden recesses. You spend a moment pondering the competence of the station's Extermination Officer"
|
||||||
|
RTRUE
|
||||||
|
|
||||||
.ENDI
|
.ENDI
|
||||||
|
|
234
globals.zil
234
globals.zil
|
@ -77,14 +77,20 @@ anything you didn't see before." CR>)
|
||||||
(IN GLOBAL-OBJECTS)
|
(IN GLOBAL-OBJECTS)
|
||||||
(DESC "number")
|
(DESC "number")
|
||||||
(SYNONYM NUMBER ONE TWO THREE)
|
(SYNONYM NUMBER ONE TWO THREE)
|
||||||
|
(ADJECTIVE BIN) ;"for LOOK AT BIN THREE, etc. in Robot Pool"
|
||||||
(ACTION INTNUM-F)>
|
(ACTION INTNUM-F)>
|
||||||
|
|
||||||
<ROUTINE INTNUM-F ()
|
<ROUTINE INTNUM-F ()
|
||||||
<COND (<AND <OR <NOUN-USED ,W?ONE ,INTNUM>
|
<COND (<ADJ-USED ,A?BIN ,INTNUM>
|
||||||
<NOUN-USED ,W?TWO ,INTNUM>
|
<COND (<NOT <EQUAL? ,HERE ,ROBOT-POOL>>
|
||||||
<NOUN-USED ,W?THREE ,INTNUM>>
|
<TELL ,YOU-CANT "see any bin here!]" CR>)
|
||||||
|
(<G? ,P-NUMBER 3>
|
||||||
|
<TELL "There are only three bins!" CR>)
|
||||||
|
(T
|
||||||
|
<TELL ,REFER-TO-BIN>)>)
|
||||||
|
(<AND <EQUAL? <GET ,P-NAMW 0> ,W?ONE ,W?TWO ,W?THREE>
|
||||||
<GLOBAL-IN? ,KEYPAD ,HERE>
|
<GLOBAL-IN? ,KEYPAD ,HERE>
|
||||||
<VERB? PUSH TYPE>>
|
<VERB? PUSH TYPE>> ;"TYPE ONE for example"
|
||||||
<TELL
|
<TELL
|
||||||
"[Use numerals: for example, TYPE 5 rather than TYPE FIVE.]" CR>)
|
"[Use numerals: for example, TYPE 5 rather than TYPE FIVE.]" CR>)
|
||||||
(<AND <VERB? EXAMINE SHOOT ON OFF KILL MUNG>
|
(<AND <VERB? EXAMINE SHOOT ON OFF KILL MUNG>
|
||||||
|
@ -92,9 +98,10 @@ anything you didn't see before." CR>)
|
||||||
,P-NUMBER>
|
,P-NUMBER>
|
||||||
<IN? ,WELDER ,HERE>>
|
<IN? ,WELDER ,HERE>>
|
||||||
<COND (<PRSO? ,INTNUM>
|
<COND (<PRSO? ,INTNUM>
|
||||||
<PERFORM-PRSA ,WELDER ,PRSI>)
|
<PERFORM ,PRSA ,WELDER ,PRSI>)
|
||||||
(T
|
(T
|
||||||
<PERFORM-PRSA ,PRSO ,WELDER>)>)
|
<PERFORM ,PRSA ,PRSO ,WELDER>)>
|
||||||
|
<RTRUE>)
|
||||||
(<OR <AND <VERB? ENTER>
|
(<OR <AND <VERB? ENTER>
|
||||||
<EQUAL? ,P-PRSA-WORD ,W?ENTER>
|
<EQUAL? ,P-PRSA-WORD ,W?ENTER>
|
||||||
<GLOBAL-IN? ,KEYPAD ,HERE>>
|
<GLOBAL-IN? ,KEYPAD ,HERE>>
|
||||||
|
@ -108,7 +115,7 @@ anything you didn't see before." CR>)
|
||||||
<COND (<EQUAL? ,P-NUMBER ,DIAL-SETTING>
|
<COND (<EQUAL? ,P-NUMBER ,DIAL-SETTING>
|
||||||
<TELL ,SENILITY-STRIKES>)
|
<TELL ,SENILITY-STRIKES>)
|
||||||
(<G? ,P-NUMBER 8000>
|
(<G? ,P-NUMBER 8000>
|
||||||
<TELL "The dial only goes up to 8000." CR>)
|
<TELL "The dial goes up to only 8000." CR>)
|
||||||
(T
|
(T
|
||||||
<SETG DIAL-SETTING ,P-NUMBER>
|
<SETG DIAL-SETTING ,P-NUMBER>
|
||||||
<TELL "\"Click.\"" CR>)>)
|
<TELL "\"Click.\"" CR>)>)
|
||||||
|
@ -217,10 +224,10 @@ anything you didn't see before." CR>)
|
||||||
then P-MOBY-FOUND is it. You can treat the 0 and >1 cases alike or differently.
|
then P-MOBY-FOUND is it. You can treat the 0 and >1 cases alike or differently.
|
||||||
Always return RFALSE (not handled) if you have resolved the problem."
|
Always return RFALSE (not handled) if you have resolved the problem."
|
||||||
<SET M-F <MOBY-FIND .TBL>>
|
<SET M-F <MOBY-FIND .TBL>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[Found " N .M-F " obj]" CR>)>
|
<TELL "[Found " N .M-F " obj]" CR>)>
|
||||||
<COND (<EQUAL? 1 .M-F>
|
<COND (<EQUAL? 1 .M-F>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[Namely: " D ,P-MOBY-FOUND "]" CR>)>
|
<TELL "[Namely: " D ,P-MOBY-FOUND "]" CR>)>
|
||||||
<COND (.PRSO?
|
<COND (.PRSO?
|
||||||
<SETG PRSO ,P-MOBY-FOUND>
|
<SETG PRSO ,P-MOBY-FOUND>
|
||||||
|
@ -233,7 +240,7 @@ Always return RFALSE (not handled) if you have resolved the problem."
|
||||||
;"Protocol: returns .OBJ if that's the one to use
|
;"Protocol: returns .OBJ if that's the one to use
|
||||||
,NOT-HERE-OBJECT if case was handled and msg TELLed
|
,NOT-HERE-OBJECT if case was handled and msg TELLed
|
||||||
<> if WHICH-PRINT should be called"
|
<> if WHICH-PRINT should be called"
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[Generic: " D .OBJ "]" CR>)>
|
<TELL "[Generic: " D .OBJ "]" CR>)>
|
||||||
<COND (<EQUAL? .OBJ ,NOT-HERE-OBJECT>
|
<COND (<EQUAL? .OBJ ,NOT-HERE-OBJECT>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
|
@ -267,10 +274,22 @@ Always return RFALSE (not handled) if you have resolved the problem."
|
||||||
|
|
||||||
<ROUTINE GROUND-F ()
|
<ROUTINE GROUND-F ()
|
||||||
<COND (<VERB? CLIMB-ON ENTER>
|
<COND (<VERB? CLIMB-ON ENTER>
|
||||||
<SETG C-ELAPSED 31>
|
<COND (,STUNNED
|
||||||
<TELL "After a brief squat on the floor, you stand again." CR>)
|
<TELL ,LOOK-AROUND>)
|
||||||
|
(T
|
||||||
|
<SETG C-ELAPSED 31>
|
||||||
|
<TELL
|
||||||
|
"After a brief squat on the floor, you stand again." CR>)>)
|
||||||
|
(<VERB? CLEAN>
|
||||||
|
<SETG AWAITING-REPLY 1>
|
||||||
|
<QUEUE I-REPLY <+ ,C-ELAPSED 2>>
|
||||||
|
<TELL "Do you also do windows?" CR>)
|
||||||
(<VERB? LOOK-UNDER>
|
(<VERB? LOOK-UNDER>
|
||||||
<IMPOSSIBLES>)
|
<IMPOSSIBLES>)
|
||||||
|
(<AND <VERB? OPEN>
|
||||||
|
<EQUAL? ,HERE ,BOTTOM-OF-AIR-SHAFT>>
|
||||||
|
<PERFORM ,V?OPEN ,GRATING>
|
||||||
|
<RTRUE>)
|
||||||
(<VERB? LEAVE>
|
(<VERB? LEAVE>
|
||||||
<DO-WALK ,P?UP>)>>
|
<DO-WALK ,P?UP>)>>
|
||||||
|
|
||||||
|
@ -295,11 +314,18 @@ Always return RFALSE (not handled) if you have resolved the problem."
|
||||||
<ROUTINE CEILING-F ()
|
<ROUTINE CEILING-F ()
|
||||||
<COND (<AND <VERB? EXAMINE SEARCH>
|
<COND (<AND <VERB? EXAMINE SEARCH>
|
||||||
<EQUAL? ,HERE ,PET-STORE>>
|
<EQUAL? ,HERE ,PET-STORE>>
|
||||||
<MOVE ,PANEL ,HERE>
|
<COND (<IN? ,PANEL ,HERE>
|
||||||
<THIS-IS-IT ,PANEL>
|
<TELL
|
||||||
<TELL
|
"There's a panel mounted in the ceiling. ">
|
||||||
"As you look carefully, you notice something that a casual inspection of
|
<PERFORM ,V?EXAMINE ,PANEL>
|
||||||
the Pet Store would never have uncovered: a panel mounted in the ceiling." CR>)
|
<RTRUE>)
|
||||||
|
;"if panel has no LOC, it means that you blew it up"
|
||||||
|
(<IN? ,PANEL ,LOCAL-GLOBALS>
|
||||||
|
<MOVE ,PANEL ,HERE>
|
||||||
|
<THIS-IS-IT ,PANEL>
|
||||||
|
<TELL
|
||||||
|
"As you look carefully, you notice something that a casual inspection of the
|
||||||
|
Pet Store would never have uncovered: a panel mounted in the ceiling." CR>)>)
|
||||||
(<AND <VERB? EXAMINE>
|
(<AND <VERB? EXAMINE>
|
||||||
<EQUAL? ,HERE ,DOME>>
|
<EQUAL? ,HERE ,DOME>>
|
||||||
<TELL ,DOME-DESC CR>)
|
<TELL ,DOME-DESC CR>)
|
||||||
|
@ -338,7 +364,7 @@ the Pet Store would never have uncovered: a panel mounted in the ceiling." CR>)
|
||||||
<COND (<NOT ,LIT>
|
<COND (<NOT ,LIT>
|
||||||
<TELL ,TOO-DARK CR>)
|
<TELL ,TOO-DARK CR>)
|
||||||
(<AND <EQUAL? ,HERE ,GREASY-STRAW>
|
(<AND <EQUAL? ,HERE ,GREASY-STRAW>
|
||||||
<IN? ,NECTAR ,LOCAL-GLOBALS>>
|
<NOT <FSET? ,NECTAR ,TOUCHBIT>>>
|
||||||
<MOVE ,NECTAR ,HERE>
|
<MOVE ,NECTAR ,HERE>
|
||||||
<THIS-IS-IT ,NECTAR>
|
<THIS-IS-IT ,NECTAR>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -394,10 +420,9 @@ the Pet Store would never have uncovered: a panel mounted in the ceiling." CR>)
|
||||||
" You are approaching the station from slightly above it (on the galactic
|
" You are approaching the station from slightly above it (on the galactic
|
||||||
plane), thus offering a good view of the station's layout. In the center is
|
plane), thus offering a good view of the station's layout. In the center is
|
||||||
the large, spherical Command Module. Jutting \"north\" from it is a smaller
|
the large, spherical Command Module. Jutting \"north\" from it is a smaller
|
||||||
Sub-Module. Joining the Command Module, at its two other connection points,
|
Sub-Module. Joining the Command Module, at its two other connection points,"
|
||||||
is a tangle of tubes and space bubbles and derelict rockets. These form a
|
,TANGLE-OF-TUBES " These form a \"village,\" the sort of seedy, unauthorized
|
||||||
\"village,\" the sort of seedy, unauthorized village that frequently collects
|
village that frequently collects around a space station." CR>)
|
||||||
around a space station." CR>)
|
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"You see nothing but the majestic sweep of the galaxy." CR>)>)
|
"You see nothing but the majestic sweep of the galaxy." CR>)>)
|
||||||
|
@ -410,7 +435,7 @@ around a space station." CR>)
|
||||||
(IN LOCAL-GLOBALS)
|
(IN LOCAL-GLOBALS)
|
||||||
(DESC "sign")
|
(DESC "sign")
|
||||||
(SYNONYM SIGN)
|
(SYNONYM SIGN)
|
||||||
(ADJECTIVE EYE-CATCHING)
|
(ADJECTIVE LARGE RED EYE-CATCHING)
|
||||||
(FLAGS READBIT)
|
(FLAGS READBIT)
|
||||||
(ACTION SIGN-F)>
|
(ACTION SIGN-F)>
|
||||||
|
|
||||||
|
@ -569,6 +594,10 @@ of multi-part forms, it's far outside your area of expertise." CR>)>)
|
||||||
<JIGS-UP
|
<JIGS-UP
|
||||||
"Done. You might remain alive long enough to type EXAMINE MY STUMP.
|
"Done. You might remain alive long enough to type EXAMINE MY STUMP.
|
||||||
Oops, I guess not.">)
|
Oops, I guess not.">)
|
||||||
|
(<VERB? DRILL>
|
||||||
|
<TELL
|
||||||
|
"Hmmm. Are you trying for a hole in " 'PRSO
|
||||||
|
" to match the hole in your head?" CR>)
|
||||||
(<AND <VERB? TAKE-WITH>
|
(<AND <VERB? TAKE-WITH>
|
||||||
<PRSI? ,HANDS>>
|
<PRSI? ,HANDS>>
|
||||||
<PERFORM ,V?TAKE ,PRSO>
|
<PERFORM ,V?TAKE ,PRSO>
|
||||||
|
@ -586,7 +615,9 @@ Oops, I guess not.">)
|
||||||
<COND (<AND <VERB? PUT-ON RUN-OVER>
|
<COND (<AND <VERB? PUT-ON RUN-OVER>
|
||||||
<PRSO? ,TONGUE>>
|
<PRSO? ,TONGUE>>
|
||||||
<PERFORM ,V?TASTE ,PRSI>
|
<PERFORM ,V?TASTE ,PRSI>
|
||||||
<RTRUE>)>>
|
<RTRUE>)
|
||||||
|
(<VERB? DRILL>
|
||||||
|
<HANDS-F>)>>
|
||||||
|
|
||||||
<OBJECT PROTAGONIST
|
<OBJECT PROTAGONIST
|
||||||
(IN DECK-TWELVE)
|
(IN DECK-TWELVE)
|
||||||
|
@ -737,7 +768,7 @@ Sub-Module connector you might have expected." CR>)>)
|
||||||
<IN? ,FLOYD ,COPILOT-SEAT>>
|
<IN? ,FLOYD ,COPILOT-SEAT>>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<AND <IN? ,PROTAGONIST ,COPILOT-SEAT>
|
(<AND <IN? ,PROTAGONIST ,COPILOT-SEAT>
|
||||||
<IN? ,FLOYD ,COPILOT-SEAT>>
|
<IN? ,FLOYD ,PILOT-SEAT>>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(T
|
(T
|
||||||
<RTRUE>)>>
|
<RTRUE>)>>
|
||||||
|
@ -775,20 +806,38 @@ Sub-Module connector you might have expected." CR>)>)
|
||||||
(ACTION FURNISHING-F)>
|
(ACTION FURNISHING-F)>
|
||||||
|
|
||||||
<ROUTINE FURNISHING-F ()
|
<ROUTINE FURNISHING-F ()
|
||||||
<COND (<VERB? OPEN SEARCH LOOK-INSIDE EXAMINE>
|
<COND (<VERB? ENTER OPEN SEARCH LOOK-INSIDE EXAMINE>
|
||||||
<TELL
|
<TELL
|
||||||
"You merely find a few personal items of little interest." CR>)
|
"You merely find a few personal items of little interest." CR>)
|
||||||
(<VERB? PUT PUT-ON>
|
(<VERB? PUT PUT-ON>
|
||||||
<TELL
|
<TELL
|
||||||
"The " D ,PRSI " is such a mess that you can't find a good spot
|
"The " D ,PRSI " is such a mess that you can't find a good spot
|
||||||
to put" TR ,PRSO>)>>
|
to put" TR ,PRSO>)>>
|
||||||
|
|
||||||
|
<OBJECT VILLAGE
|
||||||
|
(IN LOCAL-GLOBALS)
|
||||||
|
(DESC "village")
|
||||||
|
(SYNONYM VILLAGE)
|
||||||
|
(ADJECTIVE SEEDY NONREGULATION UNAUTHORIZED ILLEGAL SPACE)
|
||||||
|
(ACTION VILLAGE-F)>
|
||||||
|
|
||||||
|
<ROUTINE VILLAGE-F ()
|
||||||
|
<COND (<AND <EQUAL? ,HERE ,SPACETRUCK>
|
||||||
|
<OR <NOT <EQUAL? ,SPACETRUCK-COUNTER 4>>
|
||||||
|
<NOT <EQUAL? ,COURSE-PICKED ,RIGHT-COURSE>>>>
|
||||||
|
<CANT-SEE ,VILLAGE>)
|
||||||
|
(<VERB? ENTER WALK-TO EXIT LEAVE DISEMBARK>
|
||||||
|
<V-WALK-AROUND>)
|
||||||
|
(<AND <VERB? EXAMINE>
|
||||||
|
<EQUAL? ,HERE ,SPACETRUCK>>
|
||||||
|
<TELL "The village" ,TANGLE-OF-TUBES CR>)>>
|
||||||
|
|
||||||
;"sleeping"
|
;"sleeping"
|
||||||
|
|
||||||
<OBJECT BED
|
<OBJECT BED
|
||||||
(IN LOCAL-GLOBALS)
|
(IN LOCAL-GLOBALS)
|
||||||
(DESC "bed")
|
(DESC "bed")
|
||||||
(SYNONYM BED)
|
(SYNONYM BED BEDS)
|
||||||
(FLAGS VEHBIT SEARCHBIT CONTBIT OPENBIT)
|
(FLAGS VEHBIT SEARCHBIT CONTBIT OPENBIT)
|
||||||
(ACTION BED-F)>
|
(ACTION BED-F)>
|
||||||
|
|
||||||
|
@ -797,7 +846,9 @@ to put" TR ,PRSO>)>>
|
||||||
<NOT <GLOBAL-IN? ,BED ,HERE>>>
|
<NOT <GLOBAL-IN? ,BED ,HERE>>>
|
||||||
<TELL "There's no bed here!" CR>)
|
<TELL "There's no bed here!" CR>)
|
||||||
(<VERB? ENTER WALK-TO>
|
(<VERB? ENTER WALK-TO>
|
||||||
<COND (<G? ,SLEEPY-LEVEL 0>
|
<COND (,STUNNED
|
||||||
|
<YOURE-STUNNED>)
|
||||||
|
(<G? ,SLEEPY-LEVEL 0>
|
||||||
<MOVE ,PROTAGONIST ,BED>
|
<MOVE ,PROTAGONIST ,BED>
|
||||||
<QUEUE I-FALL-ASLEEP 22>
|
<QUEUE I-FALL-ASLEEP 22>
|
||||||
<DEQUEUE I-SLEEP-WARNINGS>
|
<DEQUEUE I-SLEEP-WARNINGS>
|
||||||
|
@ -848,8 +899,7 @@ asleep in short order." CR>)
|
||||||
<ROUTINE I-SLEEP-WARNINGS ()
|
<ROUTINE I-SLEEP-WARNINGS ()
|
||||||
<COND (<OR <AND <IN? ,WELDER ,HERE>
|
<COND (<OR <AND <IN? ,WELDER ,HERE>
|
||||||
<G? ,SLEEPY-LEVEL 3>>
|
<G? ,SLEEPY-LEVEL 3>>
|
||||||
<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
,STUNNED>
|
||||||
<IN? ,PLATO ,HERE>>>
|
|
||||||
<QUEUE I-HUNGER-WARNINGS 2>
|
<QUEUE I-HUNGER-WARNINGS 2>
|
||||||
<RFALSE>)>
|
<RFALSE>)>
|
||||||
<SETG SLEEPY-LEVEL <+ ,SLEEPY-LEVEL 1>>
|
<SETG SLEEPY-LEVEL <+ ,SLEEPY-LEVEL 1>>
|
||||||
|
@ -890,7 +940,9 @@ a nice safe place to sleep." CR>)
|
||||||
<NOT <FSET? ,HERE ,WEIGHTLESSBIT>>>
|
<NOT <FSET? ,HERE ,WEIGHTLESSBIT>>>
|
||||||
<TELL "to the deck and fall ">)>
|
<TELL "to the deck and fall ">)>
|
||||||
<TELL "into a deep but fitful sleep.">)>
|
<TELL "into a deep but fitful sleep.">)>
|
||||||
<WAKING-UP>)>>
|
<WAKING-UP>)>
|
||||||
|
<COND (<NOT <IN? ,PROTAGONIST ,BED>>
|
||||||
|
<STOP>)>>
|
||||||
|
|
||||||
<ROUTINE I-FALL-ASLEEP ()
|
<ROUTINE I-FALL-ASLEEP ()
|
||||||
<COND (<IN? ,WELDER ,HERE>
|
<COND (<IN? ,WELDER ,HERE>
|
||||||
|
@ -929,7 +981,7 @@ the water. You try to scream, but cannot. You feel your life draining away"
|
||||||
|
|
||||||
"You wake up in a huge stadium, watching an important ceremony. It's a Stellar
|
"You wake up in a huge stadium, watching an important ceremony. It's a Stellar
|
||||||
Patrol promotion ceremony on Tremain! Suddenly your own name echoes over the
|
Patrol promotion ceremony on Tremain! Suddenly your own name echoes over the
|
||||||
PA system -- and down below you see YOURSELF walking up the steps to the stage!
|
P.A. system -- and down below you see YOURSELF walking up the steps to the stage!
|
||||||
The presiding admiral describes your heroism on Resida, mentioning that you
|
The presiding admiral describes your heroism on Resida, mentioning that you
|
||||||
were awarded the key to the planet, and then asks the ceremonial question,
|
were awarded the key to the planet, and then asks the ceremonial question,
|
||||||
\"Do you accept promotion to Lieutenant First Class?\" You try to yell \"No!\"
|
\"Do you accept promotion to Lieutenant First Class?\" You try to yell \"No!\"
|
||||||
|
@ -985,16 +1037,30 @@ Moral: don't screw up vital assignments like picking up " ,FORM-NAME>
|
||||||
<FSET? ,DOCKING-BAY-2 ,TOUCHBIT>
|
<FSET? ,DOCKING-BAY-2 ,TOUCHBIT>
|
||||||
<PROB <* ,DAY 40>>>
|
<PROB <* ,DAY 40>>>
|
||||||
<AND <ULTIMATELY-IN? ,OSTRICH-NIP>
|
<AND <ULTIMATELY-IN? ,OSTRICH-NIP>
|
||||||
<IN? ,OSTRICH ,HERE>>>
|
<IN? ,OSTRICH ,HERE>>
|
||||||
|
<IN? ,EXPLOSIVE ,DRILLED-HOLE>>
|
||||||
<JIGS-UP
|
<JIGS-UP
|
||||||
"A movement awakens you in the middle of the night! Through unfocused
|
"A movement awakens you in the middle of the night! Through unfocused
|
||||||
eyes you see a large machine rolling menacingly closer! A bright light
|
eyes you see a large machine rolling menacingly closer! A bright light
|
||||||
leaps from it, straight toward...">)
|
leaps from it, straight toward...">)
|
||||||
|
(<AND ,EXPLOSIVE-CONNECTED
|
||||||
|
,TIMER-CONNECTED
|
||||||
|
<IN? ,DIODE-M ,DETONATOR>
|
||||||
|
<G? ,TIMER-SETTING 0>>
|
||||||
|
<COND (<EQUAL? <META-LOC ,EXPLOSIVE> ,HERE>
|
||||||
|
<JIGS-UP "Snore...snore...KABOOM!">)
|
||||||
|
(T
|
||||||
|
<DESTROY-EXPLOSIVE-CONT>
|
||||||
|
<REMOVE ,TIMER>
|
||||||
|
<REMOVE ,EXPLOSIVE>
|
||||||
|
<REMOVE ,DETONATOR>)>)
|
||||||
(<PROB 60>
|
(<PROB 60>
|
||||||
<TELL "..." <PICK-ONE ,DREAMS> ,ELLIPSIS>)>
|
<TELL "..." <PICK-ONE ,DREAMS> ,ELLIPSIS>)>
|
||||||
<SETG DAY <+ ,DAY 1>>
|
<SETG DAY <+ ,DAY 1>>
|
||||||
<SETG ROBOT-EVILNESS <+ ,ROBOT-EVILNESS 1>>
|
<SETG ROBOT-EVILNESS <+ ,ROBOT-EVILNESS 1>>
|
||||||
<I-ROBOT-EVILNESS>
|
<I-ROBOT-EVILNESS>
|
||||||
|
<SETG TIMER-SETTING 0>
|
||||||
|
<DEQUEUE I-TIMER>
|
||||||
<SETG SLEEPY-LEVEL 0>
|
<SETG SLEEPY-LEVEL 0>
|
||||||
<SETG SUIT-PRESSED <>>
|
<SETG SUIT-PRESSED <>>
|
||||||
<SETG FLOYD-ANGUISHED <>>
|
<SETG FLOYD-ANGUISHED <>>
|
||||||
|
@ -1020,6 +1086,10 @@ leaps from it, straight toward...">)
|
||||||
<FCLEAR ,HEADLAMP ,ACTIVEBIT>
|
<FCLEAR ,HEADLAMP ,ACTIVEBIT>
|
||||||
<FCLEAR ,HEADLAMP ,ONBIT>
|
<FCLEAR ,HEADLAMP ,ONBIT>
|
||||||
<SETG HEADLAMP-COUNTER 0>)>
|
<SETG HEADLAMP-COUNTER 0>)>
|
||||||
|
<COND (<RUNNING? ,I-LOG-READER>
|
||||||
|
<REMOVE ,LOG-READER>
|
||||||
|
<DEQUEUE I-LOG-READER>
|
||||||
|
<FCLEAR ,COMMANDERS-OFFICE ,TOUCHBIT>)>
|
||||||
<COND (<G? ,SOUP-WARMTH 0>
|
<COND (<G? ,SOUP-WARMTH 0>
|
||||||
<COND (<FSET? ,THERMOS ,OPENBIT>
|
<COND (<FSET? ,THERMOS ,OPENBIT>
|
||||||
<SETG SOUP-WARMTH 0>)
|
<SETG SOUP-WARMTH 0>)
|
||||||
|
@ -1114,15 +1184,15 @@ friend,\" says Floyd with unbounded exuberance and a wide grin." CR>
|
||||||
<MOVE ,FLOYD ,HERE>)>
|
<MOVE ,FLOYD ,HERE>)>
|
||||||
<COND (,LIT
|
<COND (,LIT
|
||||||
<CRLF>
|
<CRLF>
|
||||||
<V-LOOK>)>>
|
<V-LOOK>)>
|
||||||
|
<STOP>>
|
||||||
|
|
||||||
;"thirst and hunger"
|
;"thirst and hunger"
|
||||||
|
|
||||||
<GLOBAL HUNGER-LEVEL 0>
|
<GLOBAL HUNGER-LEVEL 0>
|
||||||
|
|
||||||
<ROUTINE I-HUNGER-WARNINGS ()
|
<ROUTINE I-HUNGER-WARNINGS ()
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
|
||||||
<QUEUE I-HUNGER-WARNINGS 2>
|
<QUEUE I-HUNGER-WARNINGS 2>
|
||||||
<RFALSE>)>
|
<RFALSE>)>
|
||||||
<SETG HUNGER-LEVEL <+ ,HUNGER-LEVEL 1>>
|
<SETG HUNGER-LEVEL <+ ,HUNGER-LEVEL 1>>
|
||||||
|
@ -1146,7 +1216,8 @@ hungry and thirsty." CR>)
|
||||||
"If you don't eat or drink something in a few millichrons, you'll
|
"If you don't eat or drink something in a few millichrons, you'll
|
||||||
probably pass out." CR>)
|
probably pass out." CR>)
|
||||||
(<EQUAL? ,HUNGER-LEVEL 5>
|
(<EQUAL? ,HUNGER-LEVEL 5>
|
||||||
<JIGS-UP "You collapse from extreme thirst and hunger.">)>>
|
<JIGS-UP "You collapse from extreme thirst and hunger.">)>
|
||||||
|
<STOP>>
|
||||||
|
|
||||||
;"the welding menace"
|
;"the welding menace"
|
||||||
|
|
||||||
|
@ -1191,6 +1262,7 @@ vanishes! A wave of hot vapor pushes you backwards.">
|
||||||
<COND (<VISIBLE? ,EXPLOSIVE>
|
<COND (<VISIBLE? ,EXPLOSIVE>
|
||||||
<TELL
|
<TELL
|
||||||
" As the heat wave hits the explosive, it " ,SUBLIMES-INTO-FREZONE>
|
" As the heat wave hits the explosive, it " ,SUBLIMES-INTO-FREZONE>
|
||||||
|
<DEQUEUE I-EXPLOSIVE-MELT>
|
||||||
<REMOVE-CAREFULLY ,EXPLOSIVE>)>
|
<REMOVE-CAREFULLY ,EXPLOSIVE>)>
|
||||||
<COND (<AND <IN? ,OSTRICH ,HERE>
|
<COND (<AND <IN? ,OSTRICH ,HERE>
|
||||||
<FSET? ,OSTRICH ,TOUCHBIT>>
|
<FSET? ,OSTRICH ,TOUCHBIT>>
|
||||||
|
@ -1215,46 +1287,7 @@ vanishes! A wave of hot vapor pushes you backwards.">
|
||||||
|
|
||||||
<GLOBAL WELDER-COUNTER 0> ;"how close is the attacking welder to you?"
|
<GLOBAL WELDER-COUNTER 0> ;"how close is the attacking welder to you?"
|
||||||
|
|
||||||
<ROUTINE I-WELDER ()
|
;"routine I-WELDER moved to INTERRUPTS file"
|
||||||
<COND (<IN? ,WELDER ,HERE>
|
|
||||||
<TELL " ">
|
|
||||||
<SETG WELDER-COUNTER <+ ,WELDER-COUNTER 1>>
|
|
||||||
<COND (<NOT ,LIT>
|
|
||||||
<REMOVE ,WELDER>
|
|
||||||
<SETG WELDER-COUNTER 0>
|
|
||||||
<TELL "Y" ,HEAR-WELDER-LEAVE>
|
|
||||||
<RTRUE>)
|
|
||||||
(<EQUAL? ,WELDER-COUNTER 2>
|
|
||||||
<TELL "The welder moves closer. ">)
|
|
||||||
(<NOT <EQUAL? ,WELDER-COUNTER 3>>
|
|
||||||
<JIGS-UP
|
|
||||||
"A powerful arc of raw energy bridges the gap between two of the monster's
|
|
||||||
welding extensions. Unfortunately, you were pretty much right between the
|
|
||||||
same two extensions at that moment.">)>
|
|
||||||
<PERFORM ,V?EXAMINE ,WELDER>)
|
|
||||||
(<G? ,WELDER-COUNTER 0>
|
|
||||||
<REMOVE ,WELDER>
|
|
||||||
<SETG WELDER-COUNTER 0>
|
|
||||||
<TELL " Nearby, y" ,HEAR-WELDER-LEAVE>)
|
|
||||||
(<AND <NOT <FSET? ,HERE ,NWELDERBIT>>
|
|
||||||
<NOT <IN? ,PROTAGONIST ,BED>>
|
|
||||||
,LIT
|
|
||||||
<PROB ,NUMBER-OF-WELDERS>>
|
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
|
||||||
<IN? ,PLATO ,HERE>>
|
|
||||||
<RFALSE>)
|
|
||||||
(<AND <EQUAL? ,HERE ,SPACETRUCK>
|
|
||||||
<NOT <FSET? ,SPACETRUCK-HATCH ,OPENBIT>>>
|
|
||||||
<RFALSE>)>
|
|
||||||
<MOVE ,WELDER ,HERE>
|
|
||||||
<SETG WELDER-COUNTER <+ ,WELDER-COUNTER 1>>
|
|
||||||
<SETG WELDER-TABLE-POINTER <RANDOM ,NUMBER-OF-WELDERS>>
|
|
||||||
<TELL " You spot a " 'WELDER " approaching. ">
|
|
||||||
<COND (<NOT <FSET? ,WELDER ,TOUCHBIT>>
|
|
||||||
<FSET ,WELDER ,TOUCHBIT>
|
|
||||||
<PERFORM ,V?WHAT ,WELDER>)>
|
|
||||||
<PERFORM ,V?EXAMINE ,WELDER>
|
|
||||||
<STOP>)>>
|
|
||||||
|
|
||||||
;"utility routines and shared strings"
|
;"utility routines and shared strings"
|
||||||
|
|
||||||
|
@ -1283,7 +1316,10 @@ same two extensions at that moment.">)>
|
||||||
<ROUTINE CANT-SEE (OBJ)
|
<ROUTINE CANT-SEE (OBJ)
|
||||||
<SETG P-WON <>>
|
<SETG P-WON <>>
|
||||||
<TELL ,YOU-CANT "see">
|
<TELL ,YOU-CANT "see">
|
||||||
<COND (<NOT <NAME? .OBJ>>
|
<COND (<NOT <NAME? <COND (<PRSO? .OBJ>
|
||||||
|
<GET ,P-NAMW 0>)
|
||||||
|
(T
|
||||||
|
<GET ,P-NAMW 1>)>>>
|
||||||
<TELL " any">)>
|
<TELL " any">)>
|
||||||
<COND (<EQUAL? .OBJ ,PRSI>
|
<COND (<EQUAL? .OBJ ,PRSI>
|
||||||
<PRSI-PRINT>)
|
<PRSI-PRINT>)
|
||||||
|
@ -1303,16 +1339,19 @@ same two extensions at that moment.">)>
|
||||||
<EQUAL? .OBJ ,TIMER ,DETONATOR>>
|
<EQUAL? .OBJ ,TIMER ,DETONATOR>>
|
||||||
<SETG TIMER-CONNECTED <>>
|
<SETG TIMER-CONNECTED <>>
|
||||||
<SET ALSO T>
|
<SET ALSO T>
|
||||||
<COND (<VISIBLE? ,DETONATOR>
|
<COND (<VISIBLE? ,TIMER>
|
||||||
<TELL " (The timer is" ,NO-LONGER-ATTACHED>)>)
|
<TELL " (The timer is" ,NO-LONGER-ATTACHED>)>)
|
||||||
(<AND ,EXPLOSIVE-CONNECTED
|
(<AND ,EXPLOSIVE-CONNECTED
|
||||||
<EQUAL? .OBJ ,EXPLOSIVE ,DETONATOR>>
|
<EQUAL? .OBJ ,EXPLOSIVE ,DETONATOR>>
|
||||||
<SETG EXPLOSIVE-CONNECTED <>>
|
<SETG EXPLOSIVE-CONNECTED <>>
|
||||||
<COND (<VISIBLE? ,DETONATOR>
|
<COND (<VISIBLE? ,EXPLOSIVE>
|
||||||
<TELL " (The explosive is">
|
<TELL " (The explosive is">
|
||||||
<COND (.ALSO
|
<COND (.ALSO
|
||||||
<TELL " also">)>
|
<TELL " also">)>
|
||||||
<TELL ,NO-LONGER-ATTACHED>)>)>
|
<TELL ,NO-LONGER-ATTACHED>)>)>
|
||||||
|
<COND (<AND <IN? ,EXPLOSIVE ,THERMOS>
|
||||||
|
<NOT <FSET? ,THERMOS ,OPENBIT>>>
|
||||||
|
<SETG THERMOS-FILLED-WITH-GAS T>)>
|
||||||
<FSET .OBJ ,TOUCHBIT>
|
<FSET .OBJ ,TOUCHBIT>
|
||||||
<FCLEAR .OBJ ,TRYTAKEBIT>
|
<FCLEAR .OBJ ,TRYTAKEBIT>
|
||||||
<REMOVE .OBJ>>
|
<REMOVE .OBJ>>
|
||||||
|
@ -1358,14 +1397,20 @@ same two extensions at that moment.">)>
|
||||||
<NOT <PRSO? ,ROBOT-PICKED>>>
|
<NOT <PRSO? ,ROBOT-PICKED>>>
|
||||||
<TELL " from outside the bin">)>
|
<TELL " from outside the bin">)>
|
||||||
<TELL ,PERIOD-CR>
|
<TELL ,PERIOD-CR>
|
||||||
<STOP>>
|
<COND (,P-MULT
|
||||||
|
<RTRUE>)
|
||||||
|
(T
|
||||||
|
<STOP>)>>
|
||||||
|
|
||||||
<ROUTINE DO-FIRST (STRING "OPTIONAL" (OBJ <>))
|
<ROUTINE DO-FIRST (STRING "OPTIONAL" (OBJ <>))
|
||||||
<TELL ,YOULL-HAVE-TO .STRING>
|
<TELL ,YOULL-HAVE-TO .STRING>
|
||||||
<COND (.OBJ
|
<COND (.OBJ
|
||||||
<TPRINT .OBJ>)>
|
<TPRINT .OBJ>)>
|
||||||
<TELL " first." CR>
|
<TELL " first." CR>
|
||||||
<STOP>>
|
<COND (,P-MULT ;"for example, don't stop a TAKE ALL for worn objects"
|
||||||
|
<RTRUE>)
|
||||||
|
(T
|
||||||
|
<RFATAL>)>>
|
||||||
|
|
||||||
<ROUTINE DOESNT-FIT (STRING)
|
<ROUTINE DOESNT-FIT (STRING)
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1421,6 +1466,13 @@ same two extensions at that moment.">)>
|
||||||
<CRLF>)>
|
<CRLF>)>
|
||||||
<RTRUE>>
|
<RTRUE>>
|
||||||
|
|
||||||
|
<ROUTINE MESS (STRING)
|
||||||
|
<TELL
|
||||||
|
"You create a " .STRING "ish mess. In the wink of an eye, an army of common
|
||||||
|
Cassiopeian cockroaches swarms out of the \"woodwork,\" devours the "
|
||||||
|
.STRING ", and return to their hidden recesses. You spend a moment pondering
|
||||||
|
the competence of the station's Extermination Officer">>
|
||||||
|
|
||||||
;<ROUTINE UNIMPORTANT-THING-F ()
|
;<ROUTINE UNIMPORTANT-THING-F ()
|
||||||
<TELL "That's not important; leave it alone." CR>>
|
<TELL "That's not important; leave it alone." CR>>
|
||||||
|
|
||||||
|
@ -1555,3 +1607,21 @@ engine vents like steam from the nostrils of an angry bull.">
|
||||||
<GLOBAL LADDER-LEADS ", and a ladder leads both upward and downward.">
|
<GLOBAL LADDER-LEADS ", and a ladder leads both upward and downward.">
|
||||||
|
|
||||||
<GLOBAL TOO-LONG-TO-WAIT "That's too long to wait.|">
|
<GLOBAL TOO-LONG-TO-WAIT "That's too long to wait.|">
|
||||||
|
|
||||||
|
<GLOBAL CALLOUS-DISREGARD
|
||||||
|
". 2. A callous disregard for scientific accuracy on the part of the author">
|
||||||
|
|
||||||
|
<GLOBAL REFER-TO-BIN
|
||||||
|
"[Please refer to them as FIRST BIN, SECOND BIN, and THIRD BIN.]|">
|
||||||
|
|
||||||
|
<GLOBAL FLOYDS-HANGING-IN-AIR-COMMENT
|
||||||
|
" \"Boy, that looks like fun!\" says Floyd, peering up at you.
|
||||||
|
\"Can Floyd try it? Huh? Please?\"|">
|
||||||
|
|
||||||
|
<GLOBAL TANGLE-OF-TUBES
|
||||||
|
" is a tangle of tubes and space bubbles and derelict rockets.">
|
||||||
|
|
||||||
|
<GLOBAL WONT-BUDGE "It won't budge.|">
|
||||||
|
|
||||||
|
<GLOBAL FLOYD-SNIFFS
|
||||||
|
"Floyd sniffs, \"Please leave Floyd alone for a while.\"|">
|
529
interrupts.zap
Normal file
529
interrupts.zap
Normal file
|
@ -0,0 +1,529 @@
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-WELDER
|
||||||
|
IN? WELDER,HERE \?CCL3
|
||||||
|
PRINTI " "
|
||||||
|
INC 'WELDER-COUNTER
|
||||||
|
ZERO? LIT \?CCL6
|
||||||
|
REMOVE WELDER
|
||||||
|
SET 'WELDER-COUNTER,0
|
||||||
|
PRINTC 89
|
||||||
|
PRINT HEAR-WELDER-LEAVE
|
||||||
|
RTRUE
|
||||||
|
?CCL6: EQUAL? WELDER-COUNTER,2 \?CCL8
|
||||||
|
PRINTI "The welder moves closer. "
|
||||||
|
JUMP ?CND4
|
||||||
|
?CCL8: EQUAL? WELDER-COUNTER,3 /?CND4
|
||||||
|
CALL JIGS-UP,STR?8
|
||||||
|
?CND4: CALL PERFORM,V?EXAMINE,WELDER
|
||||||
|
RSTACK
|
||||||
|
?CCL3: GRTR? WELDER-COUNTER,0 \?CCL11
|
||||||
|
REMOVE WELDER
|
||||||
|
SET 'WELDER-COUNTER,0
|
||||||
|
PRINTI " Nearby, y"
|
||||||
|
PRINT HEAR-WELDER-LEAVE
|
||||||
|
RTRUE
|
||||||
|
?CCL11: FSET? HERE,NWELDERBIT /FALSE
|
||||||
|
IN? PROTAGONIST,BED /FALSE
|
||||||
|
ZERO? LIT /FALSE
|
||||||
|
RANDOM 100
|
||||||
|
LESS? NUMBER-OF-WELDERS,STACK /FALSE
|
||||||
|
ZERO? STUNNED \FALSE
|
||||||
|
EQUAL? HERE,SPACETRUCK \?CND18
|
||||||
|
FSET? SPACETRUCK-HATCH,OPENBIT \FALSE
|
||||||
|
?CND18: MOVE WELDER,HERE
|
||||||
|
INC 'WELDER-COUNTER
|
||||||
|
RANDOM NUMBER-OF-WELDERS >WELDER-TABLE-POINTER
|
||||||
|
PRINTI " You spot a "
|
||||||
|
PRINTD WELDER
|
||||||
|
PRINTI " approaching. "
|
||||||
|
FSET? WELDER,TOUCHBIT /?CND24
|
||||||
|
FSET WELDER,TOUCHBIT
|
||||||
|
CALL PERFORM,V?WHAT,WELDER
|
||||||
|
?CND24: CALL PERFORM,V?EXAMINE,WELDER
|
||||||
|
CALL STOP
|
||||||
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-HEADLAMP
|
||||||
|
FSET? HEADLAMP,ONBIT \?CCL3
|
||||||
|
DEC 'HEADLAMP-COUNTER
|
||||||
|
ZERO? HEADLAMP-COUNTER \?CND4
|
||||||
|
FCLEAR HEADLAMP,ACTIVEBIT
|
||||||
|
FCLEAR HEADLAMP,ONBIT
|
||||||
|
?CND4: CALL VISIBLE?,HEADLAMP
|
||||||
|
ZERO? STACK /FALSE
|
||||||
|
EQUAL? HEADLAMP-COUNTER,0,15,30 \FALSE
|
||||||
|
PRINTI " The light from the headlamp "
|
||||||
|
ZERO? HEADLAMP-COUNTER \?CCL13
|
||||||
|
PRINTI "flickers and dies!"
|
||||||
|
CRLF
|
||||||
|
CALL NOW-DARK?
|
||||||
|
RSTACK
|
||||||
|
?CCL13: EQUAL? HEADLAMP-COUNTER,5 \?CCL15
|
||||||
|
PRINTR "is almost out!"
|
||||||
|
?CCL15: PRINTR "seems somewhat dimmer."
|
||||||
|
?CCL3: CALL DEQUEUE,I-HEADLAMP
|
||||||
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-PLATINUM-DETECTOR,?TMP1
|
||||||
|
INC 'DETECTOR-COUNTER
|
||||||
|
CALL VISIBLE?,PLATINUM-DETECTOR
|
||||||
|
ZERO? STACK /?CND1
|
||||||
|
CALL META-LOC,FOIL >?TMP1
|
||||||
|
CALL META-LOC,PLATINUM-DETECTOR
|
||||||
|
EQUAL? ?TMP1,STACK /?CCL2
|
||||||
|
CALL ULTIMATELY-IN?,PLATINUM-DETECTOR,BARBERSHOP
|
||||||
|
ZERO? STACK /?CND1
|
||||||
|
ZERO? MIRROR-BROKEN \?CND1
|
||||||
|
?CCL2: PRINTI " The detector is quietly beeping."
|
||||||
|
CRLF
|
||||||
|
?CND1: EQUAL? DETECTOR-COUNTER,50,75 \?CCL11
|
||||||
|
IN? PLATINUM-DETECTOR,PROTAGONIST \?CCL11
|
||||||
|
PRINTI " You notice that the detector is getting "
|
||||||
|
EQUAL? DETECTOR-COUNTER,75 \?CND14
|
||||||
|
PRINTI "very "
|
||||||
|
?CND14: PRINTR "warm."
|
||||||
|
?CCL11: EQUAL? DETECTOR-COUNTER,100 \FALSE
|
||||||
|
IN? PLATINUM-DETECTOR,PROTAGONIST \FALSE
|
||||||
|
MOVE PLATINUM-DETECTOR,HERE
|
||||||
|
PRINTR " Yeow! The detector is now too hot to handle, so you drop it."
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-DRYER
|
||||||
|
INC 'DRYER-COUNTER
|
||||||
|
FCLEAR LAUNDRY,TOUCHBIT
|
||||||
|
EQUAL? HERE,LAUNDRY \FALSE
|
||||||
|
EQUAL? DRYER-COUNTER,5,10,15 \FALSE
|
||||||
|
PRINTI " "
|
||||||
|
CALL DESCRIBE-DRYER-HEAT
|
||||||
|
CRLF
|
||||||
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-RADIO
|
||||||
|
EQUAL? HERE,SPACETRUCK \FALSE
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 30,STACK /?CCL5
|
||||||
|
PRINTI " The radio crackles to life. ""Breaker. "
|
||||||
|
CALL PICK-ONE,RADIO-LINES
|
||||||
|
PRINT STACK
|
||||||
|
PRINTR " Over."""
|
||||||
|
?CCL5: RANDOM 100
|
||||||
|
LESS? 20,STACK /FALSE
|
||||||
|
PRINTR " A country and western station drifts into tune for a moment, but then fades again."
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-FLOYD,OBJ=0,?TMP1
|
||||||
|
CALL QUEUE,I-FLOYD,-1
|
||||||
|
FSET? FLOYD,TOUCHBIT /?CCL3
|
||||||
|
FSET FLOYD,TOUCHBIT
|
||||||
|
FSET FLOYD,TRYTAKEBIT
|
||||||
|
PRINTI " The third robot looks up from his marbles, jumps to his feet, and starts waving wildly. It's Floyd, your robotic companion from Resida! (Footnote 3) You've seen him only occasionally since he opted for assignment in the Stellar Patrol those five long years ago."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL3: ZERO? ROBOT-PICKED \?CCL5
|
||||||
|
PRINTI " Floyd jumps up and down saying, ""Oh boy oh boy oh boy pick Floyd pick Floyd pick Floyd!"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL5: ZERO? FLOYD-ANGUISHED /?CCL7
|
||||||
|
CALL VISIBLE?,FLOYD
|
||||||
|
ZERO? STACK \?CND8
|
||||||
|
SET 'FLOYD-ANGUISHED,FALSE-VALUE
|
||||||
|
?CND8: SET 'FLOYD-FOLLOW,FALSE-VALUE
|
||||||
|
RFALSE
|
||||||
|
?CCL7: CALL VISIBLE?,FLOYD
|
||||||
|
ZERO? STACK /?CCL11
|
||||||
|
FSET? FLOYD,ACTIVEBIT \FALSE
|
||||||
|
LOC FLOYD
|
||||||
|
EQUAL? STACK,PILOT-SEAT,COPILOT-SEAT \?CCL16
|
||||||
|
GRTR? SPACETRUCK-COUNTER,0 \?CCL16
|
||||||
|
ZERO? PILOT-SEAT-COMMENT \?CCL16
|
||||||
|
SET 'PILOT-SEAT-COMMENT,TRUE-VALUE
|
||||||
|
PRINTI " Floyd strains to see over the top of the dashboard. ""Boy, seats low! Floyd could sure use a phone book!"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL16: IN? OSTRICH,HERE \?CCL21
|
||||||
|
ZERO? OSTRICH-COMMENT \?CCL21
|
||||||
|
SET 'OSTRICH-COMMENT,TRUE-VALUE
|
||||||
|
PRINTI " Floyd looks at the ostrich with breathless excitement. ""Wow! An elephant!"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL21: IN? BALLOON,HERE \?CCL25
|
||||||
|
ZERO? BALLOON-COMMENT \?CCL25
|
||||||
|
ZERO? HANGING-IN-AIR \?CCL25
|
||||||
|
GRTR? ROBOT-EVILNESS,13 \?CCL25
|
||||||
|
SET 'BALLOON-COMMENT,TRUE-VALUE
|
||||||
|
PRINTI " You notice Floyd taunting the "
|
||||||
|
PRINTD BALLOON
|
||||||
|
PRINTI ". The frightened balloon takes refuge in the far corner of the room."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL25: FSET? HERE,FLOYDBIT /?PRD33
|
||||||
|
ZERO? FLOYD-SPOKE \?PRD33
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 6,STACK \?CTR30
|
||||||
|
?PRD33: GRTR? TIMER-SETTING,0 \?CCL31
|
||||||
|
CALL VISIBLE?,EXPLOSIVE
|
||||||
|
ZERO? STACK /?CCL31
|
||||||
|
?CTR30: REMOVE FLOYD
|
||||||
|
PRINTI " "
|
||||||
|
IN? PLATO,HERE \?CCL41
|
||||||
|
SET 'POSTPONE-ATTACK,TRUE-VALUE
|
||||||
|
REMOVE PLATO
|
||||||
|
GRTR? ROBOT-EVILNESS,8 \?CCL44
|
||||||
|
PRINTI """Let us take a stroll, Floyd,"" says Plato, tucking his book under one arm. ""Tagging along after this simpleton human is becoming tiresome."" He breezes out. Floyd hesitates, then follows."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL44: RANDOM 100
|
||||||
|
LESS? 50,STACK \?CTR45
|
||||||
|
EQUAL? HERE,LIBRARY \?CCL46
|
||||||
|
?CTR45: PRINTI """Hey, Plato!"" says Floyd. ""Play Hider-and-Seeker with Floyd?"" Plato glances up from his book, nods, and says, ""I do believe that I can spare a few millichrons for a relaxing bit of sport."" Floyd bounds away, with Plato a bit behind. From out of sight, Floyd's voice faintly echoes back to you: ""Ollie ollie oxen free!"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL46: PRINTI "Plato reaches the last page of his book. ""Heavens! It appears to be time for another jaunt to the library. Would you care to accompany me, my boisterous friend?""
|
||||||
|
""Oh boy yessiree!"" says Floyd, bounding off after Plato. ""I hope they have copies of my favorite comic, THE ADVENTURES OF LANE MASTODON!"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL41: PRINTI "Floyd says, ""Floyd going exploring. See you later."" He glides out of the room."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL31: RANDOM 100
|
||||||
|
LESS? 45,STACK /?CND1
|
||||||
|
ZERO? FLOYD-SPOKE \?CND1
|
||||||
|
IN? FLOYD,HERE \?CND1
|
||||||
|
IN? PROTAGONIST,HERE \?CND1
|
||||||
|
ZERO? HANGING-IN-AIR \?CND1
|
||||||
|
ZERO? LIT /?CND1
|
||||||
|
FIRST? HERE >OBJ /?KLU177
|
||||||
|
?KLU177: ZERO? OBJ /?CCL58
|
||||||
|
FSET? OBJ,TOUCHBIT \?CCL58
|
||||||
|
FSET? OBJ,TAKEBIT \?CCL58
|
||||||
|
FSET? OBJ,CONTBIT /?CCL58
|
||||||
|
EQUAL? OBJ,OSTRICH-NIP,SPACESUIT /?CCL58
|
||||||
|
EQUAL? OBJ,DETONATOR,TIMER,EXPLOSIVE /?CCL58
|
||||||
|
CALL CCOUNT,FLOYD
|
||||||
|
LESS? STACK,4 \?CCL58
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 6,STACK /?CCL58
|
||||||
|
MOVE OBJ,FLOYD
|
||||||
|
PRINTI " Floyd picks up"
|
||||||
|
CALL TPRINT,OBJ
|
||||||
|
PRINTI ", examines it, and tucks "
|
||||||
|
FSET? OBJ,PLURALBIT \?CCL69
|
||||||
|
PRINTI "them"
|
||||||
|
JUMP ?CND67
|
||||||
|
?CCL69: PRINTI "it"
|
||||||
|
?CND67: PRINTI " under his arm."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL58: FIRST? FLOYD \?CCL71
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 6,STACK /?CCL71
|
||||||
|
FIRST? FLOYD >OBJ /?KLU178
|
||||||
|
?KLU178: NEXT? OBJ \?CND74
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 60,STACK /?CND74
|
||||||
|
NEXT? OBJ >OBJ /?CND74
|
||||||
|
?CND74: MOVE OBJ,HERE
|
||||||
|
PRINTI " Floyd drops"
|
||||||
|
CALL TPRINT,OBJ
|
||||||
|
PRINTI " he was carrying."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL71: FIRST? FLOYD \?CCL79
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 4,STACK /?CCL79
|
||||||
|
FIRST? FLOYD >OBJ /?KLU180
|
||||||
|
?KLU180: NEXT? OBJ \?CND82
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 60,STACK /?CND82
|
||||||
|
NEXT? OBJ >OBJ /?CND82
|
||||||
|
?CND82: PRINTI " Floyd moves"
|
||||||
|
CALL TPRINT,OBJ
|
||||||
|
PRINTI " in a wavering course through the air, making a roaring noise like a rocket exhaust."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL79: IN? PLATO,HERE \?CCL87
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 70,STACK /?CCL87
|
||||||
|
PRINTI " "
|
||||||
|
CALL PICK-ONE,PLATOISMS
|
||||||
|
PRINT STACK
|
||||||
|
PRINT PERIOD-CR
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL87: PRINTI " Floyd "
|
||||||
|
MUL ROBOT-EVILNESS,3
|
||||||
|
SUB 36,STACK >?TMP1
|
||||||
|
RANDOM 100
|
||||||
|
LESS? ?TMP1,STACK /?CCL92
|
||||||
|
CALL PICK-ONE,GOOD-FLOYDISMS
|
||||||
|
PRINT STACK
|
||||||
|
PRINT PERIOD-CR
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL92: MUL ROBOT-EVILNESS,25
|
||||||
|
SUB STACK,300 >?TMP1
|
||||||
|
RANDOM 100
|
||||||
|
LESS? ?TMP1,STACK /?CCL94
|
||||||
|
CALL PICK-ONE,BAD-FLOYDISMS
|
||||||
|
PRINT STACK
|
||||||
|
PRINT PERIOD-CR
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL94: RANDOM 100
|
||||||
|
LESS? 6,STACK /?CCL96
|
||||||
|
SET 'AWAITING-REPLY,4
|
||||||
|
ADD C-ELAPSED,2
|
||||||
|
CALL QUEUE,I-REPLY,STACK
|
||||||
|
PRINTI "says, ""Hey! Wanna play Hucka-Bucka-Beanstalk?"""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL96: CALL PICK-ONE,NEUTRAL-FLOYDISMS
|
||||||
|
PRINT STACK
|
||||||
|
PRINT PERIOD-CR
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL11: FSET? FLOYD,ACTIVEBIT /?CCL98
|
||||||
|
EQUAL? HERE,VACUUM-STORAGE,AIRLOCK /FALSE
|
||||||
|
LESS? SPACETRUCK-COUNTER,5 /FALSE
|
||||||
|
CALL NEXT-ROOM?,FLOYD
|
||||||
|
ZERO? STACK \FALSE
|
||||||
|
FSET FLOYD,ACTIVEBIT
|
||||||
|
FSET FLOYD,ACTORBIT
|
||||||
|
PRINTI " Floyd bounds up to you"
|
||||||
|
PRINT HOPPING-MAD
|
||||||
|
ZERO? PLATO-INTRODUCED /?CCL107
|
||||||
|
PRINTI " Plato strolls in and gives Floyd a pat. ""I reactivated the little fellow; I hope you don't mind."""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND105
|
||||||
|
?CCL107: PRINTI " Another robot wanders in behind Floyd and notices you."
|
||||||
|
CRLF
|
||||||
|
CALL I-PLATO,TRUE-VALUE
|
||||||
|
PRINTI " Plato motions toward Floyd. ""I presume you know this playful little fellow. Someone had deactivated him, so I rectified the situation."""
|
||||||
|
CRLF
|
||||||
|
?CND105: MOVE PLATO,HERE
|
||||||
|
MOVE FLOYD,HERE
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL98: GRTR? ROBOT-EVILNESS,17 \?CCL109
|
||||||
|
LOC FLOYD
|
||||||
|
ZERO? STACK /?CND110
|
||||||
|
LOC FLOYD
|
||||||
|
FSET? STACK,NWELDERBIT \?CND110
|
||||||
|
CALL NEXT-ROOM?,FLOYD
|
||||||
|
ZERO? STACK \FALSE
|
||||||
|
?CND110: CALL MOVE-FLOYD-TO-FACTORY
|
||||||
|
RFALSE
|
||||||
|
?CCL109: ZERO? FLOYD-FOLLOW /?CCL116
|
||||||
|
EQUAL? HERE,AIRLOCK \?CCL116
|
||||||
|
PRINTI " Floyd calls from above, """
|
||||||
|
ZERO? PLATO-INTRODUCED /?CCL121
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CCL121
|
||||||
|
PRINTI "We"
|
||||||
|
JUMP ?CND119
|
||||||
|
?CCL121: PRINTC 73
|
||||||
|
?CND119: PRINTI "'ll wait here; it doesn't look like there's room in that phone booth for "
|
||||||
|
ZERO? PLATO-INTRODUCED /?CCL126
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CCL126
|
||||||
|
PRINTI "all"
|
||||||
|
JUMP ?CND124
|
||||||
|
?CCL126: PRINTI "both"
|
||||||
|
?CND124: PRINTI " of us."""
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL116: ZERO? FLOYD-FOLLOW /?CCL130
|
||||||
|
ZERO? TIMER-SETTING /?PRD133
|
||||||
|
CALL VISIBLE?,EXPLOSIVE
|
||||||
|
ZERO? STACK \?CCL130
|
||||||
|
?PRD133: RANDOM 100
|
||||||
|
LESS? 80,STACK /?CCL130
|
||||||
|
PRINTI " Floyd "
|
||||||
|
ZERO? PLATO-INTRODUCED /?CCL138
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CCL138
|
||||||
|
MOVE PLATO,HERE
|
||||||
|
PRINTI "and Plato follow"
|
||||||
|
JUMP ?CND136
|
||||||
|
?CCL138: PRINTI "follows"
|
||||||
|
?CND136: MOVE FLOYD,HERE
|
||||||
|
PRINTI " you."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL130: EQUAL? HERE,SPACETRUCK,ELEVATOR,BRIG /?CTR141
|
||||||
|
EQUAL? HERE,ARMORY \?CCL142
|
||||||
|
?CTR141: PRINTI " Floyd bounces in"
|
||||||
|
ZERO? PLATO-INTRODUCED /?CND145
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CND145
|
||||||
|
MOVE PLATO,HERE
|
||||||
|
PRINTI ", followed at a more leisurely pace by Plato"
|
||||||
|
?CND145: PRINTI ". ""Hey, wait for "
|
||||||
|
ZERO? PLATO-INTRODUCED /?CCL151
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CCL151
|
||||||
|
MOVE PLATO,HERE
|
||||||
|
PRINTI "us"
|
||||||
|
JUMP ?CND149
|
||||||
|
?CCL151: PRINTI "Floyd"
|
||||||
|
?CND149: MOVE FLOYD,HERE
|
||||||
|
PRINTI "!"" he yells."
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL142: RANDOM 100
|
||||||
|
LESS? 17,STACK /?CND1
|
||||||
|
ZERO? LIT /?CND1
|
||||||
|
EQUAL? HERE,AIRLOCK,VACUUM-STORAGE /?CND1
|
||||||
|
PRINTI " Floyd "
|
||||||
|
ZERO? PLATO-INTRODUCED \?CCL160
|
||||||
|
FSET? LEVEL-FIVE,TOUCHBIT \?CCL160
|
||||||
|
RANDOM 100
|
||||||
|
LESS? 50,STACK /?CCL160
|
||||||
|
PRINTI "dashes into view, followed by a slightly older-looking robot. ""Look, Floyd found a new friend,"" Floyd says with unbounded exuberance."
|
||||||
|
CRLF
|
||||||
|
CALL I-PLATO,TRUE-VALUE
|
||||||
|
JUMP ?CND158
|
||||||
|
?CCL160: MUL ROBOT-EVILNESS,10
|
||||||
|
SUB STACK,70 >?TMP1
|
||||||
|
RANDOM 100
|
||||||
|
LESS? ?TMP1,STACK /?CCL166
|
||||||
|
PRINTI "meanders in. ""You doing anything fun?"" he asks, and then answers his own question, ""Nope. Same dumb boring things."""
|
||||||
|
JUMP ?CND164
|
||||||
|
?CCL166: RANDOM 100
|
||||||
|
LESS? 15,STACK /?CCL168
|
||||||
|
PRINTI "rushes into the room and barrels into you. ""Oops, sorry,"" he says. ""Floyd not looking at where he was going to."""
|
||||||
|
JUMP ?CND164
|
||||||
|
?CCL168: PRINTI "bounds into the room. ""Floyd here now!"" he cries."
|
||||||
|
?CND164: ZERO? PLATO-INTRODUCED /?CND169
|
||||||
|
ZERO? PLATO-ATTACK-COUNTER \?CND169
|
||||||
|
MOVE PLATO,HERE
|
||||||
|
PRINTI " You notice that Plato has also roamed into view behind Floyd, once again absorbed in his reading."
|
||||||
|
?CND169: CRLF
|
||||||
|
?CND158: MOVE FLOYD,HERE
|
||||||
|
ZERO? HANGING-IN-AIR /?CND1
|
||||||
|
ZERO? HANGING-COMMENT \?CND1
|
||||||
|
SET 'FLOYD-SPOKE,TRUE-VALUE
|
||||||
|
SET 'HANGING-COMMENT,TRUE-VALUE
|
||||||
|
PRINT FLOYDS-HANGING-IN-AIR-COMMENT
|
||||||
|
?CND1: SET 'FLOYD-SPOKE,FALSE-VALUE
|
||||||
|
SET 'FLOYD-FOLLOW,FALSE-VALUE
|
||||||
|
RETURN FLOYD-FOLLOW
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-EXPLOSIVE-MELT,OLD-MELT-COUNTER
|
||||||
|
SET 'OLD-MELT-COUNTER,MELT-COUNTER
|
||||||
|
IN? EXPLOSIVE,THERMOS \?CCL3
|
||||||
|
FSET? THERMOS,OPENBIT /?CCL3
|
||||||
|
DIV C-ELAPSED,4
|
||||||
|
JUMP ?CND1
|
||||||
|
?CCL3: PUSH C-ELAPSED
|
||||||
|
?CND1: ADD MELT-COUNTER,STACK >MELT-COUNTER
|
||||||
|
GRTR? MELT-COUNTER,210 \?CCL8
|
||||||
|
CALL VISIBLE?,EXPLOSIVE
|
||||||
|
ZERO? STACK /?CCL11
|
||||||
|
PRINTI " The explosive "
|
||||||
|
PRINT SUBLIMES-INTO-FREZONE
|
||||||
|
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
||||||
|
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
||||||
|
CRLF
|
||||||
|
RTRUE
|
||||||
|
?CCL11: CALL REMOVE-CAREFULLY,EXPLOSIVE
|
||||||
|
RSTACK
|
||||||
|
?CCL8: CALL VISIBLE?,EXPLOSIVE
|
||||||
|
ZERO? STACK /FALSE
|
||||||
|
ZERO? LIT /FALSE
|
||||||
|
GRTR? MELT-COUNTER,170 \?CCL18
|
||||||
|
GRTR? OLD-MELT-COUNTER,170 /?CCL18
|
||||||
|
PRINTI " "
|
||||||
|
CALL DESCRIBE-EXPLOSIVE
|
||||||
|
RSTACK
|
||||||
|
?CCL18: GRTR? MELT-COUNTER,130 \FALSE
|
||||||
|
GRTR? OLD-MELT-COUNTER,130 /FALSE
|
||||||
|
PRINTI " "
|
||||||
|
CALL DESCRIBE-EXPLOSIVE
|
||||||
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-TIMER,?TMP1
|
||||||
|
CALL QUEUE,I-TIMER,-1
|
||||||
|
SUB TIMER-SETTING,C-ELAPSED >TIMER-SETTING
|
||||||
|
LESS? TIMER-SETTING,1 \?CND1
|
||||||
|
CALL DEQUEUE,I-TIMER
|
||||||
|
SET 'TIMER-SETTING,0
|
||||||
|
?CND1: CALL VISIBLE?,TIMER
|
||||||
|
ZERO? STACK /?CND3
|
||||||
|
PRINTI " The timer reaches "
|
||||||
|
PRINTN TIMER-SETTING
|
||||||
|
ZERO? TIMER-SETTING \?CND5
|
||||||
|
PRINTI " and stops ticking"
|
||||||
|
?CND5: PRINTC 46
|
||||||
|
?CND3: ZERO? TIMER-SETTING \?CND7
|
||||||
|
ZERO? TIMER-CONNECTED /?CND7
|
||||||
|
LOC DIODE-M >?TMP1
|
||||||
|
LOC DIODE-J
|
||||||
|
EQUAL? DETONATOR,?TMP1,STACK \?CND7
|
||||||
|
IN? DIODE-J,DETONATOR \?CCL14
|
||||||
|
MOVE DIODE-J,LOCAL-GLOBALS
|
||||||
|
CALL VISIBLE?,DETONATOR
|
||||||
|
ZERO? STACK /?CND7
|
||||||
|
PRINTI " You hear a sizzling sound from the detonator"
|
||||||
|
FSET? SPACESUIT,WORNBIT /?CND17
|
||||||
|
PRINTI ", and a burnt odor assaults your nose"
|
||||||
|
?CND17: PRINTC 46
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL14: ZERO? EXPLOSIVE-CONNECTED /?CCL20
|
||||||
|
CALL META-LOC,EXPLOSIVE
|
||||||
|
EQUAL? STACK,HERE \?CCL23
|
||||||
|
PRINTI " The explosive fulfills its destiny by exploding. You simultaneously fulfill your own destiny: turning into itsy-bitsy pieces of "
|
||||||
|
PRINT LFC
|
||||||
|
CALL JIGS-UP,STR?9
|
||||||
|
JUMP ?CND21
|
||||||
|
?CCL23: IN? EXPLOSIVE,DRILLED-HOLE \?CCL25
|
||||||
|
RANDOM 200
|
||||||
|
ADD STACK,20
|
||||||
|
CALL QUEUE,I-LIGHTS-OUT,STACK
|
||||||
|
FSET SAFE,OPENBIT
|
||||||
|
FSET SAFE,TOUCHBIT
|
||||||
|
FCLEAR SAFE,LOCKEDBIT
|
||||||
|
JUMP ?CND21
|
||||||
|
?CCL25: CALL DESTROY-EXPLOSIVE-CONT
|
||||||
|
?CND21: CALL NEXT-ROOM?,TIMER
|
||||||
|
ZERO? STACK /?CCL28
|
||||||
|
PRINTI " You hear a deafening explosion from very nearby!"
|
||||||
|
CRLF
|
||||||
|
JUMP ?CND26
|
||||||
|
?CCL28: PRINTI " You hear a loud but distant explosion."
|
||||||
|
CRLF
|
||||||
|
?CND26: REMOVE TIMER
|
||||||
|
REMOVE EXPLOSIVE
|
||||||
|
REMOVE DETONATOR
|
||||||
|
JUMP ?CND7
|
||||||
|
?CCL20: CALL VISIBLE?,TIMER
|
||||||
|
ZERO? STACK /?CND7
|
||||||
|
PRINTI " You hear a click from the detonator."
|
||||||
|
?CND7: CALL VISIBLE?,TIMER
|
||||||
|
ZERO? STACK /FALSE
|
||||||
|
CRLF
|
||||||
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
.FUNCT I-LOG-READER
|
||||||
|
INC 'LOG-READER-COUNTER
|
||||||
|
FSET? LOG-READER,ACTIVEBIT /?CCL3
|
||||||
|
CALL DEQUEUE,I-LOG-READER
|
||||||
|
SET 'LOG-READER-COUNTER,0
|
||||||
|
RETURN LOG-READER-COUNTER
|
||||||
|
?CCL3: EQUAL? LOG-READER-COUNTER,12 \?CCL5
|
||||||
|
EQUAL? HERE,COMMANDERS-OFFICE \?CCL5
|
||||||
|
PRINTR " The reader begins producing a whining noise."
|
||||||
|
?CCL5: EQUAL? LOG-READER-COUNTER,13 \?CCL9
|
||||||
|
EQUAL? HERE,COMMANDERS-OFFICE \?CCL9
|
||||||
|
PRINTI " The whine from the "
|
||||||
|
PRINTD LOG-READER
|
||||||
|
PRINTR " rises in pitch, and grows louder by the millichron!"
|
||||||
|
?CCL9: EQUAL? LOG-READER-COUNTER,14 \FALSE
|
||||||
|
REMOVE LOG-READER
|
||||||
|
CALL DEQUEUE,I-LOG-READER
|
||||||
|
FCLEAR COMMANDERS-OFFICE,TOUCHBIT
|
||||||
|
EQUAL? HERE,COMMANDERS-OFFICE \?CCL16
|
||||||
|
CALL JIGS-UP,STR?10
|
||||||
|
RSTACK
|
||||||
|
?CCL16: EQUAL? HERE,COMMANDERS-QUARTERS,BRIEFING-ROOM,STATION-CONTROL /?CCL18
|
||||||
|
EQUAL? HERE,SOUTH-JUNCTION \FALSE
|
||||||
|
?CCL18: PRINTR " You hear an explosion from nearby."
|
||||||
|
|
||||||
|
.ENDI
|
456
interrupts.zil
Normal file
456
interrupts.zil
Normal file
|
@ -0,0 +1,456 @@
|
||||||
|
"INTERRUPTS for
|
||||||
|
STATIONFALL
|
||||||
|
(c) Copyright 1987 Infocom, Inc. All Rights Reserved."
|
||||||
|
|
||||||
|
<ROUTINE I-WELDER ()
|
||||||
|
<COND (<IN? ,WELDER ,HERE>
|
||||||
|
<TELL " ">
|
||||||
|
<SETG WELDER-COUNTER <+ ,WELDER-COUNTER 1>>
|
||||||
|
<COND (<NOT ,LIT>
|
||||||
|
<REMOVE ,WELDER>
|
||||||
|
<SETG WELDER-COUNTER 0>
|
||||||
|
<TELL "Y" ,HEAR-WELDER-LEAVE>
|
||||||
|
<RTRUE>)
|
||||||
|
(<EQUAL? ,WELDER-COUNTER 2>
|
||||||
|
<TELL "The welder moves closer. ">)
|
||||||
|
(<NOT <EQUAL? ,WELDER-COUNTER 3>>
|
||||||
|
<JIGS-UP
|
||||||
|
"A powerful arc of raw energy bridges the gap between two of the monster's
|
||||||
|
welding extensions. Unfortunately, you were pretty much right between the
|
||||||
|
same two extensions at that moment.">)>
|
||||||
|
<PERFORM ,V?EXAMINE ,WELDER>)
|
||||||
|
(<G? ,WELDER-COUNTER 0>
|
||||||
|
<REMOVE ,WELDER>
|
||||||
|
<SETG WELDER-COUNTER 0>
|
||||||
|
<TELL " Nearby, y" ,HEAR-WELDER-LEAVE>)
|
||||||
|
(<AND <NOT <FSET? ,HERE ,NWELDERBIT>>
|
||||||
|
<NOT <IN? ,PROTAGONIST ,BED>>
|
||||||
|
,LIT
|
||||||
|
<PROB ,NUMBER-OF-WELDERS>>
|
||||||
|
<COND (,STUNNED
|
||||||
|
<RFALSE>)
|
||||||
|
(<AND <EQUAL? ,HERE ,SPACETRUCK>
|
||||||
|
<NOT <FSET? ,SPACETRUCK-HATCH ,OPENBIT>>>
|
||||||
|
<RFALSE>)>
|
||||||
|
<MOVE ,WELDER ,HERE>
|
||||||
|
<SETG WELDER-COUNTER <+ ,WELDER-COUNTER 1>>
|
||||||
|
<SETG WELDER-TABLE-POINTER <RANDOM ,NUMBER-OF-WELDERS>>
|
||||||
|
<TELL " You spot a " 'WELDER " approaching. ">
|
||||||
|
<COND (<NOT <FSET? ,WELDER ,TOUCHBIT>>
|
||||||
|
<FSET ,WELDER ,TOUCHBIT>
|
||||||
|
<PERFORM ,V?WHAT ,WELDER>)>
|
||||||
|
<PERFORM ,V?EXAMINE ,WELDER>
|
||||||
|
<STOP>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-HEADLAMP ()
|
||||||
|
<COND (<FSET? ,HEADLAMP ,ONBIT>
|
||||||
|
<SETG HEADLAMP-COUNTER <- ,HEADLAMP-COUNTER 1>>
|
||||||
|
<COND (<EQUAL? ,HEADLAMP-COUNTER 0>
|
||||||
|
<FCLEAR ,HEADLAMP ,ACTIVEBIT>
|
||||||
|
<FCLEAR ,HEADLAMP ,ONBIT>)>
|
||||||
|
<COND (<AND <VISIBLE? ,HEADLAMP>
|
||||||
|
<EQUAL? ,HEADLAMP-COUNTER 0 15 30>>
|
||||||
|
<TELL " The light from the headlamp ">
|
||||||
|
<COND (<EQUAL? ,HEADLAMP-COUNTER 0>
|
||||||
|
<TELL "flickers and dies!" CR>
|
||||||
|
<NOW-DARK?>)
|
||||||
|
(<EQUAL? ,HEADLAMP-COUNTER 5>
|
||||||
|
<TELL "is almost out!" CR>)
|
||||||
|
(T
|
||||||
|
<TELL "seems somewhat dimmer." CR>)>)>)
|
||||||
|
(T
|
||||||
|
<DEQUEUE I-HEADLAMP>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-PLATINUM-DETECTOR ()
|
||||||
|
<SETG DETECTOR-COUNTER <+ ,DETECTOR-COUNTER 1>>
|
||||||
|
<COND (<AND <VISIBLE? ,PLATINUM-DETECTOR>
|
||||||
|
<OR <EQUAL? <META-LOC ,FOIL>
|
||||||
|
<META-LOC ,PLATINUM-DETECTOR>>
|
||||||
|
<AND <ULTIMATELY-IN? ,PLATINUM-DETECTOR ,BARBERSHOP>
|
||||||
|
<NOT ,MIRROR-BROKEN>>>>
|
||||||
|
<TELL " The detector is quietly beeping." CR>)>
|
||||||
|
<COND (<AND <EQUAL? ,DETECTOR-COUNTER 50 75>
|
||||||
|
<IN? ,PLATINUM-DETECTOR ,PROTAGONIST>>
|
||||||
|
<TELL " You notice that the detector is getting ">
|
||||||
|
<COND (<EQUAL? ,DETECTOR-COUNTER 75>
|
||||||
|
<TELL "very ">)>
|
||||||
|
<TELL "warm." CR>)
|
||||||
|
(<AND <EQUAL? ,DETECTOR-COUNTER 100>
|
||||||
|
<IN? ,PLATINUM-DETECTOR ,PROTAGONIST>>
|
||||||
|
<MOVE ,PLATINUM-DETECTOR ,HERE>
|
||||||
|
<TELL
|
||||||
|
" Yeow! The detector is now too hot to handle, so you drop it." CR>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-DRYER ()
|
||||||
|
<SETG DRYER-COUNTER <+ ,DRYER-COUNTER 1>>
|
||||||
|
<FCLEAR ,LAUNDRY ,TOUCHBIT>
|
||||||
|
<COND (<AND <EQUAL? ,HERE ,LAUNDRY>
|
||||||
|
<EQUAL? ,DRYER-COUNTER 5 10 15>>
|
||||||
|
<TELL " ">
|
||||||
|
<DESCRIBE-DRYER-HEAT>
|
||||||
|
<CRLF>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-RADIO ()
|
||||||
|
<COND (<NOT <EQUAL? ,HERE ,SPACETRUCK>>
|
||||||
|
<RFALSE>)
|
||||||
|
(<PROB 30>
|
||||||
|
<TELL
|
||||||
|
" The radio crackles to life. \"Breaker. "
|
||||||
|
<PICK-ONE ,RADIO-LINES> " Over.\"" CR>)
|
||||||
|
(<PROB 20>
|
||||||
|
<TELL
|
||||||
|
" A country and western station drifts into tune for a moment, but then
|
||||||
|
fades again." CR>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-FLOYD ("AUX" (OBJ <>))
|
||||||
|
<QUEUE I-FLOYD -1>
|
||||||
|
<COND (<NOT <FSET? ,FLOYD ,TOUCHBIT>>
|
||||||
|
<FSET ,FLOYD ,TOUCHBIT>
|
||||||
|
<FSET ,FLOYD ,TRYTAKEBIT>
|
||||||
|
<TELL
|
||||||
|
" The third robot looks up from his marbles, jumps to his feet, and starts
|
||||||
|
waving wildly. It's Floyd, your robotic companion from Resida! (Footnote 3)
|
||||||
|
You've seen him only occasionally since he opted for assignment in the Stellar
|
||||||
|
Patrol those five long years ago." CR>)
|
||||||
|
(<NOT ,ROBOT-PICKED>
|
||||||
|
<TELL
|
||||||
|
" Floyd jumps up and down saying, \"Oh boy oh boy oh boy pick Floyd
|
||||||
|
pick Floyd pick Floyd!\"" CR>)
|
||||||
|
(,FLOYD-ANGUISHED
|
||||||
|
<COND (<NOT <VISIBLE? ,FLOYD>>
|
||||||
|
<SETG FLOYD-ANGUISHED <>>)>
|
||||||
|
<SETG FLOYD-FOLLOW <>>
|
||||||
|
<RFALSE>)
|
||||||
|
(<VISIBLE? ,FLOYD>
|
||||||
|
<COND (<NOT <FSET? ,FLOYD ,ACTIVEBIT>>
|
||||||
|
<RFALSE>)>
|
||||||
|
<COND (<AND <EQUAL? <LOC ,FLOYD> ,PILOT-SEAT ,COPILOT-SEAT>
|
||||||
|
<G? ,SPACETRUCK-COUNTER 0>
|
||||||
|
<NOT ,PILOT-SEAT-COMMENT>>
|
||||||
|
<SETG PILOT-SEAT-COMMENT T>
|
||||||
|
<TELL
|
||||||
|
" Floyd strains to see over the top of the dashboard. \"Boy, seats low!
|
||||||
|
Floyd could sure use a phone book!\"" CR>)
|
||||||
|
(<AND <IN? ,OSTRICH ,HERE>
|
||||||
|
<NOT ,OSTRICH-COMMENT>>
|
||||||
|
<SETG OSTRICH-COMMENT T>
|
||||||
|
<TELL
|
||||||
|
" Floyd looks at the ostrich with breathless excitement.
|
||||||
|
\"Wow! An elephant!\"" CR>)
|
||||||
|
(<AND <IN? ,BALLOON ,HERE>
|
||||||
|
<NOT ,BALLOON-COMMENT>
|
||||||
|
<NOT ,HANGING-IN-AIR>
|
||||||
|
<G? ,ROBOT-EVILNESS 13>>
|
||||||
|
<SETG BALLOON-COMMENT T>
|
||||||
|
<TELL
|
||||||
|
" You notice Floyd taunting the " D ,BALLOON ". The frightened balloon
|
||||||
|
takes refuge in the far corner of the room." CR>)
|
||||||
|
(<OR <AND <NOT <FSET? ,HERE ,FLOYDBIT>>
|
||||||
|
<NOT ,FLOYD-SPOKE>
|
||||||
|
<PROB 6>>
|
||||||
|
<AND <G? ,TIMER-SETTING 0>
|
||||||
|
<VISIBLE? ,EXPLOSIVE>>>
|
||||||
|
<REMOVE ,FLOYD>
|
||||||
|
<TELL " ">
|
||||||
|
<COND (<IN? ,PLATO ,HERE>
|
||||||
|
<SETG POSTPONE-ATTACK T>
|
||||||
|
<REMOVE ,PLATO>
|
||||||
|
<COND (<G? ,ROBOT-EVILNESS 8>
|
||||||
|
<TELL
|
||||||
|
"\"Let us take a stroll, Floyd,\" says Plato, tucking his book under one
|
||||||
|
arm. \"Tagging along after this simpleton human is becoming tiresome.\"
|
||||||
|
He breezes out. Floyd hesitates, then follows." CR>)
|
||||||
|
(<OR <PROB 50>
|
||||||
|
<EQUAL? ,HERE ,LIBRARY>>
|
||||||
|
<TELL
|
||||||
|
"\"Hey, Plato!\" says Floyd. \"Play Hider-and-Seeker with Floyd?\" Plato
|
||||||
|
glances up from his book, nods, and says, \"I do believe that I can spare
|
||||||
|
a few millichrons for a relaxing bit of sport.\" Floyd bounds away, with
|
||||||
|
Plato a bit behind. From out of sight, Floyd's voice faintly echoes
|
||||||
|
back to you: \"Ollie ollie oxen free!\"" CR>)
|
||||||
|
(T
|
||||||
|
<TELL
|
||||||
|
"Plato reaches the last page of his book. \"Heavens! It appears to be time
|
||||||
|
for another jaunt to the library. Would you care to accompany me, my
|
||||||
|
boisterous friend?\"|
|
||||||
|
\"Oh boy yessiree!\" says Floyd, bounding off after Plato. \"I hope they
|
||||||
|
have copies of my favorite comic, THE ADVENTURES OF LANE MASTODON!\"" CR>)>)
|
||||||
|
(T
|
||||||
|
<TELL
|
||||||
|
"Floyd says, \"Floyd going exploring. See you later.\"
|
||||||
|
He glides out of the room." CR>)>)
|
||||||
|
(<AND <PROB 45>
|
||||||
|
<NOT ,FLOYD-SPOKE>
|
||||||
|
<IN? ,FLOYD ,HERE>
|
||||||
|
<IN? ,PROTAGONIST ,HERE>
|
||||||
|
<NOT ,HANGING-IN-AIR>
|
||||||
|
,LIT>
|
||||||
|
<SET OBJ <FIRST? ,HERE>>
|
||||||
|
<COND (<AND .OBJ
|
||||||
|
<FSET? .OBJ ,TOUCHBIT>
|
||||||
|
<FSET? .OBJ ,TAKEBIT>
|
||||||
|
<NOT <FSET? .OBJ ,CONTBIT>>
|
||||||
|
<NOT <EQUAL? .OBJ ,OSTRICH-NIP ,SPACESUIT>>
|
||||||
|
<NOT <EQUAL? .OBJ ,DETONATOR ,TIMER
|
||||||
|
,EXPLOSIVE>>
|
||||||
|
<L? <CCOUNT ,FLOYD> 4>
|
||||||
|
<PROB 6>>
|
||||||
|
<MOVE .OBJ ,FLOYD>
|
||||||
|
<TELL
|
||||||
|
" Floyd picks up" T .OBJ ", examines it, and tucks ">
|
||||||
|
<COND (<FSET? .OBJ ,PLURALBIT>
|
||||||
|
<TELL "them">)
|
||||||
|
(T
|
||||||
|
<TELL "it">)>
|
||||||
|
<TELL " under his arm." CR>)
|
||||||
|
(<AND <FIRST? ,FLOYD>
|
||||||
|
<PROB 6>>
|
||||||
|
<SET OBJ <FIRST? ,FLOYD>>
|
||||||
|
<COND (<AND <NEXT? .OBJ>
|
||||||
|
<PROB 60>>
|
||||||
|
<SET OBJ <NEXT? .OBJ>>)>
|
||||||
|
<MOVE .OBJ ,HERE>
|
||||||
|
<TELL
|
||||||
|
" Floyd drops" T .OBJ " he was carrying." CR>)
|
||||||
|
(<AND <FIRST? ,FLOYD>
|
||||||
|
<PROB 4>>
|
||||||
|
<SET OBJ <FIRST? ,FLOYD>>
|
||||||
|
<COND (<AND <NEXT? .OBJ>
|
||||||
|
<PROB 60>>
|
||||||
|
<SET OBJ <NEXT? .OBJ>>)>
|
||||||
|
<TELL
|
||||||
|
" Floyd moves" T .OBJ " in a wavering course through the air, making
|
||||||
|
a roaring noise like a rocket exhaust." CR>)
|
||||||
|
(<AND <IN? ,PLATO ,HERE>
|
||||||
|
<PROB 70>>
|
||||||
|
<TELL " " <PICK-ONE ,PLATOISMS> ,PERIOD-CR>)
|
||||||
|
(T
|
||||||
|
<TELL " Floyd ">
|
||||||
|
<COND (<PROB <- 36 <* ,ROBOT-EVILNESS 3>>>
|
||||||
|
<TELL <PICK-ONE ,GOOD-FLOYDISMS>
|
||||||
|
,PERIOD-CR>)
|
||||||
|
(<PROB <- <* ,ROBOT-EVILNESS 25> 300>>
|
||||||
|
<TELL <PICK-ONE ,BAD-FLOYDISMS>
|
||||||
|
,PERIOD-CR>)
|
||||||
|
(<PROB 6>
|
||||||
|
<SETG AWAITING-REPLY 4>
|
||||||
|
<QUEUE I-REPLY <+ ,C-ELAPSED 2>>
|
||||||
|
<TELL
|
||||||
|
"says, \"Hey! Wanna play Hucka-Bucka-Beanstalk?\"" CR>)
|
||||||
|
(T
|
||||||
|
<TELL <PICK-ONE ,NEUTRAL-FLOYDISMS>
|
||||||
|
,PERIOD-CR>)>)>)>)
|
||||||
|
(<NOT <FSET? ,FLOYD ,ACTIVEBIT>>
|
||||||
|
<COND (<OR <EQUAL? ,HERE ,VACUUM-STORAGE ,AIRLOCK>
|
||||||
|
<L? ,SPACETRUCK-COUNTER 5>>
|
||||||
|
<RFALSE>)
|
||||||
|
(<NEXT-ROOM? ,FLOYD>
|
||||||
|
<RFALSE>)>
|
||||||
|
<FSET ,FLOYD ,ACTIVEBIT>
|
||||||
|
<FSET ,FLOYD ,ACTORBIT>
|
||||||
|
<TELL " Floyd bounds up to you" ,HOPPING-MAD>
|
||||||
|
<COND (,PLATO-INTRODUCED
|
||||||
|
<TELL
|
||||||
|
" Plato strolls in and gives Floyd a pat. \"I reactivated the little fellow;
|
||||||
|
I hope you don't mind.\"" CR>)
|
||||||
|
(T
|
||||||
|
<TELL
|
||||||
|
" Another robot wanders in behind Floyd and notices you." CR>
|
||||||
|
<I-PLATO T>
|
||||||
|
<TELL
|
||||||
|
" Plato motions toward Floyd. \"I presume you know this playful little
|
||||||
|
fellow. Someone had deactivated him, so I rectified the situation.\"" CR>)>
|
||||||
|
<MOVE ,PLATO ,HERE>
|
||||||
|
<MOVE ,FLOYD ,HERE>)
|
||||||
|
;"Floyd is active but not present"
|
||||||
|
(<G? ,ROBOT-EVILNESS 17>
|
||||||
|
<COND (<AND <LOC ,FLOYD>
|
||||||
|
<FSET? <LOC ,FLOYD> ,NWELDERBIT>
|
||||||
|
<NEXT-ROOM? ,FLOYD>>
|
||||||
|
;"don't move Floyd to Factory if he's in the next room
|
||||||
|
and it's a dead end"
|
||||||
|
<RFALSE>)>
|
||||||
|
<MOVE-FLOYD-TO-FACTORY>
|
||||||
|
<RFALSE>)
|
||||||
|
(<AND ,FLOYD-FOLLOW
|
||||||
|
<EQUAL? ,HERE ,AIRLOCK>>
|
||||||
|
<TELL " Floyd calls from above, \"">
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<TELL "We">)
|
||||||
|
(T
|
||||||
|
<TELL "I">)>
|
||||||
|
<TELL
|
||||||
|
"'ll wait here; it doesn't look like there's room in that phone booth for ">
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<TELL "all">)
|
||||||
|
(T
|
||||||
|
<TELL "both">)>
|
||||||
|
<TELL " of us.\"" CR>)
|
||||||
|
(<AND ,FLOYD-FOLLOW
|
||||||
|
<OR <EQUAL? ,TIMER-SETTING 0>
|
||||||
|
<NOT <VISIBLE? ,EXPLOSIVE>>>
|
||||||
|
<PROB 80>>
|
||||||
|
<TELL " Floyd ">
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<MOVE ,PLATO ,HERE>
|
||||||
|
<TELL "and Plato follow">)
|
||||||
|
(T
|
||||||
|
<TELL "follows">)>
|
||||||
|
<MOVE ,FLOYD ,HERE>
|
||||||
|
<TELL " you." CR>)
|
||||||
|
(<EQUAL? ,HERE ,SPACETRUCK ,ELEVATOR ,BRIG ,ARMORY>
|
||||||
|
<TELL " Floyd bounces in">
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<MOVE ,PLATO ,HERE>
|
||||||
|
<TELL ", followed at a more leisurely pace by Plato">)>
|
||||||
|
<TELL ". \"Hey, wait for ">
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<MOVE ,PLATO ,HERE>
|
||||||
|
<TELL "us">)
|
||||||
|
(T
|
||||||
|
<TELL "Floyd">)>
|
||||||
|
<MOVE ,FLOYD ,HERE>
|
||||||
|
<TELL "!\" he yells." CR>)
|
||||||
|
(<AND <PROB 17>
|
||||||
|
,LIT
|
||||||
|
<NOT <EQUAL? ,HERE ,AIRLOCK ,VACUUM-STORAGE>>>
|
||||||
|
<TELL " Floyd ">
|
||||||
|
<COND (<AND <NOT ,PLATO-INTRODUCED>
|
||||||
|
<FSET? ,LEVEL-FIVE ,TOUCHBIT>
|
||||||
|
<PROB 50>>
|
||||||
|
<TELL
|
||||||
|
"dashes into view, followed by a slightly older-looking robot. \"Look, Floyd
|
||||||
|
found a new friend,\" Floyd says with unbounded exuberance." CR>
|
||||||
|
<I-PLATO T>)
|
||||||
|
(T
|
||||||
|
<COND (<PROB <- <* ,ROBOT-EVILNESS 10> 70>>
|
||||||
|
<TELL
|
||||||
|
"meanders in. \"You doing anything fun?\" he asks, and then answers
|
||||||
|
his own question, \"Nope. Same dumb boring things.\"">)
|
||||||
|
(<PROB 15>
|
||||||
|
<TELL
|
||||||
|
"rushes into the room and barrels into you. \"Oops, sorry,\" he says.
|
||||||
|
\"Floyd not looking at where he was going to.\"">)
|
||||||
|
(T
|
||||||
|
<TELL
|
||||||
|
"bounds into the room. \"Floyd here now!\" he cries.">)>
|
||||||
|
<COND (<AND ,PLATO-INTRODUCED
|
||||||
|
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
||||||
|
<MOVE ,PLATO ,HERE>
|
||||||
|
<TELL
|
||||||
|
" You notice that Plato has also roamed into view behind Floyd, once again
|
||||||
|
absorbed in his reading.">)>
|
||||||
|
<CRLF>)>
|
||||||
|
<MOVE ,FLOYD ,HERE>
|
||||||
|
<COND (<AND ,HANGING-IN-AIR
|
||||||
|
<NOT ,HANGING-COMMENT>>
|
||||||
|
<SETG FLOYD-SPOKE T>
|
||||||
|
<SETG HANGING-COMMENT T>
|
||||||
|
<TELL ,FLOYDS-HANGING-IN-AIR-COMMENT>)>)>
|
||||||
|
<SETG FLOYD-SPOKE <>>
|
||||||
|
<SETG FLOYD-FOLLOW <>>>
|
||||||
|
|
||||||
|
<ROUTINE I-EXPLOSIVE-MELT ("AUX" OLD-MELT-COUNTER)
|
||||||
|
<SET OLD-MELT-COUNTER ,MELT-COUNTER>
|
||||||
|
<SETG MELT-COUNTER
|
||||||
|
<+ ,MELT-COUNTER <COND (<AND <IN? ,EXPLOSIVE ,THERMOS>
|
||||||
|
<NOT <FSET? ,THERMOS ,OPENBIT>>>
|
||||||
|
</ ,C-ELAPSED 4>)
|
||||||
|
(T
|
||||||
|
,C-ELAPSED)>>>
|
||||||
|
<COND (<G? ,MELT-COUNTER 210>
|
||||||
|
<COND (<VISIBLE? ,EXPLOSIVE>
|
||||||
|
<TELL " The explosive " ,SUBLIMES-INTO-FREZONE>
|
||||||
|
<DEQUEUE I-EXPLOSIVE-MELT>
|
||||||
|
<REMOVE-CAREFULLY ,EXPLOSIVE>
|
||||||
|
<CRLF>)
|
||||||
|
(T
|
||||||
|
<REMOVE-CAREFULLY ,EXPLOSIVE>)>)
|
||||||
|
(<AND <VISIBLE? ,EXPLOSIVE>
|
||||||
|
,LIT>
|
||||||
|
<COND (<AND <G? ,MELT-COUNTER 170>
|
||||||
|
<NOT <G? .OLD-MELT-COUNTER 170>>>
|
||||||
|
<TELL " ">
|
||||||
|
<DESCRIBE-EXPLOSIVE>)
|
||||||
|
(<AND <G? ,MELT-COUNTER 130>
|
||||||
|
<NOT <G? .OLD-MELT-COUNTER 130>>>
|
||||||
|
<TELL " ">
|
||||||
|
<DESCRIBE-EXPLOSIVE>)>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-TIMER ()
|
||||||
|
<QUEUE I-TIMER -1>
|
||||||
|
<SETG TIMER-SETTING <- ,TIMER-SETTING ,C-ELAPSED>>
|
||||||
|
<COND (<L? ,TIMER-SETTING 1>
|
||||||
|
<DEQUEUE I-TIMER>
|
||||||
|
<SETG TIMER-SETTING 0>)>
|
||||||
|
<COND (<VISIBLE? ,TIMER>
|
||||||
|
<TELL " The timer reaches " N ,TIMER-SETTING>
|
||||||
|
<COND (<EQUAL? ,TIMER-SETTING 0>
|
||||||
|
<TELL " and stops ticking">)>
|
||||||
|
<TELL ".">)>
|
||||||
|
<COND (<AND <EQUAL? ,TIMER-SETTING 0>
|
||||||
|
,TIMER-CONNECTED
|
||||||
|
<EQUAL? ,DETONATOR <LOC ,DIODE-M> <LOC ,DIODE-J>>>
|
||||||
|
<COND (<IN? ,DIODE-J ,DETONATOR>
|
||||||
|
<MOVE ,DIODE-J ,LOCAL-GLOBALS>
|
||||||
|
<COND (<VISIBLE? ,DETONATOR>
|
||||||
|
<TELL
|
||||||
|
" You hear a sizzling sound from the detonator">
|
||||||
|
<COND (<NOT <FSET? ,SPACESUIT ,WORNBIT>>
|
||||||
|
<TELL
|
||||||
|
", and a burnt odor assaults your nose">)>
|
||||||
|
<TELL ".">)>)
|
||||||
|
(,EXPLOSIVE-CONNECTED
|
||||||
|
<COND (<EQUAL? <META-LOC ,EXPLOSIVE> ,HERE>
|
||||||
|
<TELL
|
||||||
|
" The explosive fulfills its destiny by exploding. You simultaneously fulfill
|
||||||
|
your own destiny: turning into itsy-bitsy pieces of " ,LFC>
|
||||||
|
<JIGS-UP ".">)
|
||||||
|
(<IN? ,EXPLOSIVE ,DRILLED-HOLE>
|
||||||
|
<QUEUE I-LIGHTS-OUT <+ <RANDOM 200> 20>>
|
||||||
|
<FSET ,SAFE ,OPENBIT>
|
||||||
|
<FSET ,SAFE ,TOUCHBIT>
|
||||||
|
<FCLEAR ,SAFE ,LOCKEDBIT>)
|
||||||
|
(T
|
||||||
|
<DESTROY-EXPLOSIVE-CONT>)>
|
||||||
|
<COND (<NEXT-ROOM? ,TIMER>
|
||||||
|
<TELL
|
||||||
|
" You hear a deafening explosion from very nearby!" CR>)
|
||||||
|
(T
|
||||||
|
<TELL
|
||||||
|
" You hear a loud but distant explosion." CR>)>
|
||||||
|
<REMOVE ,TIMER>
|
||||||
|
<REMOVE ,EXPLOSIVE>
|
||||||
|
<REMOVE ,DETONATOR>)
|
||||||
|
(<VISIBLE? ,TIMER>
|
||||||
|
<TELL " You hear a click from the detonator.">)>)>
|
||||||
|
<COND (<VISIBLE? ,TIMER>
|
||||||
|
<CRLF>)>>
|
||||||
|
|
||||||
|
<ROUTINE I-LOG-READER ()
|
||||||
|
<SETG LOG-READER-COUNTER <+ ,LOG-READER-COUNTER 1>>
|
||||||
|
<COND (<NOT <FSET? ,LOG-READER ,ACTIVEBIT>>
|
||||||
|
<DEQUEUE I-LOG-READER>
|
||||||
|
<SETG LOG-READER-COUNTER 0>)
|
||||||
|
(<AND <EQUAL? ,LOG-READER-COUNTER 12>
|
||||||
|
<EQUAL? ,HERE ,COMMANDERS-OFFICE>>
|
||||||
|
<TELL " The reader begins producing a whining noise." CR>)
|
||||||
|
(<AND <EQUAL? ,LOG-READER-COUNTER 13>
|
||||||
|
<EQUAL? ,HERE ,COMMANDERS-OFFICE>>
|
||||||
|
<TELL
|
||||||
|
" The whine from the " 'LOG-READER " rises in pitch, and grows louder
|
||||||
|
by the millichron!" CR>)
|
||||||
|
(<EQUAL? ,LOG-READER-COUNTER 14>
|
||||||
|
<REMOVE ,LOG-READER>
|
||||||
|
<DEQUEUE I-LOG-READER>
|
||||||
|
<FCLEAR ,COMMANDERS-OFFICE ,TOUCHBIT>
|
||||||
|
<COND (<EQUAL? ,HERE ,COMMANDERS-OFFICE>
|
||||||
|
<JIGS-UP " The log reader explodes!">)
|
||||||
|
(<EQUAL? ,HERE ,COMMANDERS-QUARTERS ,BRIEFING-ROOM
|
||||||
|
,STATION-CONTROL ,SOUTH-JUNCTION>
|
||||||
|
<TELL " You hear an explosion from nearby." CR>)>)>>
|
274
misc.zap
274
misc.zap
|
@ -133,130 +133,138 @@ START::
|
||||||
GET P-PRSO,1 >OBJ
|
GET P-PRSO,1 >OBJ
|
||||||
SET 'NUM,ICNT
|
SET 'NUM,ICNT
|
||||||
JUMP ?CND25
|
JUMP ?CND25
|
||||||
?CCL34: SET 'NUM,1
|
?CCL34: GETB P-SYNTAX,P-SBITS
|
||||||
?CND25: ZERO? OBJ \?CND35
|
BAND STACK,P-SONUMS
|
||||||
EQUAL? ICNT,1 \?CND35
|
EQUAL? STACK,2 \?CCL36
|
||||||
|
SET 'NUM,ICNT
|
||||||
|
JUMP ?CND25
|
||||||
|
?CCL36: SET 'NUM,1
|
||||||
|
?CND25: ZERO? OBJ \?CND37
|
||||||
|
EQUAL? ICNT,1 \?CND37
|
||||||
GET P-PRSI,1 >OBJ
|
GET P-PRSI,1 >OBJ
|
||||||
?CND35: EQUAL? PRSA,V?WALK \?CCL41
|
?CND37: EQUAL? PRSA,V?WALK \?CCL43
|
||||||
CALL PERFORM-PRSA,PRSO >V
|
CALL PERFORM,PRSA,PRSO >V
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL41: ZERO? NUM \?CCL43
|
?CCL43: ZERO? NUM \?CCL45
|
||||||
GETB P-SYNTAX,P-SBITS
|
GETB P-SYNTAX,P-SBITS
|
||||||
BAND STACK,P-SONUMS
|
BAND STACK,P-SONUMS
|
||||||
ZERO? STACK \?CCL46
|
ZERO? STACK \?CCL48
|
||||||
CALL PERFORM-PRSA >V
|
CALL PERFORM,PRSA >V
|
||||||
SET 'PRSO,FALSE-VALUE
|
SET 'PRSO,FALSE-VALUE
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL46: ZERO? LIT \?CCL48
|
?CCL48: ZERO? LIT \?CCL50
|
||||||
PRINT TOO-DARK
|
PRINT TOO-DARK
|
||||||
CRLF
|
CRLF
|
||||||
CALL STOP
|
CALL STOP
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL48: PRINTI "There isn't anything to "
|
?CCL50: PRINTI "There isn't anything to "
|
||||||
GET P-ITBL,P-VERBN >TMP
|
GET P-ITBL,P-VERBN >TMP
|
||||||
EQUAL? PRSA,V?TELL \?CCL51
|
EQUAL? PRSA,V?TELL \?CCL53
|
||||||
PRINTI "talk to"
|
PRINTI "talk to"
|
||||||
JUMP ?CND49
|
JUMP ?CND51
|
||||||
?CCL51: ZERO? P-OFLAG \?CTR52
|
?CCL53: ZERO? P-OFLAG \?CTR54
|
||||||
ZERO? P-MERGED /?CCL53
|
ZERO? P-MERGED /?CCL55
|
||||||
?CTR52: GET TMP,0
|
?CTR54: GET TMP,0
|
||||||
PRINTB STACK
|
PRINTB STACK
|
||||||
JUMP ?CND49
|
JUMP ?CND51
|
||||||
?CCL53: GETB TMP,2 >?TMP1
|
?CCL55: GETB TMP,2 >?TMP1
|
||||||
GETB TMP,3
|
GETB TMP,3
|
||||||
CALL WORD-PRINT,?TMP1,STACK
|
CALL WORD-PRINT,?TMP1,STACK
|
||||||
?CND49: PRINTC 33
|
?CND51: PRINTC 33
|
||||||
CRLF
|
CRLF
|
||||||
SET 'V,FALSE-VALUE
|
SET 'V,FALSE-VALUE
|
||||||
CALL STOP
|
CALL STOP
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL43: SET 'P-NOT-HERE,0
|
?CCL45: SET 'P-NOT-HERE,0
|
||||||
SET 'P-MULT,FALSE-VALUE
|
SET 'P-MULT,FALSE-VALUE
|
||||||
GRTR? NUM,1 \?CND56
|
GRTR? NUM,1 \?CND58
|
||||||
SET 'P-MULT,TRUE-VALUE
|
SET 'P-MULT,TRUE-VALUE
|
||||||
?CND56: SET 'TMP,FALSE-VALUE
|
?CND58: SET 'TMP,FALSE-VALUE
|
||||||
?PRG58: IGRTR? 'CNT,NUM \?CCL62
|
?PRG60: IGRTR? 'CNT,NUM \?CCL64
|
||||||
GRTR? P-NOT-HERE,0 \?CCL65
|
GRTR? P-NOT-HERE,0 \?CCL67
|
||||||
PRINTI "[The "
|
PRINTI "[The "
|
||||||
EQUAL? P-NOT-HERE,NUM /?CND66
|
EQUAL? P-NOT-HERE,NUM /?CND68
|
||||||
PRINTI "other "
|
PRINTI "other "
|
||||||
?CND66: PRINTI "object"
|
?CND68: PRINTI "object"
|
||||||
EQUAL? P-NOT-HERE,1 /?CND68
|
EQUAL? P-NOT-HERE,1 /?CND70
|
||||||
PRINTC 115
|
PRINTC 115
|
||||||
?CND68: PRINTI " that you mentioned "
|
?CND70: PRINTI " that you mentioned "
|
||||||
EQUAL? P-NOT-HERE,1 /?CCL72
|
EQUAL? P-NOT-HERE,1 /?CCL74
|
||||||
PRINTI "are"
|
PRINTI "are"
|
||||||
JUMP ?CND70
|
JUMP ?CND72
|
||||||
?CCL72: PRINTI "is"
|
?CCL74: PRINTI "is"
|
||||||
?CND70: PRINTI "n't here.]"
|
?CND72: PRINTI "n't here.]"
|
||||||
CRLF
|
CRLF
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL65: ZERO? TMP \?CND39
|
?CCL67: ZERO? TMP \?CND41
|
||||||
CALL REFERRING
|
CALL REFERRING
|
||||||
JUMP ?CND39
|
JUMP ?CND41
|
||||||
?CCL62: ZERO? PTBL /?CCL76
|
?CCL64: ZERO? PTBL /?CCL78
|
||||||
GET P-PRSO,CNT >OBJ1
|
GET P-PRSO,CNT >OBJ1
|
||||||
JUMP ?CND74
|
JUMP ?CND76
|
||||||
?CCL76: GET P-PRSI,CNT >OBJ1
|
?CCL78: GET P-PRSI,CNT >OBJ1
|
||||||
?CND74: ZERO? PTBL /?CCL79
|
?CND76: ZERO? PTBL /?CCL81
|
||||||
SET 'PRSO,OBJ1
|
SET 'PRSO,OBJ1
|
||||||
JUMP ?CND77
|
JUMP ?CND79
|
||||||
?CCL79: SET 'PRSO,OBJ
|
?CCL81: SET 'PRSO,OBJ
|
||||||
?CND77: ZERO? PTBL /?CCL82
|
?CND79: ZERO? PTBL /?CCL84
|
||||||
SET 'PRSI,OBJ
|
SET 'PRSI,OBJ
|
||||||
JUMP ?CND80
|
JUMP ?CND82
|
||||||
?CCL82: SET 'PRSI,OBJ1
|
?CCL84: SET 'PRSI,OBJ1
|
||||||
?CND80: GRTR? NUM,1 /?CCL84
|
?CND82: GRTR? NUM,1 /?CCL86
|
||||||
GET P-ITBL,P-NC1
|
GET P-ITBL,P-NC1
|
||||||
GET STACK,0
|
GET STACK,0
|
||||||
EQUAL? STACK,W?ALL,W?BOTH,W?EVERYT \?CND83
|
EQUAL? STACK,W?ALL,W?BOTH,W?EVERYT \?CND85
|
||||||
?CCL84: CALL DONT-ALL,OBJ1
|
?CCL86: CALL DONT-ALL,OBJ1
|
||||||
ZERO? STACK \?PRG58
|
ZERO? STACK \?PRG60
|
||||||
EQUAL? OBJ1,IT \?CCL92
|
EQUAL? OBJ1,IT \?CCL94
|
||||||
PRINTD P-IT-OBJECT
|
PRINTD P-IT-OBJECT
|
||||||
JUMP ?CND90
|
JUMP ?CND92
|
||||||
?CCL92: EQUAL? OBJ1,HIM \?CCL94
|
?CCL94: EQUAL? OBJ1,HIM \?CCL96
|
||||||
PRINTD P-HIM-OBJECT
|
PRINTD P-HIM-OBJECT
|
||||||
JUMP ?CND90
|
JUMP ?CND92
|
||||||
?CCL94: PRINTD OBJ1
|
?CCL96: PRINTD OBJ1
|
||||||
?CND90: PRINTI ": "
|
?CND92: PRINTI ": "
|
||||||
?CND83: SET 'TMP,TRUE-VALUE
|
?CND85: SET 'TMP,TRUE-VALUE
|
||||||
CALL PERFORM-PRSA,PRSO,PRSI >V
|
CALL PERFORM,PRSA,PRSO,PRSI >V
|
||||||
EQUAL? V,M-FATAL \?PRG58
|
EQUAL? V,M-FATAL \?PRG60
|
||||||
?CND39: EQUAL? V,M-FATAL \?CND97
|
|
||||||
SET 'P-CONT,FALSE-VALUE
|
SET 'P-CONT,FALSE-VALUE
|
||||||
?CND97: CALL CLOCKER-VERB?
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
ZERO? STACK /?CCL101
|
?CND41: EQUAL? V,M-FATAL \?CND99
|
||||||
EQUAL? PRSA,V?TELL /?CCL101
|
SET 'P-CONT,FALSE-VALUE
|
||||||
ZERO? P-WON /?CCL101
|
?CND99: CALL CLOCKER-VERB?
|
||||||
|
ZERO? STACK /?CCL103
|
||||||
|
EQUAL? PRSA,V?TELL /?CCL103
|
||||||
|
ZERO? P-WON /?CCL103
|
||||||
CALL RUNNING?,I-SPACETRUCK
|
CALL RUNNING?,I-SPACETRUCK
|
||||||
ZERO? STACK /?CND105
|
ZERO? STACK /?CND107
|
||||||
LESS? SPACETRUCK-COUNTER,5 \?CND105
|
LESS? SPACETRUCK-COUNTER,5 \?CND107
|
||||||
SET 'C-ELAPSED,240
|
SET 'C-ELAPSED,240
|
||||||
?CND105: GETP HERE,P?ACTION
|
?CND107: GETP HERE,P?ACTION
|
||||||
CALL STACK,M-END >V
|
CALL STACK,M-END >V
|
||||||
JUMP ?CND1
|
JUMP ?CND1
|
||||||
?CCL101: SET 'C-ELAPSED,0
|
?CCL103: SET 'C-ELAPSED,0
|
||||||
JUMP ?CND1
|
JUMP ?CND1
|
||||||
?CCL3: SET 'P-CONT,FALSE-VALUE
|
?CCL3: SET 'P-CONT,FALSE-VALUE
|
||||||
?CND1: ZERO? P-WON /?CND109
|
?CND1: ZERO? P-WON /?CND111
|
||||||
ADD INTERNAL-MOVES,C-ELAPSED >INTERNAL-MOVES
|
ADD INTERNAL-MOVES,C-ELAPSED >INTERNAL-MOVES
|
||||||
FSET? CHRONOMETER,WORNBIT \?CCL113
|
FSET? CHRONOMETER,WORNBIT \?CCL115
|
||||||
LESS? DAY,3 \?CCL116
|
LESS? DAY,3 \?CCL118
|
||||||
SET 'MOVES,INTERNAL-MOVES
|
SET 'MOVES,INTERNAL-MOVES
|
||||||
JUMP ?CND111
|
JUMP ?CND113
|
||||||
?CCL116: SET 'MOVES,9947
|
?CCL118: SET 'MOVES,9947
|
||||||
JUMP ?CND111
|
JUMP ?CND113
|
||||||
?CCL113: SET 'MOVES,0
|
?CCL115: SET 'MOVES,0
|
||||||
?CND111: ZERO? C-ELAPSED /?CND117
|
?CND113: ZERO? C-ELAPSED /?CND119
|
||||||
CALL CLOCKER >V
|
CALL CLOCKER >V
|
||||||
?CND117: SET 'POSTPONE-ATTACK,FALSE-VALUE
|
?CND119: SET 'POSTPONE-ATTACK,FALSE-VALUE
|
||||||
SET 'FLOYD-TRYTAKEN,FALSE-VALUE
|
SET 'FLOYD-TRYTAKEN,FALSE-VALUE
|
||||||
SET 'P-PRSA-WORD,FALSE-VALUE
|
SET 'P-PRSA-WORD,FALSE-VALUE
|
||||||
|
SET 'P-NUMBER,0
|
||||||
SET 'PRSA,FALSE-VALUE
|
SET 'PRSA,FALSE-VALUE
|
||||||
SET 'PRSO,FALSE-VALUE
|
SET 'PRSO,FALSE-VALUE
|
||||||
SET 'PRSI,FALSE-VALUE
|
SET 'PRSI,FALSE-VALUE
|
||||||
?CND109: SET 'C-ELAPSED,7
|
?CND111: SET 'C-ELAPSED,7
|
||||||
RETURN C-ELAPSED
|
RETURN C-ELAPSED
|
||||||
|
|
||||||
|
|
||||||
|
@ -335,87 +343,68 @@ START::
|
||||||
PRINTR "?]"
|
PRINTR "?]"
|
||||||
|
|
||||||
|
|
||||||
.FUNCT PERFORM-PRSA,O=0,I=0
|
|
||||||
CALL PERFORM,PRSA,O,I
|
|
||||||
RTRUE
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT PERFORM,A,O=0,I=0,V,OA,OO,OI
|
.FUNCT PERFORM,A,O=0,I=0,V,OA,OO,OI
|
||||||
ZERO? DEBUG /?CND1
|
SET 'OA,PRSA
|
||||||
PRINTI "[Perform: "
|
|
||||||
PRINTN A
|
|
||||||
ZERO? O /?CND3
|
|
||||||
PRINTI " / PRSO = "
|
|
||||||
EQUAL? A,V?WALK /?CCL7
|
|
||||||
PRINTD O
|
|
||||||
JUMP ?CND3
|
|
||||||
?CCL7: PRINTN O
|
|
||||||
?CND3: ZERO? I /?CND8
|
|
||||||
PRINTI " / PRSI = "
|
|
||||||
PRINTD I
|
|
||||||
?CND8: PRINTC 93
|
|
||||||
CRLF
|
|
||||||
?CND1: SET 'OA,PRSA
|
|
||||||
SET 'OO,PRSO
|
SET 'OO,PRSO
|
||||||
SET 'OI,PRSI
|
SET 'OI,PRSI
|
||||||
SET 'PRSA,A
|
SET 'PRSA,A
|
||||||
ZERO? P-WALK-DIR \?CND10
|
ZERO? P-WALK-DIR \?CND1
|
||||||
EQUAL? IT,O,I \?CND10
|
EQUAL? IT,O,I \?CND1
|
||||||
CALL VISIBLE?,P-IT-OBJECT
|
CALL VISIBLE?,P-IT-OBJECT
|
||||||
ZERO? STACK /?CCL16
|
ZERO? STACK /?CCL7
|
||||||
EQUAL? IT,O \?CCL19
|
EQUAL? IT,O \?CCL10
|
||||||
SET 'O,P-IT-OBJECT
|
SET 'O,P-IT-OBJECT
|
||||||
JUMP ?CND10
|
JUMP ?CND1
|
||||||
?CCL19: SET 'I,P-IT-OBJECT
|
?CCL10: SET 'I,P-IT-OBJECT
|
||||||
?CND10: ZERO? P-WALK-DIR \?CND25
|
?CND1: ZERO? P-WALK-DIR \?CND16
|
||||||
EQUAL? HIM,O,I \?CND25
|
EQUAL? HIM,O,I \?CND16
|
||||||
CALL VISIBLE?,P-HIM-OBJECT
|
CALL VISIBLE?,P-HIM-OBJECT
|
||||||
ZERO? STACK /?CCL31
|
ZERO? STACK /?CCL22
|
||||||
EQUAL? HIM,O \?CCL34
|
EQUAL? HIM,O \?CCL25
|
||||||
SET 'O,P-HIM-OBJECT
|
SET 'O,P-HIM-OBJECT
|
||||||
JUMP ?CND25
|
JUMP ?CND16
|
||||||
?CCL16: ZERO? I \?CCL22
|
?CCL7: ZERO? I \?CCL13
|
||||||
CALL FAKE-ORPHAN,TRUE-VALUE
|
CALL FAKE-ORPHAN,TRUE-VALUE
|
||||||
RETURN 8
|
RETURN 8
|
||||||
?CCL22: CALL REFERRING
|
?CCL13: CALL REFERRING
|
||||||
RETURN 8
|
RETURN 8
|
||||||
?CCL34: SET 'I,P-HIM-OBJECT
|
?CCL25: SET 'I,P-HIM-OBJECT
|
||||||
?CND25: SET 'PRSO,O
|
?CND16: SET 'PRSO,O
|
||||||
SET 'PRSI,I
|
SET 'PRSI,I
|
||||||
EQUAL? A,V?WALK /?CCL42
|
EQUAL? A,V?WALK /?CCL33
|
||||||
EQUAL? NOT-HERE-OBJECT,PRSO,PRSI \?CCL42
|
EQUAL? NOT-HERE-OBJECT,PRSO,PRSI \?CCL33
|
||||||
CALL D-APPLY,STR?1,NOT-HERE-OBJECT-F >V
|
CALL D-APPLY,STR?1,NOT-HERE-OBJECT-F >V
|
||||||
ZERO? V /?CCL42
|
ZERO? V /?CCL33
|
||||||
SET 'P-WON,FALSE-VALUE
|
SET 'P-WON,FALSE-VALUE
|
||||||
JUMP ?CND40
|
JUMP ?CND31
|
||||||
?CCL31: ZERO? I \?CCL37
|
?CCL22: ZERO? I \?CCL28
|
||||||
CALL FAKE-ORPHAN
|
CALL FAKE-ORPHAN
|
||||||
RETURN 8
|
RETURN 8
|
||||||
?CCL37: CALL REFERRING,TRUE-VALUE
|
?CCL28: CALL REFERRING,TRUE-VALUE
|
||||||
RETURN 8
|
RETURN 8
|
||||||
?CCL42: SET 'O,PRSO
|
?CCL33: SET 'O,PRSO
|
||||||
SET 'I,PRSI
|
SET 'I,PRSI
|
||||||
CALL THIS-IS-IT,PRSI
|
CALL THIS-IS-IT,PRSI
|
||||||
CALL THIS-IS-IT,PRSO
|
CALL THIS-IS-IT,PRSO
|
||||||
GETP WINNER,P?ACTION
|
GETP WINNER,P?ACTION
|
||||||
CALL D-APPLY,STR?2,STACK >V
|
CALL D-APPLY,STR?2,STACK >V
|
||||||
ZERO? V \?CND40
|
ZERO? V \?CND31
|
||||||
GET PREACTIONS,A
|
GET PREACTIONS,A
|
||||||
CALL D-APPLY,STR?3,STACK >V
|
CALL D-APPLY,STR?3,STACK >V
|
||||||
ZERO? V \?CND40
|
ZERO? V \?CND31
|
||||||
ZERO? I /?CCL52
|
ZERO? I /?CCL43
|
||||||
GETP I,P?ACTION
|
GETP I,P?ACTION
|
||||||
CALL D-APPLY,STR?4,STACK >V
|
CALL D-APPLY,STR?4,STACK >V
|
||||||
ZERO? V \?CND40
|
ZERO? V \?CND31
|
||||||
?CCL52: ZERO? O /?CCL56
|
?CCL43: ZERO? O /?CCL47
|
||||||
EQUAL? A,V?WALK /?CCL56
|
EQUAL? A,V?WALK /?CCL47
|
||||||
GETP O,P?ACTION
|
GETP O,P?ACTION
|
||||||
CALL D-APPLY,STR?5,STACK >V
|
CALL D-APPLY,STR?5,STACK >V
|
||||||
ZERO? V \?CND40
|
ZERO? V \?CND31
|
||||||
?CCL56: GET ACTIONS,A
|
?CCL47: GET ACTIONS,A
|
||||||
CALL D-APPLY,FALSE-VALUE,STACK >V
|
CALL D-APPLY,FALSE-VALUE,STACK >V
|
||||||
ZERO? V /?CND40
|
ZERO? V /?CND31
|
||||||
?CND40: SET 'PRSA,OA
|
?CND31: SET 'PRSA,OA
|
||||||
SET 'PRSO,OO
|
SET 'PRSO,OO
|
||||||
SET 'PRSI,OI
|
SET 'PRSI,OI
|
||||||
RETURN V
|
RETURN V
|
||||||
|
@ -423,30 +412,11 @@ START::
|
||||||
|
|
||||||
.FUNCT D-APPLY,STR,FCN,FOO=0,RES
|
.FUNCT D-APPLY,STR,FCN,FOO=0,RES
|
||||||
ZERO? FCN /FALSE
|
ZERO? FCN /FALSE
|
||||||
ZERO? DEBUG /?CND4
|
ZERO? FOO /?CCL6
|
||||||
ZERO? STR \?CCL8
|
|
||||||
PRINTI " Default ->"
|
|
||||||
CRLF
|
|
||||||
JUMP ?CND4
|
|
||||||
?CCL8: PRINTI " "
|
|
||||||
PRINT STR
|
|
||||||
PRINTI " -> "
|
|
||||||
?CND4: ZERO? FOO /?CCL11
|
|
||||||
CALL FCN,FOO >RES
|
CALL FCN,FOO >RES
|
||||||
JUMP ?CND9
|
|
||||||
?CCL11: CALL FCN >RES
|
|
||||||
?CND9: ZERO? DEBUG /?CND12
|
|
||||||
ZERO? STR /?CND12
|
|
||||||
EQUAL? RES,M-FATAL \?CCL18
|
|
||||||
PRINTI "Fatal"
|
|
||||||
CRLF
|
|
||||||
RETURN RES
|
RETURN RES
|
||||||
?CCL18: ZERO? RES \?CCL20
|
?CCL6: CALL FCN >RES
|
||||||
PRINTI "Not handled"
|
|
||||||
RETURN RES
|
RETURN RES
|
||||||
?CCL20: PRINTI "Handled"
|
|
||||||
CRLF
|
|
||||||
?CND12: RETURN RES
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT DEQUEUE,RTN
|
.FUNCT DEQUEUE,RTN
|
||||||
|
|
33
misc.zil
33
misc.zil
|
@ -157,9 +157,9 @@
|
||||||
<CONSTANT M-ENTER 3>
|
<CONSTANT M-ENTER 3>
|
||||||
<CONSTANT M-EXIT 4>
|
<CONSTANT M-EXIT 4>
|
||||||
<CONSTANT M-LOOK 5>
|
<CONSTANT M-LOOK 5>
|
||||||
<CONSTANT M-FATAL 6>
|
<CONSTANT M-OBJDESC 6>
|
||||||
<CONSTANT M-OBJDESC 7>
|
<CONSTANT M-OBJDESC? 7>
|
||||||
<CONSTANT M-OBJDESC? 8>
|
<CONSTANT M-FATAL 8> ;"must always be 8--compiler turns RFATAL into RETURN 8"
|
||||||
|
|
||||||
<ZSTART GO> ;"else, ZIL gets confused between verb-word GO and routine GO"
|
<ZSTART GO> ;"else, ZIL gets confused between verb-word GO and routine GO"
|
||||||
|
|
||||||
|
@ -259,16 +259,18 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<SET TBL ,P-PRSI>
|
<SET TBL ,P-PRSI>
|
||||||
<SET OBJ <GET ,P-PRSO 1>>
|
<SET OBJ <GET ,P-PRSO 1>>
|
||||||
.ICNT)
|
.ICNT)
|
||||||
(T
|
(<EQUAL? <BAND <GETB ,P-SYNTAX ,P-SBITS> ,P-SONUMS> 2>
|
||||||
|
.ICNT ;"catch case of 'give floyd all' 4/27/87 PDL")
|
||||||
|
(T
|
||||||
1)>>
|
1)>>
|
||||||
<COND (<AND <NOT .OBJ>
|
<COND (<AND <NOT .OBJ>
|
||||||
<1? .ICNT>>
|
<1? .ICNT>>
|
||||||
<SET OBJ <GET ,P-PRSI 1>>)>
|
<SET OBJ <GET ,P-PRSI 1>>)>
|
||||||
<COND (<EQUAL? ,PRSA ,V?WALK>
|
<COND (<EQUAL? ,PRSA ,V?WALK>
|
||||||
<SET V <PERFORM-PRSA ,PRSO>>)
|
<SET V <PERFORM ,PRSA ,PRSO>>)
|
||||||
(<0? .NUM>
|
(<0? .NUM>
|
||||||
<COND (<0? <BAND <GETB ,P-SYNTAX ,P-SBITS> ,P-SONUMS>>
|
<COND (<0? <BAND <GETB ,P-SYNTAX ,P-SBITS> ,P-SONUMS>>
|
||||||
<SET V <PERFORM-PRSA>>
|
<SET V <PERFORM ,PRSA>>
|
||||||
<SETG PRSO <>>)
|
<SETG PRSO <>>)
|
||||||
(<NOT ,LIT>
|
(<NOT ,LIT>
|
||||||
<TELL ,TOO-DARK CR>
|
<TELL ,TOO-DARK CR>
|
||||||
|
@ -338,8 +340,10 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<TELL D .OBJ1>)>
|
<TELL D .OBJ1>)>
|
||||||
<TELL ": ">)>)>
|
<TELL ": ">)>)>
|
||||||
<SET TMP T>
|
<SET TMP T>
|
||||||
<SET V <PERFORM-PRSA ,PRSO ,PRSI>>
|
<SET V <PERFORM ,PRSA ,PRSO ,PRSI>>
|
||||||
<COND (<EQUAL? .V ,M-FATAL>
|
<COND (<EQUAL? .V ,M-FATAL>
|
||||||
|
<SETG P-CONT <>>
|
||||||
|
<SETG QUOTE-FLAG <>>
|
||||||
<RETURN>)>)>>)>
|
<RETURN>)>)>>)>
|
||||||
<COND (<EQUAL? .V ,M-FATAL>
|
<COND (<EQUAL? .V ,M-FATAL>
|
||||||
<SETG P-CONT <>>)>
|
<SETG P-CONT <>>)>
|
||||||
|
@ -370,6 +374,7 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<SETG P-PRSA-WORD <>>
|
<SETG P-PRSA-WORD <>>
|
||||||
;"else, when input is just a direction, P-PRSA-WORD will remain
|
;"else, when input is just a direction, P-PRSA-WORD will remain
|
||||||
whatever it was for the previous turn"
|
whatever it was for the previous turn"
|
||||||
|
<SETG P-NUMBER 0>
|
||||||
<SETG PRSA <>>
|
<SETG PRSA <>>
|
||||||
<SETG PRSO <>>
|
<SETG PRSO <>>
|
||||||
<SETG PRSI <>>)>
|
<SETG PRSI <>>)>
|
||||||
|
@ -460,12 +465,12 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<PREP-PRINT <GETB ,P-SYNTAX ,P-SPREP1>>
|
<PREP-PRINT <GETB ,P-SYNTAX ,P-SPREP1>>
|
||||||
<TELL "?]" CR>>
|
<TELL "?]" CR>>
|
||||||
|
|
||||||
<ROUTINE PERFORM-PRSA ("OPTIONAL" (O <>) (I <>))
|
;<ROUTINE PERFORM-PRSA ("OPTIONAL" (O <>) (I <>))
|
||||||
<PERFORM ,PRSA .O .I>
|
<PERFORM ,PRSA .O .I>
|
||||||
<RTRUE>>
|
<RTRUE>>
|
||||||
|
|
||||||
<ROUTINE PERFORM (A "OPTIONAL" (O <>) (I <>) "AUX" V OA OO OI)
|
<ROUTINE PERFORM (A "OPTIONAL" (O <>) (I <>) "AUX" V OA OO OI)
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[Perform: ">
|
<TELL "[Perform: ">
|
||||||
%<COND (<GASSIGNED? ZILCH>
|
%<COND (<GASSIGNED? ZILCH>
|
||||||
'<TELL N .A>)
|
'<TELL N .A>)
|
||||||
|
@ -483,7 +488,8 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<SET OO ,PRSO>
|
<SET OO ,PRSO>
|
||||||
<SET OI ,PRSI>
|
<SET OI ,PRSI>
|
||||||
<SETG PRSA .A>
|
<SETG PRSA .A>
|
||||||
<COND (<AND <NOT ,P-WALK-DIR> <EQUAL? ,IT .O .I>>
|
<COND (<AND <NOT ,P-WALK-DIR>
|
||||||
|
<EQUAL? ,IT .O .I>>
|
||||||
<COND (<VISIBLE? ,P-IT-OBJECT>
|
<COND (<VISIBLE? ,P-IT-OBJECT>
|
||||||
<COND (<EQUAL? ,IT .O>
|
<COND (<EQUAL? ,IT .O>
|
||||||
<SET O ,P-IT-OBJECT>)
|
<SET O ,P-IT-OBJECT>)
|
||||||
|
@ -556,9 +562,10 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
.V>
|
.V>
|
||||||
|
|
||||||
<ROUTINE D-APPLY (STR FCN "OPTIONAL" (FOO <>) "AUX" RES)
|
<ROUTINE D-APPLY (STR FCN "OPTIONAL" (FOO <>) "AUX" RES)
|
||||||
<COND (<NOT .FCN> <>)
|
<COND (<NOT .FCN>
|
||||||
|
<>)
|
||||||
(T
|
(T
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<COND (<NOT .STR>
|
<COND (<NOT .STR>
|
||||||
<TELL " Default ->" CR>)
|
<TELL " Default ->" CR>)
|
||||||
(T
|
(T
|
||||||
|
@ -567,7 +574,7 @@ Alpha-Mu-79 to pick up a supply of " ,FORM-NAME ,ELLIPSIS>
|
||||||
<APPLY .FCN .FOO>)
|
<APPLY .FCN .FOO>)
|
||||||
(T
|
(T
|
||||||
<APPLY .FCN>)>>
|
<APPLY .FCN>)>>
|
||||||
<COND (<AND ,DEBUG
|
;<COND (<AND ,DEBUG
|
||||||
.STR>
|
.STR>
|
||||||
<COND (<EQUAL? .RES ,M-FATAL>
|
<COND (<EQUAL? .RES ,M-FATAL>
|
||||||
<TELL "Fatal" CR>)
|
<TELL "Fatal" CR>)
|
||||||
|
|
484
parser.zap
484
parser.zap
|
@ -44,7 +44,6 @@
|
||||||
EQUAL? PROTAGONIST,WINNER \?CND17
|
EQUAL? PROTAGONIST,WINNER \?CND17
|
||||||
CRLF
|
CRLF
|
||||||
?CND17: SET 'RESERVE-PTR,FALSE-VALUE
|
?CND17: SET 'RESERVE-PTR,FALSE-VALUE
|
||||||
SET 'P-CONT,FALSE-VALUE
|
|
||||||
JUMP ?CND14
|
JUMP ?CND14
|
||||||
?CCL16: ZERO? P-CONT /?CCL22
|
?CCL16: ZERO? P-CONT /?CCL22
|
||||||
SET 'PTR,P-CONT
|
SET 'PTR,P-CONT
|
||||||
|
@ -52,7 +51,6 @@
|
||||||
ZERO? ELIMINATE-CR \?CND23
|
ZERO? ELIMINATE-CR \?CND23
|
||||||
CRLF
|
CRLF
|
||||||
?CND23: SET 'ELIMINATE-CR,FALSE-VALUE
|
?CND23: SET 'ELIMINATE-CR,FALSE-VALUE
|
||||||
SET 'P-CONT,FALSE-VALUE
|
|
||||||
JUMP ?CND14
|
JUMP ?CND14
|
||||||
?CCL22: SET 'WINNER,PROTAGONIST
|
?CCL22: SET 'WINNER,PROTAGONIST
|
||||||
SET 'QUOTE-FLAG,FALSE-VALUE
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
|
@ -63,29 +61,32 @@
|
||||||
ZERO? VERBOSITY /?CND29
|
ZERO? VERBOSITY /?CND29
|
||||||
CRLF
|
CRLF
|
||||||
?CND29: PRINTC 62
|
?CND29: PRINTC 62
|
||||||
READ P-INBUF,P-LEXV
|
GET OOPS-TABLE,O-PTR
|
||||||
|
ZERO? STACK \?CND31
|
||||||
|
PUT OOPS-TABLE,O-END,FALSE-VALUE
|
||||||
|
?CND31: READ P-INBUF,P-LEXV
|
||||||
GETB P-LEXV,P-LEXWORDS >OLEN
|
GETB P-LEXV,P-LEXWORDS >OLEN
|
||||||
?CND14: GETB P-LEXV,P-LEXWORDS >P-LEN
|
?CND14: GETB P-LEXV,P-LEXWORDS >P-LEN
|
||||||
ZERO? P-LEN \?CCL33
|
ZERO? P-LEN \?CCL35
|
||||||
PRINTI "[I beg your pardon?]"
|
PRINTI "[I beg your pardon?]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL33: GET P-LEXV,PTR
|
?CCL35: GET P-LEXV,PTR
|
||||||
EQUAL? STACK,W?OOPS \?CCL35
|
EQUAL? STACK,W?OOPS \?CCL37
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
GET P-LEXV,STACK
|
GET P-LEXV,STACK
|
||||||
EQUAL? STACK,W?PERIOD,W?COMMA \?CND36
|
EQUAL? STACK,W?PERIOD,W?COMMA \?CND38
|
||||||
ADD PTR,P-LEXELEN >PTR
|
ADD PTR,P-LEXELEN >PTR
|
||||||
DEC 'P-LEN
|
DEC 'P-LEN
|
||||||
?CND36: GRTR? P-LEN,1 /?CCL40
|
?CND38: GRTR? P-LEN,1 /?CCL42
|
||||||
CALL CANT-USE-THAT-WAY,STR?6
|
CALL CANT-USE-THAT-WAY,STR?6
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL40: GET OOPS-TABLE,O-PTR
|
?CCL42: GET OOPS-TABLE,O-PTR
|
||||||
ZERO? STACK /?CCL42
|
ZERO? STACK /?CCL44
|
||||||
GRTR? P-LEN,2 \?CND43
|
GRTR? P-LEN,2 \?CND45
|
||||||
PRINTI "[Warning: Only the first word after OOPS is used.]"
|
PRINTI "[Warning: Only the first word after OOPS is used.]"
|
||||||
CRLF
|
CRLF
|
||||||
?CND43: GET OOPS-TABLE,O-PTR >?TMP1
|
?CND45: GET OOPS-TABLE,O-PTR >?TMP1
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
GET P-LEXV,STACK
|
GET P-LEXV,STACK
|
||||||
PUT AGAIN-LEXV,?TMP1,STACK
|
PUT AGAIN-LEXV,?TMP1,STACK
|
||||||
|
@ -104,67 +105,72 @@
|
||||||
GETB P-LEXV,P-LEXWORDS >P-LEN
|
GETB P-LEXV,P-LEXWORDS >P-LEN
|
||||||
GET OOPS-TABLE,O-START >PTR
|
GET OOPS-TABLE,O-START >PTR
|
||||||
CALL INBUF-STUFF,P-INBUF,OOPS-INBUF
|
CALL INBUF-STUFF,P-INBUF,OOPS-INBUF
|
||||||
JUMP ?CND31
|
JUMP ?CND33
|
||||||
?CCL42: PUT OOPS-TABLE,O-END,FALSE-VALUE
|
?CCL44: PUT OOPS-TABLE,O-END,FALSE-VALUE
|
||||||
PRINTI "[There was no word to replace!]"
|
PRINTI "[There was no word to replace!]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL35: PUT OOPS-TABLE,O-END,FALSE-VALUE
|
?CCL37: ZERO? P-CONT \?CND33
|
||||||
?CND31: GET P-LEXV,PTR
|
PUT OOPS-TABLE,O-END,FALSE-VALUE
|
||||||
EQUAL? STACK,W?AGAIN,W?G \?CCL47
|
?CND33: SET 'P-CONT,FALSE-VALUE
|
||||||
ZERO? P-OFLAG /?CCL50
|
GET P-LEXV,PTR
|
||||||
|
EQUAL? STACK,W?AGAIN,W?G \?CCL50
|
||||||
|
GETB OOPS-INBUF,1
|
||||||
|
ZERO? STACK \?CCL53
|
||||||
|
PRINTI "[What do you want to do again?]"
|
||||||
|
CRLF
|
||||||
|
RFALSE
|
||||||
|
?CCL53: ZERO? P-OFLAG /?CCL55
|
||||||
CALL CANT-USE-THAT-WAY,STR?7
|
CALL CANT-USE-THAT-WAY,STR?7
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL50: ZERO? P-WON \?CCL52
|
?CCL55: ZERO? P-WON \?CCL57
|
||||||
PRINTI "[That would just repeat a mistake!]"
|
PRINTI "[That would just repeat a mistake!]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL52: EQUAL? OWINNER,PROTAGONIST /?CCL54
|
?CCL57: EQUAL? OWINNER,PROTAGONIST /?CCL59
|
||||||
CALL VISIBLE?,OWINNER
|
CALL VISIBLE?,OWINNER
|
||||||
ZERO? STACK \?CCL54
|
ZERO? STACK \?CCL59
|
||||||
PRINTC 91
|
PRINTI "[You can't see "
|
||||||
PRINT YOU-CANT
|
|
||||||
PRINTI "see "
|
|
||||||
PRINTD OWINNER
|
PRINTD OWINNER
|
||||||
PRINTI " any more.]"
|
PRINTI " any more.]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL54: GRTR? P-LEN,1 \?CCL58
|
?CCL59: GRTR? P-LEN,1 \?CCL63
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
GET P-LEXV,STACK
|
GET P-LEXV,STACK
|
||||||
EQUAL? STACK,W?PERIOD,W?COMMA,W?THEN /?CTR60
|
EQUAL? STACK,W?PERIOD,W?COMMA,W?THEN /?CTR65
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
GET P-LEXV,STACK
|
GET P-LEXV,STACK
|
||||||
EQUAL? STACK,W?AND \?CCL61
|
EQUAL? STACK,W?AND \?CCL66
|
||||||
?CTR60: ADD PTR,4 >PTR
|
?CTR65: ADD PTR,4 >PTR
|
||||||
GETB P-LEXV,P-LEXWORDS
|
GETB P-LEXV,P-LEXWORDS
|
||||||
SUB STACK,2
|
SUB STACK,2
|
||||||
PUTB P-LEXV,P-LEXWORDS,STACK
|
PUTB P-LEXV,P-LEXWORDS,STACK
|
||||||
JUMP ?CND48
|
JUMP ?CND51
|
||||||
?CCL61: CALL RECOGNIZE
|
?CCL66: CALL RECOGNIZE
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL58: ADD PTR,P-LEXELEN >PTR
|
?CCL63: ADD PTR,P-LEXELEN >PTR
|
||||||
GETB P-LEXV,P-LEXWORDS
|
GETB P-LEXV,P-LEXWORDS
|
||||||
SUB STACK,1
|
SUB STACK,1
|
||||||
PUTB P-LEXV,P-LEXWORDS,STACK
|
PUTB P-LEXV,P-LEXWORDS,STACK
|
||||||
?CND48: GETB P-LEXV,P-LEXWORDS
|
?CND51: GETB P-LEXV,P-LEXWORDS
|
||||||
GRTR? STACK,0 \?CCL66
|
GRTR? STACK,0 \?CCL71
|
||||||
CALL STUFF,RESERVE-LEXV,P-LEXV
|
CALL STUFF,RESERVE-LEXV,P-LEXV
|
||||||
CALL INBUF-STUFF,RESERVE-INBUF,P-INBUF
|
CALL INBUF-STUFF,RESERVE-INBUF,P-INBUF
|
||||||
SET 'RESERVE-PTR,PTR
|
SET 'RESERVE-PTR,PTR
|
||||||
JUMP ?CND64
|
JUMP ?CND69
|
||||||
?CCL66: SET 'RESERVE-PTR,FALSE-VALUE
|
?CCL71: SET 'RESERVE-PTR,FALSE-VALUE
|
||||||
?CND64: SET 'WINNER,OWINNER
|
?CND69: SET 'WINNER,OWINNER
|
||||||
SET 'P-MERGED,OMERGED
|
SET 'P-MERGED,OMERGED
|
||||||
CALL INBUF-STUFF,P-INBUF,OOPS-INBUF
|
CALL INBUF-STUFF,P-INBUF,OOPS-INBUF
|
||||||
CALL STUFF,P-LEXV,AGAIN-LEXV
|
CALL STUFF,P-LEXV,AGAIN-LEXV
|
||||||
SET 'CNT,-1
|
SET 'CNT,-1
|
||||||
SET 'DIR,AGAIN-DIR
|
SET 'DIR,AGAIN-DIR
|
||||||
?PRG67: IGRTR? 'CNT,P-ITBLLEN /?CND45
|
?PRG72: IGRTR? 'CNT,P-ITBLLEN /?CND48
|
||||||
GET P-OTBL,CNT
|
GET P-OTBL,CNT
|
||||||
PUT P-ITBL,CNT,STACK
|
PUT P-ITBL,CNT,STACK
|
||||||
JUMP ?PRG67
|
JUMP ?PRG72
|
||||||
?CCL47: CALL STUFF,AGAIN-LEXV,P-LEXV
|
?CCL50: CALL STUFF,AGAIN-LEXV,P-LEXV
|
||||||
CALL INBUF-STUFF,OOPS-INBUF,P-INBUF
|
CALL INBUF-STUFF,OOPS-INBUF,P-INBUF
|
||||||
PUT OOPS-TABLE,O-START,PTR
|
PUT OOPS-TABLE,O-START,PTR
|
||||||
MUL 4,P-LEN
|
MUL 4,P-LEN
|
||||||
|
@ -173,77 +179,80 @@
|
||||||
MUL P-LEXELEN,STACK
|
MUL P-LEXELEN,STACK
|
||||||
ADD PTR,STACK
|
ADD PTR,STACK
|
||||||
MUL 2,STACK >LEN
|
MUL 2,STACK >LEN
|
||||||
|
GET OOPS-TABLE,O-END
|
||||||
|
ZERO? STACK \?CND77
|
||||||
SUB LEN,1
|
SUB LEN,1
|
||||||
GETB P-LEXV,STACK >?TMP1
|
GETB P-LEXV,STACK >?TMP1
|
||||||
SUB LEN,2
|
SUB LEN,2
|
||||||
GETB P-LEXV,STACK
|
GETB P-LEXV,STACK
|
||||||
ADD ?TMP1,STACK
|
ADD ?TMP1,STACK
|
||||||
PUT OOPS-TABLE,O-END,STACK
|
PUT OOPS-TABLE,O-END,STACK
|
||||||
SET 'RESERVE-PTR,FALSE-VALUE
|
?CND77: SET 'RESERVE-PTR,FALSE-VALUE
|
||||||
SET 'LEN,P-LEN
|
SET 'LEN,P-LEN
|
||||||
SET 'P-NCN,0
|
SET 'P-NCN,0
|
||||||
SET 'P-GETFLAGS,0
|
SET 'P-GETFLAGS,0
|
||||||
?PRG72: DLESS? 'P-LEN,0 \?CCL76
|
?PRG79: DLESS? 'P-LEN,0 \?CCL83
|
||||||
SET 'QUOTE-FLAG,FALSE-VALUE
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
JUMP ?CND45
|
JUMP ?CND48
|
||||||
?CCL76: GET P-LEXV,PTR >WRD
|
?CCL83: GET P-LEXV,PTR >WRD
|
||||||
CALL NAUGHTY-WORD?,WRD
|
CALL NAUGHTY-WORD?,WRD
|
||||||
ZERO? STACK \FALSE
|
ZERO? STACK \FALSE
|
||||||
GET P-LEXV,PTR >WRD
|
GET P-LEXV,PTR >WRD
|
||||||
ZERO? WRD \?CTR79
|
ZERO? WRD \?CTR86
|
||||||
CALL NUMBER?,PTR >WRD
|
CALL NUMBER?,PTR >WRD
|
||||||
ZERO? WRD /?CCL80
|
ZERO? WRD /?CCL87
|
||||||
?CTR79: CALL NEXT-WORD,PTR >NW
|
?CTR86: CALL NEXT-WORD,PTR >NW
|
||||||
EQUAL? WRD,W?TO \?CCL85
|
EQUAL? WRD,W?TO \?CCL92
|
||||||
EQUAL? VERB,ACT?TELL,ACT?ASK \?CCL85
|
EQUAL? VERB,ACT?TELL,ACT?ASK \?CCL92
|
||||||
CALL WT?,NW,64,1
|
CALL WT?,NW,64,1
|
||||||
ZERO? STACK /?CCL85
|
ZERO? STACK /?CCL92
|
||||||
PUT P-ITBL,P-VERB,ACT?TELL
|
PUT P-ITBL,P-VERB,ACT?TELL
|
||||||
SET 'WRD,W?QUOTE
|
SET 'WRD,W?QUOTE
|
||||||
JUMP ?CND83
|
JUMP ?CND90
|
||||||
?CCL85: EQUAL? WRD,W?THEN \?CND83
|
?CCL92: EQUAL? WRD,W?THEN \?CND90
|
||||||
GRTR? P-LEN,0 \?CND83
|
GRTR? P-LEN,0 \?CND90
|
||||||
ZERO? VERB \?CND83
|
ZERO? VERB \?CND90
|
||||||
ZERO? QUOTE-FLAG \?CND83
|
ZERO? QUOTE-FLAG \?CND90
|
||||||
PUT P-ITBL,P-VERB,ACT?TELL
|
PUT P-ITBL,P-VERB,ACT?TELL
|
||||||
PUT P-ITBL,P-VERBN,0
|
PUT P-ITBL,P-VERBN,0
|
||||||
SET 'WRD,W?QUOTE
|
SET 'WRD,W?QUOTE
|
||||||
?CND83: EQUAL? WRD,W?THEN,W?PERIOD /?CTR95
|
?CND90: EQUAL? WRD,W?THEN,W?PERIOD /?CTR102
|
||||||
EQUAL? WRD,W?QUOTE \?CCL96
|
EQUAL? WRD,W?QUOTE \?CCL103
|
||||||
?CTR95: EQUAL? WRD,W?QUOTE \?CND99
|
?CTR102: EQUAL? WRD,W?QUOTE \?CND106
|
||||||
ZERO? QUOTE-FLAG /?CCL103
|
ZERO? QUOTE-FLAG /?CCL110
|
||||||
SET 'QUOTE-FLAG,FALSE-VALUE
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
JUMP ?CND99
|
JUMP ?CND106
|
||||||
?CCL103: SET 'QUOTE-FLAG,TRUE-VALUE
|
?CCL110: SET 'QUOTE-FLAG,TRUE-VALUE
|
||||||
?CND99: ZERO? P-LEN /?PEN104
|
?CND106: ZERO? P-LEN /?PEN111
|
||||||
ADD PTR,P-LEXELEN >P-CONT
|
ADD PTR,P-LEXELEN >P-CONT
|
||||||
?PEN104: PUTB P-LEXV,P-LEXWORDS,P-LEN
|
?PEN111: PUTB P-LEXV,P-LEXWORDS,P-LEN
|
||||||
JUMP ?CND45
|
JUMP ?CND48
|
||||||
?CCL96: CALL WT?,WRD,16,3 >VAL
|
?CCL103: CALL WT?,WRD,16,3 >VAL
|
||||||
ZERO? VAL /?CCL107
|
ZERO? VAL /?CCL114
|
||||||
EQUAL? VERB,FALSE-VALUE,ACT?WALK,ACT?GO \?CCL107
|
EQUAL? VERB,FALSE-VALUE,ACT?WALK,ACT?GO \?CCL114
|
||||||
EQUAL? LEN,1 /?CTR106
|
EQUAL? LEN,1 /?CTR113
|
||||||
EQUAL? LEN,2 \?PRD113
|
EQUAL? LEN,2 \?PRD120
|
||||||
EQUAL? VERB,ACT?WALK,ACT?GO /?CTR106
|
EQUAL? VERB,ACT?WALK,ACT?GO /?CTR113
|
||||||
?PRD113: EQUAL? NW,W?THEN,W?PERIOD,W?QUOTE \?PRD116
|
?PRD120: EQUAL? NW,W?THEN,W?PERIOD,W?QUOTE \?PRD123
|
||||||
LESS? LEN,2 \?CTR106
|
LESS? LEN,2 \?CTR113
|
||||||
?PRD116: ZERO? QUOTE-FLAG /?PRD119
|
?PRD123: ZERO? QUOTE-FLAG /?PRD126
|
||||||
EQUAL? LEN,2 \?PRD119
|
EQUAL? LEN,2 \?PRD126
|
||||||
EQUAL? NW,W?QUOTE /?CTR106
|
EQUAL? NW,W?QUOTE /?CTR113
|
||||||
?PRD119: GRTR? LEN,2 \?CCL107
|
?PRD126: GRTR? LEN,2 \?CCL114
|
||||||
EQUAL? NW,W?COMMA,W?AND \?CCL107
|
EQUAL? NW,W?COMMA,W?AND \?CCL114
|
||||||
?CTR106: SET 'DIR,VAL
|
?CTR113: SET 'DIR,VAL
|
||||||
EQUAL? NW,W?COMMA,W?AND \?CND125
|
EQUAL? NW,W?COMMA,W?AND \?CND132
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
CALL CHANGE-LEXV,STACK,W?THEN
|
CALL CHANGE-LEXV,STACK,W?THEN
|
||||||
?CND125: GRTR? LEN,2 /?CND74
|
?CND132: GRTR? LEN,2 /?CND81
|
||||||
SET 'QUOTE-FLAG,FALSE-VALUE
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
JUMP ?CND45
|
JUMP ?CND48
|
||||||
?CCL107: CALL WT?,WRD,64,1 >VAL
|
?CCL114: CALL WT?,WRD,64,1 >VAL
|
||||||
ZERO? VAL /?CCL130
|
ZERO? VAL /?CCL137
|
||||||
ZERO? VERB \?CCL130
|
ZERO? VERB \?CCL137
|
||||||
|
ZERO? P-OFLAG \?CND140
|
||||||
SET 'P-PRSA-WORD,WRD
|
SET 'P-PRSA-WORD,WRD
|
||||||
SET 'VERB,VAL
|
?CND140: SET 'VERB,VAL
|
||||||
PUT P-ITBL,P-VERB,VAL
|
PUT P-ITBL,P-VERB,VAL
|
||||||
PUT P-ITBL,P-VERBN,P-VTBL
|
PUT P-ITBL,P-VERBN,P-VTBL
|
||||||
PUT P-VTBL,0,WRD
|
PUT P-VTBL,0,WRD
|
||||||
|
@ -254,70 +263,70 @@
|
||||||
ADD CNT,1
|
ADD CNT,1
|
||||||
GETB P-LEXV,STACK
|
GETB P-LEXV,STACK
|
||||||
PUTB P-VTBL,3,STACK
|
PUTB P-VTBL,3,STACK
|
||||||
JUMP ?CND74
|
JUMP ?CND81
|
||||||
?CCL130: CALL WT?,WRD,8,0 >VAL
|
?CCL137: CALL WT?,WRD,8,0 >VAL
|
||||||
ZERO? VAL \?CTR133
|
ZERO? VAL \?CTR142
|
||||||
EQUAL? WRD,W?ALL,W?ONE,W?BOTH /?CTR133
|
EQUAL? WRD,W?ALL,W?ONE,W?BOTH /?CTR142
|
||||||
EQUAL? WRD,W?EVERYT /?CTR133
|
EQUAL? WRD,W?EVERYT /?CTR142
|
||||||
CALL WT?,WRD,32
|
CALL WT?,WRD,32
|
||||||
ZERO? STACK \?CTR133
|
ZERO? STACK \?CTR142
|
||||||
CALL WT?,WRD,128
|
CALL WT?,WRD,128
|
||||||
ZERO? STACK /?CCL134
|
ZERO? STACK /?CCL143
|
||||||
?CTR133: ZERO? VAL /?CND140
|
?CTR142: ZERO? VAL /?CND149
|
||||||
EQUAL? WRD,W?BACK \?CND140
|
EQUAL? WRD,W?BACK \?CND149
|
||||||
EQUAL? VERB,ACT?HAND /?CND140
|
EQUAL? VERB,ACT?HAND /?CND149
|
||||||
SET 'VAL,0
|
SET 'VAL,0
|
||||||
?CND140: GRTR? P-LEN,0 \?CCL146
|
?CND149: GRTR? P-LEN,0 \?CCL155
|
||||||
EQUAL? NW,W?OF \?CCL146
|
EQUAL? NW,W?OF \?CCL155
|
||||||
ZERO? VAL \?CCL146
|
ZERO? VAL \?CCL155
|
||||||
EQUAL? WRD,W?ALL,W?ONE,W?A /?CCL146
|
EQUAL? WRD,W?ALL,W?ONE,W?A /?CCL155
|
||||||
EQUAL? WRD,W?BOTH,W?EVERYT \?CND74
|
EQUAL? WRD,W?BOTH,W?EVERYT \?CND81
|
||||||
?CCL146: ZERO? VAL /?CCL153
|
?CCL155: ZERO? VAL /?CCL162
|
||||||
ZERO? P-LEN /?CTR152
|
ZERO? P-LEN /?CTR161
|
||||||
EQUAL? NW,W?THEN,W?PERIOD \?CCL153
|
EQUAL? NW,W?THEN,W?PERIOD \?CCL162
|
||||||
?CTR152: SET 'P-END-ON-PREP,TRUE-VALUE
|
?CTR161: SET 'P-END-ON-PREP,TRUE-VALUE
|
||||||
LESS? P-NCN,2 \?CND74
|
LESS? P-NCN,2 \?CND81
|
||||||
PUT P-ITBL,P-PREP1,VAL
|
PUT P-ITBL,P-PREP1,VAL
|
||||||
PUT P-ITBL,P-PREP1N,WRD
|
PUT P-ITBL,P-PREP1N,WRD
|
||||||
JUMP ?CND74
|
JUMP ?CND81
|
||||||
?CCL153: EQUAL? P-NCN,2 \?CCL161
|
?CCL162: EQUAL? P-NCN,2 \?CCL170
|
||||||
PRINTI "[There were too many nouns in that sentence.]"
|
PRINTI "[There were too many nouns in that sentence.]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL161: INC 'P-NCN
|
?CCL170: INC 'P-NCN
|
||||||
CALL CLAUSE,PTR,VAL,WRD >PTR
|
CALL CLAUSE,PTR,VAL,WRD >PTR
|
||||||
ZERO? PTR /FALSE
|
ZERO? PTR /FALSE
|
||||||
LESS? PTR,0 \?CND74
|
LESS? PTR,0 \?CND81
|
||||||
SET 'QUOTE-FLAG,FALSE-VALUE
|
SET 'QUOTE-FLAG,FALSE-VALUE
|
||||||
?CND45: PUT OOPS-TABLE,O-PTR,FALSE-VALUE
|
?CND48: PUT OOPS-TABLE,O-PTR,FALSE-VALUE
|
||||||
ZERO? DIR /?CND172
|
ZERO? DIR /?CND181
|
||||||
SET 'PRSA,V?WALK
|
SET 'PRSA,V?WALK
|
||||||
SET 'PRSO,DIR
|
SET 'PRSO,DIR
|
||||||
SET 'P-OFLAG,FALSE-VALUE
|
SET 'P-OFLAG,FALSE-VALUE
|
||||||
SET 'P-WALK-DIR,DIR
|
SET 'P-WALK-DIR,DIR
|
||||||
SET 'AGAIN-DIR,DIR
|
SET 'AGAIN-DIR,DIR
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL134: CALL WT?,WRD,4
|
?CCL143: CALL WT?,WRD,4
|
||||||
ZERO? STACK \?CND74
|
ZERO? STACK \?CND81
|
||||||
EQUAL? VERB,ACT?TELL \?CCL168
|
EQUAL? VERB,ACT?TELL \?CCL177
|
||||||
CALL WT?,WRD,64,1
|
CALL WT?,WRD,64,1
|
||||||
ZERO? STACK /?CCL168
|
ZERO? STACK /?CCL177
|
||||||
EQUAL? WINNER,PROTAGONIST \?CCL168
|
EQUAL? WINNER,PROTAGONIST \?CCL177
|
||||||
PRINTI "[The way to speak to other characters is described in the instruction manual section entitled ""Communicating With Infocom's Interactive Fiction.""]"
|
PRINTI "[The way to speak to other characters is described in the instruction manual section entitled ""Communicating With Infocom's Interactive Fiction.""]"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL168: CALL CANT-USE,PTR
|
?CCL177: CALL CANT-USE,PTR
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL80: CALL UNKNOWN-WORD,PTR
|
?CCL87: CALL UNKNOWN-WORD,PTR
|
||||||
RFALSE
|
RFALSE
|
||||||
?CND74: SET 'LW,WRD
|
?CND81: SET 'LW,WRD
|
||||||
ADD PTR,P-LEXELEN >PTR
|
ADD PTR,P-LEXELEN >PTR
|
||||||
JUMP ?PRG72
|
JUMP ?PRG79
|
||||||
?CND172: SET 'P-WALK-DIR,FALSE-VALUE
|
?CND181: SET 'P-WALK-DIR,FALSE-VALUE
|
||||||
SET 'AGAIN-DIR,FALSE-VALUE
|
SET 'AGAIN-DIR,FALSE-VALUE
|
||||||
ZERO? P-OFLAG /?CND174
|
ZERO? P-OFLAG /?CND183
|
||||||
CALL ORPHAN-MERGE
|
CALL ORPHAN-MERGE
|
||||||
?CND174: CALL SYNTAX-CHECK
|
?CND183: CALL SYNTAX-CHECK
|
||||||
ZERO? STACK /FALSE
|
ZERO? STACK /FALSE
|
||||||
CALL SNARF-OBJECTS
|
CALL SNARF-OBJECTS
|
||||||
ZERO? STACK /FALSE
|
ZERO? STACK /FALSE
|
||||||
|
@ -412,14 +421,10 @@
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
.FUNCT NEXT-WORD,PTR,NW
|
.FUNCT NEXT-WORD,PTR
|
||||||
ZERO? P-LEN /FALSE
|
ZERO? P-LEN /FALSE
|
||||||
ADD PTR,P-LEXELEN
|
ADD PTR,P-LEXELEN
|
||||||
GET P-LEXV,STACK >NW
|
GET P-LEXV,STACK
|
||||||
ZERO? NW /?CCL6
|
|
||||||
RETURN NW
|
|
||||||
?CCL6: ADD PTR,P-LEXELEN
|
|
||||||
CALL NUMBER?,STACK
|
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
@ -545,8 +550,8 @@
|
||||||
MUL PTR,2
|
MUL PTR,2
|
||||||
ADD P-LEXV,STACK
|
ADD P-LEXV,STACK
|
||||||
GETB STACK,3 >BPTR
|
GETB STACK,3 >BPTR
|
||||||
?PRG1: GRTR? SUM,10000 /FALSE
|
?PRG1: DLESS? 'CNT,0 /?REP2
|
||||||
DLESS? 'CNT,0 /?REP2
|
GRTR? SUM,6553 /FALSE
|
||||||
GETB P-INBUF,BPTR >CHR
|
GETB P-INBUF,BPTR >CHR
|
||||||
LESS? CHR,58 \?CCL10
|
LESS? CHR,58 \?CCL10
|
||||||
GRTR? CHR,47 \?CCL10
|
GRTR? CHR,47 \?CCL10
|
||||||
|
@ -637,15 +642,17 @@
|
||||||
GET STACK,0 >WRD
|
GET STACK,0 >WRD
|
||||||
CALL WT?,WRD,64,1 >?TMP1
|
CALL WT?,WRD,64,1 >?TMP1
|
||||||
GET P-OTBL,P-VERB
|
GET P-OTBL,P-VERB
|
||||||
EQUAL? ?TMP1,STACK \?CCL3
|
EQUAL? ?TMP1,STACK /?CTR2
|
||||||
SET 'VRB,TRUE-VALUE
|
CALL WT?,WRD,32
|
||||||
|
ZERO? STACK /?CCL3
|
||||||
|
?CTR2: SET 'VRB,TRUE-VALUE
|
||||||
SET 'ADJ,TRUE-VALUE
|
SET 'ADJ,TRUE-VALUE
|
||||||
JUMP ?CND1
|
JUMP ?CND1
|
||||||
?CCL3: CALL WT?,WRD,32
|
?CCL3: CALL WT?,WRD,32
|
||||||
ZERO? STACK /?CCL5
|
ZERO? STACK /?CCL7
|
||||||
SET 'ADJ,TRUE-VALUE
|
SET 'ADJ,TRUE-VALUE
|
||||||
JUMP ?CND1
|
JUMP ?CND1
|
||||||
?CCL5: CALL WT?,WRD,128,0
|
?CCL7: CALL WT?,WRD,128,0
|
||||||
ZERO? STACK /?CND1
|
ZERO? STACK /?CND1
|
||||||
ZERO? P-NCN \?CND1
|
ZERO? P-NCN \?CND1
|
||||||
PUT P-ITBL,P-VERB,0
|
PUT P-ITBL,P-VERB,0
|
||||||
|
@ -656,95 +663,95 @@
|
||||||
PUT P-ITBL,P-NC1L,STACK
|
PUT P-ITBL,P-NC1L,STACK
|
||||||
SET 'P-NCN,1
|
SET 'P-NCN,1
|
||||||
?CND1: GET P-ITBL,P-VERB >VERB
|
?CND1: GET P-ITBL,P-VERB >VERB
|
||||||
ZERO? VERB /?CCL11
|
ZERO? VERB /?CCL13
|
||||||
ZERO? ADJ \?CCL11
|
ZERO? ADJ \?CCL13
|
||||||
GET P-OTBL,P-VERB
|
GET P-OTBL,P-VERB
|
||||||
EQUAL? VERB,STACK \FALSE
|
EQUAL? VERB,STACK \FALSE
|
||||||
?CCL11: EQUAL? P-NCN,2 /FALSE
|
?CCL13: EQUAL? P-NCN,2 /FALSE
|
||||||
GET P-OTBL,P-NC1
|
GET P-OTBL,P-NC1
|
||||||
EQUAL? STACK,1 \?CCL18
|
EQUAL? STACK,1 \?CCL20
|
||||||
GET P-ITBL,P-PREP1 >TEMP
|
GET P-ITBL,P-PREP1 >TEMP
|
||||||
GET P-OTBL,P-PREP1
|
GET P-OTBL,P-PREP1
|
||||||
EQUAL? TEMP,STACK /?CTR20
|
EQUAL? TEMP,STACK /?CTR22
|
||||||
ZERO? TEMP \FALSE
|
ZERO? TEMP \FALSE
|
||||||
?CTR20: ZERO? ADJ /?CCL26
|
?CTR22: ZERO? ADJ /?CCL28
|
||||||
ZERO? VRB \?CCL26
|
ZERO? VRB \?CCL28
|
||||||
ADD P-LEXV,2
|
ADD P-LEXV,2
|
||||||
PUT P-OTBL,P-NC1,STACK
|
PUT P-OTBL,P-NC1,STACK
|
||||||
GET P-ITBL,P-NC1L
|
GET P-ITBL,P-NC1L
|
||||||
ZERO? STACK \?CND29
|
ZERO? STACK \?CND31
|
||||||
ADD P-LEXV,6
|
ADD P-LEXV,6
|
||||||
PUT P-ITBL,P-NC1L,STACK
|
PUT P-ITBL,P-NC1L,STACK
|
||||||
?CND29: ZERO? P-NCN \?CND24
|
?CND31: ZERO? P-NCN \?CND26
|
||||||
SET 'P-NCN,1
|
SET 'P-NCN,1
|
||||||
JUMP ?CND24
|
JUMP ?CND26
|
||||||
?CCL26: GET P-ITBL,P-NC1
|
?CCL28: GET P-ITBL,P-NC1
|
||||||
PUT P-OTBL,P-NC1,STACK
|
PUT P-OTBL,P-NC1,STACK
|
||||||
?CND24: GET P-ITBL,P-NC1L
|
?CND26: GET P-ITBL,P-NC1L
|
||||||
PUT P-OTBL,P-NC1L,STACK
|
PUT P-OTBL,P-NC1L,STACK
|
||||||
JUMP ?CND9
|
JUMP ?CND11
|
||||||
?CCL18: GET P-OTBL,P-NC2
|
?CCL20: GET P-OTBL,P-NC2
|
||||||
EQUAL? STACK,1 \?CCL34
|
EQUAL? STACK,1 \?CCL36
|
||||||
GET P-ITBL,P-PREP1 >TEMP
|
GET P-ITBL,P-PREP1 >TEMP
|
||||||
GET P-OTBL,P-PREP2
|
GET P-OTBL,P-PREP2
|
||||||
EQUAL? TEMP,STACK /?CTR36
|
EQUAL? TEMP,STACK /?CTR38
|
||||||
ZERO? TEMP \FALSE
|
ZERO? TEMP \FALSE
|
||||||
?CTR36: ZERO? ADJ /?CND40
|
?CTR38: ZERO? ADJ /?CND42
|
||||||
ZERO? VRB \?CND40
|
ZERO? VRB \?CND42
|
||||||
ADD P-LEXV,2
|
ADD P-LEXV,2
|
||||||
PUT P-ITBL,P-NC1,STACK
|
PUT P-ITBL,P-NC1,STACK
|
||||||
GET P-ITBL,P-NC1L
|
GET P-ITBL,P-NC1L
|
||||||
ZERO? STACK \?CND40
|
ZERO? STACK \?CND42
|
||||||
ADD P-LEXV,6
|
ADD P-LEXV,6
|
||||||
PUT P-ITBL,P-NC1L,STACK
|
PUT P-ITBL,P-NC1L,STACK
|
||||||
?CND40: GET P-ITBL,P-NC1
|
?CND42: GET P-ITBL,P-NC1
|
||||||
PUT P-OTBL,P-NC2,STACK
|
PUT P-OTBL,P-NC2,STACK
|
||||||
GET P-ITBL,P-NC1L
|
GET P-ITBL,P-NC1L
|
||||||
PUT P-OTBL,P-NC2L,STACK
|
PUT P-OTBL,P-NC2L,STACK
|
||||||
SET 'P-NCN,2
|
SET 'P-NCN,2
|
||||||
JUMP ?CND9
|
JUMP ?CND11
|
||||||
?CCL34: ZERO? P-ACLAUSE /?CND9
|
?CCL36: ZERO? P-ACLAUSE /?CND11
|
||||||
EQUAL? P-NCN,1 /?CCL49
|
EQUAL? P-NCN,1 /?CCL51
|
||||||
ZERO? ADJ \?CCL49
|
ZERO? ADJ \?CCL51
|
||||||
SET 'P-ACLAUSE,FALSE-VALUE
|
SET 'P-ACLAUSE,FALSE-VALUE
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL49: GET P-ITBL,P-NC1 >BEG
|
?CCL51: GET P-ITBL,P-NC1 >BEG
|
||||||
ZERO? ADJ /?CND52
|
ZERO? ADJ /?CND54
|
||||||
ADD P-LEXV,2 >BEG
|
ADD P-LEXV,2 >BEG
|
||||||
SET 'ADJ,FALSE-VALUE
|
SET 'ADJ,FALSE-VALUE
|
||||||
?CND52: GET P-ITBL,P-NC1L >END
|
?CND54: GET P-ITBL,P-NC1L >END
|
||||||
?PRG54: GET BEG,0 >WRD
|
?PRG56: GET BEG,0 >WRD
|
||||||
EQUAL? BEG,END \?CCL58
|
EQUAL? BEG,END \?CCL60
|
||||||
ZERO? ADJ /?CCL61
|
ZERO? ADJ /?CCL63
|
||||||
CALL CLAUSE-WIN,ADJ
|
CALL CLAUSE-WIN,ADJ
|
||||||
JUMP ?CND9
|
JUMP ?CND11
|
||||||
?CCL61: SET 'P-ACLAUSE,FALSE-VALUE
|
?CCL63: SET 'P-ACLAUSE,FALSE-VALUE
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL58: EQUAL? WRD,W?ALL,W?EVERYT,W?ONE /?CTR62
|
?CCL60: EQUAL? WRD,W?ALL,W?EVERYT,W?ONE /?CTR64
|
||||||
EQUAL? WRD,W?BOTH /?CTR62
|
EQUAL? WRD,W?BOTH /?CTR64
|
||||||
GETB WRD,P-PSOFF
|
GETB WRD,P-PSOFF
|
||||||
BTST STACK,32 \?CCL63
|
BTST STACK,32 \?CCL65
|
||||||
CALL ADJ-CHECK,WRD,ADJ,ADJ
|
CALL ADJ-CHECK,WRD,ADJ,ADJ
|
||||||
ZERO? STACK /?CCL63
|
ZERO? STACK /?CCL65
|
||||||
?CTR62: SET 'ADJ,WRD
|
?CTR64: SET 'ADJ,WRD
|
||||||
?CND56: ADD BEG,P-WORDLEN >BEG
|
?CND58: ADD BEG,P-WORDLEN >BEG
|
||||||
ZERO? END \?PRG54
|
ZERO? END \?PRG56
|
||||||
SET 'END,BEG
|
SET 'END,BEG
|
||||||
SET 'P-NCN,1
|
SET 'P-NCN,1
|
||||||
SUB BEG,4
|
SUB BEG,4
|
||||||
PUT P-ITBL,P-NC1,STACK
|
PUT P-ITBL,P-NC1,STACK
|
||||||
PUT P-ITBL,P-NC1L,BEG
|
PUT P-ITBL,P-NC1L,BEG
|
||||||
JUMP ?PRG54
|
JUMP ?PRG56
|
||||||
?CCL63: EQUAL? WRD,W?ONE \?CCL70
|
?CCL65: EQUAL? WRD,W?ONE \?CCL72
|
||||||
CALL CLAUSE-WIN,ADJ
|
CALL CLAUSE-WIN,ADJ
|
||||||
JUMP ?CND9
|
JUMP ?CND11
|
||||||
?CCL70: GETB WRD,P-PSOFF
|
?CCL72: GETB WRD,P-PSOFF
|
||||||
BTST STACK,128 \?CND56
|
BTST STACK,128 \?CND58
|
||||||
EQUAL? WRD,P-ANAM \?CCL74
|
EQUAL? WRD,P-ANAM \?CCL76
|
||||||
CALL CLAUSE-WIN,ADJ
|
CALL CLAUSE-WIN,ADJ
|
||||||
JUMP ?CND9
|
JUMP ?CND11
|
||||||
?CCL74: CALL CLAUSE-WIN
|
?CCL76: CALL CLAUSE-WIN
|
||||||
?CND9: GET P-OVTBL,0
|
?CND11: GET P-OVTBL,0
|
||||||
PUT P-VTBL,0,STACK
|
PUT P-VTBL,0,STACK
|
||||||
GETB P-OVTBL,2
|
GETB P-OVTBL,2
|
||||||
PUTB P-VTBL,2,STACK
|
PUTB P-VTBL,2,STACK
|
||||||
|
@ -752,12 +759,12 @@
|
||||||
PUTB P-VTBL,3,STACK
|
PUTB P-VTBL,3,STACK
|
||||||
PUT P-OTBL,P-VERBN,P-VTBL
|
PUT P-OTBL,P-VERBN,P-VTBL
|
||||||
PUTB P-VTBL,2,0
|
PUTB P-VTBL,2,0
|
||||||
?PRG77: IGRTR? 'CNT,P-ITBLLEN \?CCL81
|
?PRG79: IGRTR? 'CNT,P-ITBLLEN \?CCL83
|
||||||
SET 'P-MERGED,TRUE-VALUE
|
SET 'P-MERGED,TRUE-VALUE
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL81: GET P-OTBL,CNT
|
?CCL83: GET P-OTBL,CNT
|
||||||
PUT P-ITBL,CNT,STACK
|
PUT P-ITBL,CNT,STACK
|
||||||
JUMP ?PRG77
|
JUMP ?PRG79
|
||||||
|
|
||||||
|
|
||||||
.FUNCT CLAUSE-WIN,ADJ=0
|
.FUNCT CLAUSE-WIN,ADJ=0
|
||||||
|
@ -790,7 +797,9 @@
|
||||||
|
|
||||||
|
|
||||||
.FUNCT UNKNOWN-WORD,PTR,BUF,?TMP1
|
.FUNCT UNKNOWN-WORD,PTR,BUF,?TMP1
|
||||||
PUT OOPS-TABLE,O-PTR,PTR
|
ZERO? P-OFLAG /?CND1
|
||||||
|
PUT OOPS-TABLE,O-END,0
|
||||||
|
?CND1: PUT OOPS-TABLE,O-PTR,PTR
|
||||||
PRINTI "[I don't know the word """
|
PRINTI "[I don't know the word """
|
||||||
MUL PTR,2 >BUF
|
MUL PTR,2 >BUF
|
||||||
ADD P-LEXV,BUF
|
ADD P-LEXV,BUF
|
||||||
|
@ -813,10 +822,7 @@
|
||||||
ADD P-LEXV,BUF
|
ADD P-LEXV,BUF
|
||||||
GETB STACK,3
|
GETB STACK,3
|
||||||
CALL WORD-PRINT,?TMP1,STACK
|
CALL WORD-PRINT,?TMP1,STACK
|
||||||
PRINTI """ in a way that I don't understand.]"
|
PRINTR """ in a way that I don't understand.]"
|
||||||
CRLF
|
|
||||||
CALL STOP
|
|
||||||
RSTACK
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT SYNTAX-CHECK,SYN,LEN,NUM,OBJ,DRIVE1=0,DRIVE2=0,PREP,VERB,?TMP2,?TMP1
|
.FUNCT SYNTAX-CHECK,SYN,LEN,NUM,OBJ,DRIVE1=0,DRIVE2=0,PREP,VERB,?TMP2,?TMP1
|
||||||
|
@ -1002,41 +1008,41 @@
|
||||||
SET 'PN,TRUE-VALUE
|
SET 'PN,TRUE-VALUE
|
||||||
JUMP ?CND3
|
JUMP ?CND3
|
||||||
?CCL13: CALL NAME?,WRD
|
?CCL13: CALL NAME?,WRD
|
||||||
ZERO? STACK /?CCL15
|
ZERO? STACK \?CTR14
|
||||||
CALL CAPITALIZE,BEG
|
EQUAL? WRD,W?THERMOS \?CCL15
|
||||||
|
?CTR14: CALL CAPITALIZE,BEG
|
||||||
SET 'PN,TRUE-VALUE
|
SET 'PN,TRUE-VALUE
|
||||||
JUMP ?CND3
|
JUMP ?CND3
|
||||||
?CCL15: ZERO? FIRST?? /?CND16
|
?CCL15: ZERO? FIRST?? /?CND18
|
||||||
ZERO? PN \?CND16
|
ZERO? PN \?CND18
|
||||||
ZERO? CP /?CND16
|
ZERO? CP /?CND18
|
||||||
EQUAL? WRD,W?MY /?CND16
|
EQUAL? WRD,W?MY /?CND18
|
||||||
PRINTI "the "
|
PRINTI "the "
|
||||||
?CND16: ZERO? P-OFLAG \?CTR23
|
?CND18: ZERO? P-OFLAG \?CTR25
|
||||||
ZERO? P-MERGED /?CCL24
|
ZERO? P-MERGED /?CCL26
|
||||||
?CTR23: PRINTB WRD
|
?CTR25: PRINTB WRD
|
||||||
JUMP ?CND22
|
JUMP ?CND24
|
||||||
?CCL24: EQUAL? WRD,W?IT,W?THEM \?CCL28
|
?CCL26: EQUAL? WRD,W?IT,W?THEM \?CCL30
|
||||||
CALL ACCESSIBLE?,P-IT-OBJECT
|
CALL ACCESSIBLE?,P-IT-OBJECT
|
||||||
ZERO? STACK /?CCL28
|
ZERO? STACK /?CCL30
|
||||||
PRINTD P-IT-OBJECT
|
PRINTD P-IT-OBJECT
|
||||||
JUMP ?CND22
|
JUMP ?CND24
|
||||||
?CCL28: EQUAL? WRD,W?HIM,W?HIMSELF,W?HER /?PRD34
|
?CCL30: EQUAL? WRD,W?HIM,W?HIMSELF,W?HER /?PRD36
|
||||||
EQUAL? WRD,W?HERSELF \?CCL32
|
EQUAL? WRD,W?HERSELF \?CCL34
|
||||||
?PRD34: CALL ACCESSIBLE?,P-HIM-OBJECT
|
?PRD36: CALL ACCESSIBLE?,P-HIM-OBJECT
|
||||||
ZERO? STACK /?CCL32
|
ZERO? STACK /?CCL34
|
||||||
PRINTD P-HIM-OBJECT
|
PRINTD P-HIM-OBJECT
|
||||||
JUMP ?CND22
|
JUMP ?CND24
|
||||||
?CCL32: GETB BEG,2 >?TMP1
|
?CCL34: GETB BEG,2 >?TMP1
|
||||||
GETB BEG,3
|
GETB BEG,3
|
||||||
CALL WORD-PRINT,?TMP1,STACK
|
CALL WORD-PRINT,?TMP1,STACK
|
||||||
?CND22: SET 'FIRST??,FALSE-VALUE
|
?CND24: SET 'FIRST??,FALSE-VALUE
|
||||||
?CND3: ADD BEG,P-WORDLEN >BEG
|
?CND3: ADD BEG,P-WORDLEN >BEG
|
||||||
JUMP ?PRG1
|
JUMP ?PRG1
|
||||||
|
|
||||||
|
|
||||||
.FUNCT NAME?,WRD
|
.FUNCT NAME?,WRD
|
||||||
EQUAL? WRD,W?FLOYD,W?PLATO,W?OLIVER /TRUE
|
EQUAL? WRD,W?FLOYD,W?PLATO,W?OLIVER /TRUE
|
||||||
EQUAL? WRD,W?THERMOS /TRUE
|
|
||||||
RFALSE
|
RFALSE
|
||||||
|
|
||||||
|
|
||||||
|
@ -1478,21 +1484,16 @@
|
||||||
SET 'ADJ,P-ADJ
|
SET 'ADJ,P-ADJ
|
||||||
SET 'P-NAM,P-XNAM
|
SET 'P-NAM,P-XNAM
|
||||||
SET 'P-ADJ,P-XADJ
|
SET 'P-ADJ,P-XADJ
|
||||||
ZERO? DEBUG /?CND1
|
PUT TBL,P-MATCHLEN,0
|
||||||
PRINTI "[MOBY-FINDing; P-NAM="
|
?PRG3: IN? OBJ,ROOMS /?CND5
|
||||||
PRINTB P-NAM
|
|
||||||
PRINTC 93
|
|
||||||
CRLF
|
|
||||||
?CND1: PUT TBL,P-MATCHLEN,0
|
|
||||||
?PRG5: IN? OBJ,ROOMS /?CND7
|
|
||||||
CALL THIS-IT?,OBJ >FOO
|
CALL THIS-IT?,OBJ >FOO
|
||||||
ZERO? FOO /?CND7
|
ZERO? FOO /?CND5
|
||||||
CALL OBJ-FOUND,OBJ,TBL >FOO
|
CALL OBJ-FOUND,OBJ,TBL >FOO
|
||||||
?CND7: IGRTR? 'OBJ,LAST-OBJECT \?PRG5
|
?CND5: IGRTR? 'OBJ,LAST-OBJECT \?PRG3
|
||||||
GET TBL,P-MATCHLEN >LEN
|
GET TBL,P-MATCHLEN >LEN
|
||||||
EQUAL? LEN,1 \?CND13
|
EQUAL? LEN,1 \?CND11
|
||||||
GET TBL,1 >P-MOBY-FOUND
|
GET TBL,1 >P-MOBY-FOUND
|
||||||
?CND13: SET 'P-NAM,NAM
|
?CND11: SET 'P-NAM,NAM
|
||||||
SET 'P-ADJ,ADJ
|
SET 'P-ADJ,ADJ
|
||||||
RETURN LEN
|
RETURN LEN
|
||||||
|
|
||||||
|
@ -1504,7 +1505,7 @@
|
||||||
?CND1: SET 'RLEN,LEN
|
?CND1: SET 'RLEN,LEN
|
||||||
EQUAL? WINNER,PROTAGONIST /?CCL5
|
EQUAL? WINNER,PROTAGONIST /?CCL5
|
||||||
PRINTI """I don't understand wh"
|
PRINTI """I don't understand wh"
|
||||||
EQUAL? P-ADJ,W?YOUR,W?MY \?CCL8
|
EQUAL? P-ADJ,A?YOUR,A?MY,A?PURPOS \?CCL8
|
||||||
PRINTR "at you mean!"""
|
PRINTR "at you mean!"""
|
||||||
?CCL8: PRINTI "ether you mean "
|
?CCL8: PRINTI "ether you mean "
|
||||||
JUMP ?PRG22
|
JUMP ?PRG22
|
||||||
|
@ -1679,45 +1680,44 @@
|
||||||
EQUAL? OBJ,LEASH \?CCL29
|
EQUAL? OBJ,LEASH \?CCL29
|
||||||
ZERO? HANGING-IN-AIR \?PRG8
|
ZERO? HANGING-IN-AIR \?PRG8
|
||||||
?CCL29: SET 'PRSO,OBJ
|
?CCL29: SET 'PRSO,OBJ
|
||||||
FSET? OBJ,TRYTAKEBIT \?CCL34
|
FSET? OBJ,TRYTAKEBIT /?CTR33
|
||||||
SET 'TAKEN,TRUE-VALUE
|
CALL UNTOUCHABLE?,OBJ
|
||||||
|
ZERO? STACK \?CTR33
|
||||||
|
ZERO? STUNNED /?CCL34
|
||||||
|
?CTR33: SET 'TAKEN,TRUE-VALUE
|
||||||
JUMP ?CND32
|
JUMP ?CND32
|
||||||
?CCL34: CALL UNTOUCHABLE?,OBJ
|
?CCL34: EQUAL? WINNER,PROTAGONIST /?CCL39
|
||||||
ZERO? STACK /?CCL36
|
|
||||||
SET 'TAKEN,TRUE-VALUE
|
|
||||||
JUMP ?CND32
|
|
||||||
?CCL36: EQUAL? WINNER,PROTAGONIST /?CCL38
|
|
||||||
SET 'TAKEN,FALSE-VALUE
|
SET 'TAKEN,FALSE-VALUE
|
||||||
JUMP ?CND32
|
JUMP ?CND32
|
||||||
?CCL38: BTST IBITS,STAKE \?CCL40
|
?CCL39: BTST IBITS,STAKE \?CCL41
|
||||||
CALL ITAKE,FALSE-VALUE
|
CALL ITAKE,FALSE-VALUE
|
||||||
EQUAL? STACK,TRUE-VALUE \?CCL40
|
EQUAL? STACK,TRUE-VALUE \?CCL41
|
||||||
SET 'TAKEN,FALSE-VALUE
|
SET 'TAKEN,FALSE-VALUE
|
||||||
JUMP ?CND32
|
JUMP ?CND32
|
||||||
?CCL40: SET 'TAKEN,TRUE-VALUE
|
?CCL41: SET 'TAKEN,TRUE-VALUE
|
||||||
?CND32: ZERO? TAKEN /?CCL45
|
?CND32: ZERO? TAKEN /?CCL46
|
||||||
BTST IBITS,SHAVE \?CCL45
|
BTST IBITS,SHAVE \?CCL46
|
||||||
GET TBL,P-MATCHLEN
|
GET TBL,P-MATCHLEN
|
||||||
LESS? 1,STACK \?CCL50
|
LESS? 1,STACK \?CCL51
|
||||||
PRINT YNH
|
PRINT YNH
|
||||||
PRINTI " all those things!"
|
PRINTI " all those things!"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL50: EQUAL? OBJ,NOT-HERE-OBJECT \?CND48
|
?CCL51: EQUAL? OBJ,NOT-HERE-OBJECT \?CND49
|
||||||
PRINT YOU-CANT
|
PRINT YOU-CANT
|
||||||
PRINTI "see that here!"
|
PRINTI "see that here!"
|
||||||
CRLF
|
CRLF
|
||||||
RFALSE
|
RFALSE
|
||||||
?CND48: EQUAL? WINNER,PROTAGONIST \?CCL54
|
?CND49: EQUAL? WINNER,PROTAGONIST \?CCL55
|
||||||
PRINT YNH
|
PRINT YNH
|
||||||
JUMP ?CND52
|
JUMP ?CND53
|
||||||
?CCL54: PRINTI "It doesn't look like"
|
?CCL55: PRINTI "It doesn't look like"
|
||||||
CALL TPRINT,WINNER
|
CALL TPRINT,WINNER
|
||||||
PRINTI " has"
|
PRINTI " has"
|
||||||
?CND52: CALL THIS-IS-IT,OBJ
|
?CND53: CALL THIS-IS-IT,OBJ
|
||||||
CALL TRPRINT,OBJ
|
CALL TRPRINT,OBJ
|
||||||
RFALSE
|
RFALSE
|
||||||
?CCL45: ZERO? TAKEN \?PRG8
|
?CCL46: ZERO? TAKEN \?PRG8
|
||||||
IN? PROTAGONIST,OBJ /?PRG8
|
IN? PROTAGONIST,OBJ /?PRG8
|
||||||
EQUAL? WINNER,PROTAGONIST \?PRG8
|
EQUAL? WINNER,PROTAGONIST \?PRG8
|
||||||
PRINTI "[taking"
|
PRINTI "[taking"
|
||||||
|
|
90
parser.zil
90
parser.zil
|
@ -166,7 +166,7 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<EQUAL? ,PROTAGONIST ,WINNER>>
|
<EQUAL? ,PROTAGONIST ,WINNER>>
|
||||||
<CRLF>)>
|
<CRLF>)>
|
||||||
<SETG RESERVE-PTR <>>
|
<SETG RESERVE-PTR <>>
|
||||||
<SETG P-CONT <>>)
|
;<SETG P-CONT <>> ;"retrofix 59")
|
||||||
(,P-CONT
|
(,P-CONT
|
||||||
<SET PTR ,P-CONT>
|
<SET PTR ,P-CONT>
|
||||||
;<COND (<AND <NOT <EQUAL? ,VERBOSITY 0>>
|
;<COND (<AND <NOT <EQUAL? ,VERBOSITY 0>>
|
||||||
|
@ -176,7 +176,7 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<NOT ,ELIMINATE-CR>>
|
<NOT ,ELIMINATE-CR>>
|
||||||
<CRLF>)>
|
<CRLF>)>
|
||||||
<SETG ELIMINATE-CR <>>
|
<SETG ELIMINATE-CR <>>
|
||||||
<SETG P-CONT <>>)
|
;<SETG P-CONT <>> ;"retrofix 59")
|
||||||
(T
|
(T
|
||||||
<SETG WINNER ,PROTAGONIST>
|
<SETG WINNER ,PROTAGONIST>
|
||||||
<SETG QUOTE-FLAG <>>
|
<SETG QUOTE-FLAG <>>
|
||||||
|
@ -186,6 +186,8 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<COND (<NOT <EQUAL? ,VERBOSITY 0>>
|
<COND (<NOT <EQUAL? ,VERBOSITY 0>>
|
||||||
<CRLF>)>
|
<CRLF>)>
|
||||||
<TELL ">">
|
<TELL ">">
|
||||||
|
<COND (<ZERO? <GET ,OOPS-TABLE ,O-PTR>>
|
||||||
|
<PUT ,OOPS-TABLE ,O-END <>>)> ;"retrofix 59"
|
||||||
<READ ,P-INBUF ,P-LEXV>
|
<READ ,P-INBUF ,P-LEXV>
|
||||||
<SET OLEN <GETB ,P-LEXV ,P-LEXWORDS>>)>
|
<SET OLEN <GETB ,P-LEXV ,P-LEXWORDS>>)>
|
||||||
<SETG P-LEN <GETB ,P-LEXV ,P-LEXWORDS>>
|
<SETG P-LEN <GETB ,P-LEXV ,P-LEXWORDS>>
|
||||||
|
@ -218,10 +220,14 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<PUT ,OOPS-TABLE ,O-END <>>
|
<PUT ,OOPS-TABLE ,O-END <>>
|
||||||
<TELL "[There was no word to replace!]" CR>
|
<TELL "[There was no word to replace!]" CR>
|
||||||
<RFALSE>)>)
|
<RFALSE>)>)
|
||||||
(T
|
(<ZERO? ,P-CONT> ;"retrofix 58"
|
||||||
<PUT ,OOPS-TABLE ,O-END <>>)>
|
<PUT ,OOPS-TABLE ,O-END <>>)>
|
||||||
|
<SETG P-CONT <>> ;"retrofix 59"
|
||||||
<COND (<EQUAL? <GET ,P-LEXV .PTR> ,W?AGAIN ,W?G>
|
<COND (<EQUAL? <GET ,P-LEXV .PTR> ,W?AGAIN ,W?G>
|
||||||
<COND (,P-OFLAG
|
<COND (<ZERO? <GETB ,OOPS-INBUF 1>>
|
||||||
|
<TELL "[What do you want to do again?]" CR>
|
||||||
|
<RFALSE>)
|
||||||
|
(,P-OFLAG
|
||||||
<CANT-USE-THAT-WAY "AGAIN">
|
<CANT-USE-THAT-WAY "AGAIN">
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<NOT ,P-WON>
|
(<NOT ,P-WON>
|
||||||
|
@ -229,7 +235,7 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<AND <NOT <EQUAL? .OWINNER ,PROTAGONIST>>
|
(<AND <NOT <EQUAL? .OWINNER ,PROTAGONIST>>
|
||||||
<NOT <VISIBLE? .OWINNER>>>
|
<NOT <VISIBLE? .OWINNER>>>
|
||||||
<TELL "[" ,YOU-CANT "see " D .OWINNER " any more.]" CR>
|
<TELL "[You can't see " D .OWINNER " any more.]" CR>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<G? ,P-LEN 1>
|
(<G? ,P-LEN 1>
|
||||||
<COND (<OR <EQUAL? <GET ,P-LEXV <+ .PTR ,P-LEXELEN>>
|
<COND (<OR <EQUAL? <GET ,P-LEXV <+ .PTR ,P-LEXELEN>>
|
||||||
|
@ -271,8 +277,10 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<PUT ,OOPS-TABLE ,O-LENGTH <* 4 ,P-LEN>> ;"fix #36"
|
<PUT ,OOPS-TABLE ,O-LENGTH <* 4 ,P-LEN>> ;"fix #36"
|
||||||
<SET LEN
|
<SET LEN
|
||||||
<* 2 <+ .PTR <* ,P-LEXELEN <GETB ,P-LEXV ,P-LEXWORDS>>>>>
|
<* 2 <+ .PTR <* ,P-LEXELEN <GETB ,P-LEXV ,P-LEXWORDS>>>>>
|
||||||
<PUT ,OOPS-TABLE ,O-END <+ <GETB ,P-LEXV <- .LEN 1>>
|
<COND (<ZERO? <GET ,OOPS-TABLE ,O-END>> ;"retrofix 58"
|
||||||
<GETB ,P-LEXV <- .LEN 2>>>>
|
<PUT ,OOPS-TABLE ,O-END
|
||||||
|
<+ <GETB ,P-LEXV <- .LEN 1>>
|
||||||
|
<GETB ,P-LEXV <- .LEN 2>>>>)>
|
||||||
<SETG RESERVE-PTR <>>
|
<SETG RESERVE-PTR <>>
|
||||||
<SET LEN ,P-LEN>
|
<SET LEN ,P-LEN>
|
||||||
;<SETG P-DIR <>>
|
;<SETG P-DIR <>>
|
||||||
|
@ -342,14 +350,17 @@ with 'P-'. Local variables are not restricted in any way."
|
||||||
<RETURN>)>)
|
<RETURN>)>)
|
||||||
(<AND <SET VAL <WT? .WRD ,PS?VERB ,P1?VERB>>
|
(<AND <SET VAL <WT? .WRD ,PS?VERB ,P1?VERB>>
|
||||||
<NOT .VERB>>
|
<NOT .VERB>>
|
||||||
<SETG P-PRSA-WORD .WRD>
|
<COND (<ZERO? ,P-OFLAG>
|
||||||
|
<SETG P-PRSA-WORD .WRD>)
|
||||||
|
;(T
|
||||||
|
<SETG P-PRSA-WORD
|
||||||
|
<GET <GET ,P-ITBL ,P-VERBN> 0>>)>
|
||||||
<SET VERB .VAL>
|
<SET VERB .VAL>
|
||||||
<PUT ,P-ITBL ,P-VERB .VAL>
|
<PUT ,P-ITBL ,P-VERB .VAL>
|
||||||
<PUT ,P-ITBL ,P-VERBN ,P-VTBL>
|
<PUT ,P-ITBL ,P-VERBN ,P-VTBL>
|
||||||
<PUT ,P-VTBL 0 .WRD>
|
<PUT ,P-VTBL 0 .WRD>
|
||||||
<PUTB ,P-VTBL 2 <GETB ,P-LEXV
|
<PUTB ,P-VTBL 2
|
||||||
<SET CNT
|
<GETB ,P-LEXV <SET CNT <+ <* .PTR 2> 2>>>>
|
||||||
<+ <* .PTR 2> 2>>>>
|
|
||||||
<PUTB ,P-VTBL 3 <GETB ,P-LEXV <+ .CNT 1>>>)
|
<PUTB ,P-VTBL 3 <GETB ,P-LEXV <+ .CNT 1>>>)
|
||||||
(<OR <SET VAL <WT? .WRD ,PS?PREPOSITION 0>>
|
(<OR <SET VAL <WT? .WRD ,PS?PREPOSITION 0>>
|
||||||
<EQUAL? .WRD ,W?ALL ,W?ONE ,W?BOTH>
|
<EQUAL? .WRD ,W?ALL ,W?ONE ,W?BOTH>
|
||||||
|
@ -517,7 +528,11 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET OFFS <+ .OFFS 1>>)>
|
<SET OFFS <+ .OFFS 1>>)>
|
||||||
<GETB .PTR .OFFS>)>)>>
|
<GETB .PTR .OFFS>)>)>>
|
||||||
|
|
||||||
<ROUTINE NEXT-WORD (PTR "AUX" NW)
|
<ROUTINE NEXT-WORD (PTR)
|
||||||
|
<COND (<NOT <ZERO? ,P-LEN>>
|
||||||
|
<GET ,P-LEXV <+ .PTR ,P-LEXELEN>>)>>
|
||||||
|
|
||||||
|
;<ROUTINE NEXT-WORD (PTR "AUX" NW)
|
||||||
<COND (<NOT <ZERO? ,P-LEN>>
|
<COND (<NOT <ZERO? ,P-LEN>>
|
||||||
<COND (<SET NW <GET ,P-LEXV <+ .PTR ,P-LEXELEN>>>
|
<COND (<SET NW <GET ,P-LEXV <+ .PTR ,P-LEXELEN>>>
|
||||||
.NW)
|
.NW)
|
||||||
|
@ -531,8 +546,11 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<PUT ,P-ITBL <SET NUM <+ ,P-PREP1 .OFF>> .VAL>
|
<PUT ,P-ITBL <SET NUM <+ ,P-PREP1 .OFF>> .VAL>
|
||||||
<PUT ,P-ITBL <+ .NUM 1> .WRD>
|
<PUT ,P-ITBL <+ .NUM 1> .WRD>
|
||||||
<SET PTR <+ .PTR ,P-LEXELEN>>)
|
<SET PTR <+ .PTR ,P-LEXELEN>>)
|
||||||
(T <SETG P-LEN <+ ,P-LEN 1>>)>
|
(T
|
||||||
<COND (<ZERO? ,P-LEN> <SETG P-NCN <- ,P-NCN 1>> <RETURN -1>)>
|
<SETG P-LEN <+ ,P-LEN 1>>)>
|
||||||
|
<COND (<ZERO? ,P-LEN>
|
||||||
|
<SETG P-NCN <- ,P-NCN 1>>
|
||||||
|
<RETURN -1>)>
|
||||||
<PUT ,P-ITBL <SET NUM <+ ,P-NC1 .OFF>> <REST ,P-LEXV <* .PTR 2>>>
|
<PUT ,P-ITBL <SET NUM <+ ,P-NC1 .OFF>> <REST ,P-LEXV <* .PTR 2>>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
<COND (<L? <SETG P-LEN <- ,P-LEN 1>> 0>
|
<COND (<L? <SETG P-LEN <- ,P-LEN 1>> 0>
|
||||||
|
@ -541,7 +559,8 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET WRD <GET ,P-LEXV .PTR>>
|
<SET WRD <GET ,P-LEXV .PTR>>
|
||||||
<COND (<NAUGHTY-WORD? .WRD>
|
<COND (<NAUGHTY-WORD? .WRD>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<OR .WRD <SET WRD <NUMBER? .PTR>>>
|
(<OR .WRD
|
||||||
|
<SET WRD <NUMBER? .PTR>>>
|
||||||
<SET NW <NEXT-WORD .PTR>>
|
<SET NW <NEXT-WORD .PTR>>
|
||||||
<COND (<AND .FIRST?? ;"fix 'lie down on...'"
|
<COND (<AND .FIRST?? ;"fix 'lie down on...'"
|
||||||
<OR <EQUAL? .WRD ,W?THE ,W?A ,W?AN>
|
<OR <EQUAL? .WRD ,W?THE ,W?A ,W?AN>
|
||||||
|
@ -567,8 +586,7 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
;"ADDED 4/27 FOR TURTLE,UP"
|
;"ADDED 4/27 FOR TURTLE,UP"
|
||||||
<NOT .FIRST??>>>
|
<NOT .FIRST??>>>
|
||||||
<SETG P-LEN <+ ,P-LEN 1>>
|
<SETG P-LEN <+ ,P-LEN 1>>
|
||||||
<PUT ,P-ITBL
|
<PUT ,P-ITBL <+ .NUM 1>
|
||||||
<+ .NUM 1>
|
|
||||||
<REST ,P-LEXV <* .PTR 2>>>
|
<REST ,P-LEXV <* .PTR 2>>>
|
||||||
<RETURN <- .PTR ,P-LEXELEN>>)
|
<RETURN <- .PTR ,P-LEXELEN>>)
|
||||||
;"This next clause was 2 clauses further down"
|
;"This next clause was 2 clauses further down"
|
||||||
|
@ -618,7 +636,9 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
(T
|
(T
|
||||||
<CANT-USE .PTR>
|
<CANT-USE .PTR>
|
||||||
<RFALSE>)>)
|
<RFALSE>)>)
|
||||||
(T <UNKNOWN-WORD .PTR> <RFALSE>)>
|
(T
|
||||||
|
<UNKNOWN-WORD .PTR>
|
||||||
|
<RFALSE>)>
|
||||||
<SET LW .WRD>
|
<SET LW .WRD>
|
||||||
<SET FIRST?? <>>
|
<SET FIRST?? <>>
|
||||||
<SET PTR <+ .PTR ,P-LEXELEN>>>>
|
<SET PTR <+ .PTR ,P-LEXELEN>>>>
|
||||||
|
@ -627,9 +647,10 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET CNT <GETB <REST ,P-LEXV <* .PTR 2>> 2>>
|
<SET CNT <GETB <REST ,P-LEXV <* .PTR 2>> 2>>
|
||||||
<SET BPTR <GETB <REST ,P-LEXV <* .PTR 2>> 3>>
|
<SET BPTR <GETB <REST ,P-LEXV <* .PTR 2>> 3>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
<COND (<G? .SUM 10000> <RFALSE>)
|
<COND (<L? <SET CNT <- .CNT 1>> 0>
|
||||||
(<L? <SET CNT <- .CNT 1>> 0>
|
|
||||||
<RETURN>)
|
<RETURN>)
|
||||||
|
(<G? .SUM 6553>
|
||||||
|
<RFALSE>)
|
||||||
(T
|
(T
|
||||||
<SET CHR <GETB ,P-INBUF .BPTR>>
|
<SET CHR <GETB ,P-INBUF .BPTR>>
|
||||||
<COND (<AND <L? .CHR 58>
|
<COND (<AND <L? .CHR 58>
|
||||||
|
@ -695,7 +716,8 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET BPTR <+ .BPTR 1>>)>>
|
<SET BPTR <+ .BPTR 1>>)>>
|
||||||
<COND (<NOT <EQUAL? .CCTR 3>> ;"only handles 3 digits after the comma"
|
<COND (<NOT <EQUAL? .CCTR 3>> ;"only handles 3 digits after the comma"
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<ZERO? .SUM> ;"if it returned 0, the calling predicate becomes <>"
|
(<ZERO? .SUM>
|
||||||
|
;"if it returned 0, the calling predicate becomes <>"
|
||||||
<RETURN 1000>)
|
<RETURN 1000>)
|
||||||
(T
|
(T
|
||||||
<RETURN .SUM>)>>
|
<RETURN .SUM>)>>
|
||||||
|
@ -704,9 +726,13 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
|
|
||||||
<ROUTINE ORPHAN-MERGE ("AUX" (CNT -1) TEMP VERB BEG END (ADJ <>) (VRB <>) WRD)
|
<ROUTINE ORPHAN-MERGE ("AUX" (CNT -1) TEMP VERB BEG END (ADJ <>) (VRB <>) WRD)
|
||||||
<SETG P-OFLAG <>>
|
<SETG P-OFLAG <>>
|
||||||
<COND (<EQUAL? <WT? <SET WRD <GET <GET ,P-ITBL ,P-VERBN> 0>>
|
<COND (<OR <EQUAL? <WT? <SET WRD <GET <GET ,P-ITBL ,P-VERBN> 0>>
|
||||||
,PS?VERB ,P1?VERB>
|
,PS?VERB ,P1?VERB>
|
||||||
<GET ,P-OTBL ,P-VERB>>
|
<GET ,P-OTBL ,P-VERB>>
|
||||||
|
<WT? .WRD ,PS?ADJECTIVE>>
|
||||||
|
;<EQUAL? <WT? <SET WRD <GET <GET ,P-ITBL ,P-VERBN> 0>>
|
||||||
|
,PS?VERB ,P1?VERB>
|
||||||
|
<GET ,P-OTBL ,P-VERB>> ;"old predicate, axed for rfix 45"
|
||||||
<SET VRB T>
|
<SET VRB T>
|
||||||
<SET ADJ T>)
|
<SET ADJ T>)
|
||||||
(<WT? .WRD ,PS?ADJECTIVE>
|
(<WT? .WRD ,PS?ADJECTIVE>
|
||||||
|
@ -822,6 +848,8 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET BUF <+ .BUF 1>>)>>>
|
<SET BUF <+ .BUF 1>>)>>>
|
||||||
|
|
||||||
<ROUTINE UNKNOWN-WORD (PTR "AUX" BUF)
|
<ROUTINE UNKNOWN-WORD (PTR "AUX" BUF)
|
||||||
|
<COND (<T? ,P-OFLAG>
|
||||||
|
<PUT ,OOPS-TABLE ,O-END 0>)>
|
||||||
<PUT ,OOPS-TABLE ,O-PTR .PTR>
|
<PUT ,OOPS-TABLE ,O-PTR .PTR>
|
||||||
<TELL "[I don't know the word \"">
|
<TELL "[I don't know the word \"">
|
||||||
<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>
|
<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>
|
||||||
|
@ -834,8 +862,7 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<TELL "[You used the word \"">
|
<TELL "[You used the word \"">
|
||||||
<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>
|
<WORD-PRINT <GETB <REST ,P-LEXV <SET BUF <* .PTR 2>>> 2>
|
||||||
<GETB <REST ,P-LEXV .BUF> 3>>
|
<GETB <REST ,P-LEXV .BUF> 3>>
|
||||||
<TELL "\" in a way that I don't understand.]" CR>
|
<TELL "\" in a way that I don't understand.]" CR>>
|
||||||
<STOP>>
|
|
||||||
|
|
||||||
;" Perform syntax matching operations, using P-ITBL as the source of
|
;" Perform syntax matching operations, using P-ITBL as the source of
|
||||||
the verb and adjectives for this input. Returns false if no
|
the verb and adjectives for this input. Returns false if no
|
||||||
|
@ -1001,7 +1028,8 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
(<EQUAL? .WRD ,W?ME ,W?MYSELF>
|
(<EQUAL? .WRD ,W?ME ,W?MYSELF>
|
||||||
<PRINTD ,ME>
|
<PRINTD ,ME>
|
||||||
<SET PN T>)
|
<SET PN T>)
|
||||||
(<NAME? .WRD>
|
(<OR <NAME? .WRD>
|
||||||
|
<EQUAL? .WRD ,W?THERMOS>>
|
||||||
<CAPITALIZE .BEG>
|
<CAPITALIZE .BEG>
|
||||||
<SET PN T>)
|
<SET PN T>)
|
||||||
(T
|
(T
|
||||||
|
@ -1031,7 +1059,7 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET BEG <REST .BEG ,P-WORDLEN>>>>
|
<SET BEG <REST .BEG ,P-WORDLEN>>>>
|
||||||
|
|
||||||
<ROUTINE NAME? (WRD)
|
<ROUTINE NAME? (WRD)
|
||||||
<COND (<EQUAL? .WRD ,W?FLOYD ,W?PLATO ,W?OLIVER ,W?THERMOS>
|
<COND (<EQUAL? .WRD ,W?FLOYD ,W?PLATO ,W?OLIVER>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<RFALSE>)>>
|
<RFALSE>)>>
|
||||||
|
@ -1438,7 +1466,7 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET ADJ ,P-ADJ>
|
<SET ADJ ,P-ADJ>
|
||||||
<SETG P-NAM ,P-XNAM>
|
<SETG P-NAM ,P-XNAM>
|
||||||
<SETG P-ADJ ,P-XADJ>
|
<SETG P-ADJ ,P-XADJ>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[MOBY-FINDing; P-NAM=">
|
<TELL "[MOBY-FINDing; P-NAM=">
|
||||||
<PRINTB ,P-NAM>
|
<PRINTB ,P-NAM>
|
||||||
<TELL "]" CR>)>
|
<TELL "]" CR>)>
|
||||||
|
@ -1483,7 +1511,7 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
<SET RLEN .LEN>
|
<SET RLEN .LEN>
|
||||||
<COND (<NOT <EQUAL? ,WINNER ,PROTAGONIST>>
|
<COND (<NOT <EQUAL? ,WINNER ,PROTAGONIST>>
|
||||||
<TELL "\"I don't understand wh">
|
<TELL "\"I don't understand wh">
|
||||||
<COND (<EQUAL? ,P-ADJ ,W?YOUR ,W?MY>
|
<COND (<EQUAL? ,P-ADJ ,A?YOUR ,A?MY ,A?PURPOS>
|
||||||
<TELL "at you mean!\"" CR>
|
<TELL "at you mean!\"" CR>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
|
@ -1686,9 +1714,9 @@ OOPS-INBUF, leaving the appropriate pointers in AGAIN-LEXV"
|
||||||
T)
|
T)
|
||||||
(T
|
(T
|
||||||
<SETG PRSO .OBJ>
|
<SETG PRSO .OBJ>
|
||||||
<COND (<FSET? .OBJ ,TRYTAKEBIT>
|
<COND (<OR <FSET? .OBJ ,TRYTAKEBIT>
|
||||||
<SET TAKEN T>)
|
<UNTOUCHABLE? .OBJ>
|
||||||
(<UNTOUCHABLE? .OBJ>
|
,STUNNED>
|
||||||
<SET TAKEN T>)
|
<SET TAKEN T>)
|
||||||
(<NOT <EQUAL? ,WINNER ,PROTAGONIST>>
|
(<NOT <EQUAL? ,WINNER ,PROTAGONIST>>
|
||||||
<SET TAKEN <>>)
|
<SET TAKEN <>>)
|
||||||
|
|
1
s6.zap
1
s6.zap
|
@ -3,6 +3,7 @@
|
||||||
.INSERT "PS:<S6>S6PUR"
|
.INSERT "PS:<S6>S6PUR"
|
||||||
.INSERT "PS:<S6>MISC"
|
.INSERT "PS:<S6>MISC"
|
||||||
.INSERT "PS:<S6>PARSER"
|
.INSERT "PS:<S6>PARSER"
|
||||||
|
.INSERT "PS:<S6>INTERRUPTS"
|
||||||
.INSERT "PS:<S6>SYNTAX"
|
.INSERT "PS:<S6>SYNTAX"
|
||||||
.INSERT "PS:<S6>VERBS"
|
.INSERT "PS:<S6>VERBS"
|
||||||
.INSERT "PS:<S6>GLOBALS"
|
.INSERT "PS:<S6>GLOBALS"
|
||||||
|
|
1
s6.zil
1
s6.zil
|
@ -17,6 +17,7 @@ OFF!-INITIAL ;"makes debugging possible -- pdl"
|
||||||
|
|
||||||
<INSERT-FILE "MISC" T>
|
<INSERT-FILE "MISC" T>
|
||||||
<INSERT-FILE "PARSER" T>
|
<INSERT-FILE "PARSER" T>
|
||||||
|
<INSERT-FILE "INTERRUPTS" T>
|
||||||
<INSERT-FILE "SYNTAX" T>
|
<INSERT-FILE "SYNTAX" T>
|
||||||
<INSERT-FILE "VERBS" T>
|
<INSERT-FILE "VERBS" T>
|
||||||
<INSERT-FILE "GLOBALS" T>
|
<INSERT-FILE "GLOBALS" T>
|
||||||
|
|
61
s6pur.zap
61
s6pur.zap
|
@ -15,7 +15,7 @@ PT?1:: .TABLE
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?2::
|
PT?2::
|
||||||
PT?16:: .TABLE
|
PT?17:: .TABLE
|
||||||
6
|
6
|
||||||
W?FORM
|
W?FORM
|
||||||
0
|
0
|
||||||
|
@ -75,7 +75,7 @@ PT?6:: .TABLE
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?7::
|
PT?7::
|
||||||
PT?11:: .TABLE
|
PT?12:: .TABLE
|
||||||
3
|
3
|
||||||
W?SLOT
|
W?SLOT
|
||||||
0
|
0
|
||||||
|
@ -88,44 +88,75 @@ PT?8:: .TABLE
|
||||||
W?RED
|
W?RED
|
||||||
COMM-BUTTON-F
|
COMM-BUTTON-F
|
||||||
W?SCREEN
|
W?SCREEN
|
||||||
0
|
W?MESSAGE
|
||||||
SCREEN-F
|
SCREEN-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?9:: .TABLE
|
PT?9:: .TABLE
|
||||||
|
9
|
||||||
|
W?FILE
|
||||||
|
W?FILES
|
||||||
|
FILES-F
|
||||||
|
W?FORM
|
||||||
|
0
|
||||||
|
FILES-F
|
||||||
|
W?FORMS
|
||||||
|
0
|
||||||
|
FILES-F
|
||||||
|
.ENDT
|
||||||
|
|
||||||
|
PT?10:: .TABLE
|
||||||
3
|
3
|
||||||
W?BUTTON
|
W?BUTTON
|
||||||
W?RED
|
W?RED
|
||||||
LOG-READER-BUTTON-F
|
LOG-READER-BUTTON-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?10:: .TABLE
|
PT?11:: .TABLE
|
||||||
3
|
3
|
||||||
W?DIAL
|
W?DIAL
|
||||||
0
|
0
|
||||||
DIAL-F
|
DIAL-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?12:: .TABLE
|
PT?13:: .TABLE
|
||||||
6
|
9
|
||||||
W?SEAT
|
W?SEAT
|
||||||
0
|
0
|
||||||
THEATRE-SEAT-F
|
THEATRE-SEAT-F
|
||||||
W?BOOTH
|
W?BOOTH
|
||||||
W?PROJECTION
|
W?PROJECTION
|
||||||
PROJECTION-BOOTH-F
|
PROJECTION-BOOTH-F
|
||||||
|
W?LOCK
|
||||||
|
0
|
||||||
|
BRIG-LOCK-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?13:: .TABLE
|
PT?14:: .TABLE
|
||||||
3
|
3
|
||||||
W?DOME
|
W?DOME
|
||||||
W?TRANSPARENT
|
W?TRANSPARENT
|
||||||
DOME-OBJECT-F
|
DOME-OBJECT-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?14::
|
|
||||||
PT?15:: .TABLE
|
PT?15:: .TABLE
|
||||||
6
|
9
|
||||||
|
W?SHIP
|
||||||
|
W?ALIEN
|
||||||
|
ALIEN-SHIP-PSEUDO-F
|
||||||
|
W?SHIP
|
||||||
|
W?SPACE
|
||||||
|
ALIEN-SHIP-PSEUDO-F
|
||||||
|
W?HATCH
|
||||||
|
0
|
||||||
|
ALIEN-HATCH-F
|
||||||
|
.ENDT
|
||||||
|
|
||||||
|
PT?16:: .TABLE
|
||||||
|
9
|
||||||
|
W?HATCH
|
||||||
|
0
|
||||||
|
ALIEN-HATCH-F
|
||||||
W?SHIP
|
W?SHIP
|
||||||
W?ALIEN
|
W?ALIEN
|
||||||
ALIEN-SHIP-PSEUDO-F
|
ALIEN-SHIP-PSEUDO-F
|
||||||
|
@ -134,42 +165,42 @@ PT?15:: .TABLE
|
||||||
ALIEN-SHIP-PSEUDO-F
|
ALIEN-SHIP-PSEUDO-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?17:: .TABLE
|
PT?18:: .TABLE
|
||||||
3
|
3
|
||||||
W?COMPUTER
|
W?COMPUTER
|
||||||
0
|
0
|
||||||
COMPUTER-F
|
COMPUTER-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?18:: .TABLE
|
PT?19:: .TABLE
|
||||||
3
|
3
|
||||||
W?POSTER
|
W?POSTER
|
||||||
0
|
0
|
||||||
RECRUITMENT-POSTER-F
|
RECRUITMENT-POSTER-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?19:: .TABLE
|
PT?20:: .TABLE
|
||||||
3
|
3
|
||||||
W?MIRROR
|
W?MIRROR
|
||||||
W?GLASS
|
W?GLASS
|
||||||
MIRROR-F
|
MIRROR-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?20:: .TABLE
|
PT?21:: .TABLE
|
||||||
3
|
3
|
||||||
W?POSTER
|
W?POSTER
|
||||||
0
|
0
|
||||||
TRAVEL-AGENCY-POSTER-F
|
TRAVEL-AGENCY-POSTER-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?21:: .TABLE
|
PT?22:: .TABLE
|
||||||
3
|
3
|
||||||
W?HOLE
|
W?HOLE
|
||||||
W?SMALL
|
W?SMALL
|
||||||
DOC-HOLE-F
|
DOC-HOLE-F
|
||||||
.ENDT
|
.ENDT
|
||||||
|
|
||||||
PT?22:: .TABLE
|
PT?23:: .TABLE
|
||||||
3
|
3
|
||||||
W?SLOT
|
W?SLOT
|
||||||
0
|
0
|
||||||
|
|
820
s6str.zap
820
s6str.zap
|
@ -11,447 +11,465 @@ STRBEG::
|
||||||
.GSTR STR?5,"PRSO"
|
.GSTR STR?5,"PRSO"
|
||||||
.GSTR STR?6,"OOPS"
|
.GSTR STR?6,"OOPS"
|
||||||
.GSTR STR?7,"AGAIN"
|
.GSTR STR?7,"AGAIN"
|
||||||
.GSTR STR?8,"begins"
|
.GSTR STR?8,"A powerful arc of raw energy bridges the gap between two of the monster's welding extensions. Unfortunately, you were pretty much right between the same two extensions at that moment."
|
||||||
.GSTR STR?9,"ends"
|
.GSTR STR?9,"."
|
||||||
.GSTR STR?10,"leave the game"
|
.GSTR STR?10," The log reader explodes!"
|
||||||
.GSTR STR?11,"restart"
|
.GSTR STR?11,"begins"
|
||||||
.GSTR STR?12,"Biting"
|
.GSTR STR?12,"ends"
|
||||||
.GSTR STR?13,"climb into"
|
.GSTR STR?13,"leave the game"
|
||||||
.GSTR STR?14,"climb onto"
|
.GSTR STR?14,"restart"
|
||||||
.GSTR STR?15,"close"
|
.GSTR STR?15,"Biting"
|
||||||
.GSTR STR?16,"disconnect the timer"
|
.GSTR STR?16,"climb into"
|
||||||
.GSTR STR?17,"disconnect the explosive"
|
.GSTR STR?17,"climb onto"
|
||||||
.GSTR STR?18,"crumple"
|
.GSTR STR?18,"close"
|
||||||
.GSTR STR?19,"dress"
|
.GSTR STR?19,"disconnect the timer"
|
||||||
.GSTR STR?20,"open"
|
.GSTR STR?20,"disconnect the explosive"
|
||||||
.GSTR STR?21,"get onto"
|
.GSTR STR?21,"crumple"
|
||||||
.GSTR STR?22,"get into"
|
.GSTR STR?22,"dress"
|
||||||
.GSTR STR?23,"look"
|
.GSTR STR?23,"open"
|
||||||
.GSTR STR?24,"Kicking"
|
.GSTR STR?24,"get onto"
|
||||||
.GSTR STR?25,"Knocking on"
|
.GSTR STR?25,"get into"
|
||||||
.GSTR STR?26,"You plummet down the shaft..."
|
.GSTR STR?26,"look"
|
||||||
.GSTR STR?27,"sound"
|
.GSTR STR?27,"Kicking"
|
||||||
.GSTR STR?28,"look inside"
|
.GSTR STR?28,"Knocking on"
|
||||||
.GSTR STR?29,"look through"
|
.GSTR STR?29,"jump"
|
||||||
.GSTR STR?30,"indecis"
|
.GSTR STR?30,"You plummet down the shaft..."
|
||||||
.GSTR STR?31,"Pulling"
|
.GSTR STR?31,"sound"
|
||||||
.GSTR STR?32,"move"
|
.GSTR STR?32,"look inside"
|
||||||
.GSTR STR?33,"Trying to destroy"
|
.GSTR STR?33,"look through"
|
||||||
.GSTR STR?34,"negat"
|
.GSTR STR?34,"indecis"
|
||||||
.GSTR STR?35,"ff"
|
.GSTR STR?35,"Pulling"
|
||||||
.GSTR STR?36,"n"
|
.GSTR STR?36,"move"
|
||||||
.GSTR STR?37,"pick"
|
.GSTR STR?37,"Trying to destroy"
|
||||||
.GSTR STR?38,"put it in the presser"
|
.GSTR STR?38,"negat"
|
||||||
.GSTR STR?39,"Pushing"
|
.GSTR STR?39,"ff"
|
||||||
.GSTR STR?40,"Playing in this way with"
|
.GSTR STR?40,"n"
|
||||||
.GSTR STR?41,"read"
|
.GSTR STR?41,"pick"
|
||||||
.GSTR STR?42,"roll"
|
.GSTR STR?42,"Pushing"
|
||||||
.GSTR STR?43,"search"
|
.GSTR STR?43,"Playing in this way with"
|
||||||
.GSTR STR?44,"Turning"
|
.GSTR STR?44,"read"
|
||||||
.GSTR STR?45,"Shaking"
|
.GSTR STR?45,"roll"
|
||||||
.GSTR STR?46,"."
|
.GSTR STR?46,"search"
|
||||||
.GSTR STR?47,"smell"
|
.GSTR STR?47,"Turning"
|
||||||
.GSTR STR?48,"spray"
|
.GSTR STR?48,"Shaking"
|
||||||
.GSTR STR?49,"move that much"
|
.GSTR STR?49,"smell"
|
||||||
.GSTR STR?50,"taste"
|
.GSTR STR?50,"spray"
|
||||||
.GSTR STR?51,"Touching"
|
.GSTR STR?51,"move that much"
|
||||||
.GSTR STR?52,"Keyboard is only active following authorization"
|
.GSTR STR?52,"taste"
|
||||||
.GSTR STR?53,"You have already made your selection"
|
.GSTR STR?53,"Touching"
|
||||||
.GSTR STR?54,"That bin is unoccupied"
|
.GSTR STR?54,"Keyboard is active only following authorization"
|
||||||
.GSTR STR?55,"Error"
|
.GSTR STR?55,"You have already made your selection"
|
||||||
.GSTR STR?56,"Fuel levels at zero"
|
.GSTR STR?56,"That bin is unoccupied"
|
||||||
.GSTR STR?57,"Course set. Launch in approximately 30 millichrons"
|
.GSTR STR?57,"Error"
|
||||||
.GSTR STR?58,"Safety precautions forbid the acceptance of course settings unless both the pilot and copilot seats are occupied"
|
.GSTR STR?58,"Fuel level at zero"
|
||||||
.GSTR STR?59,"Select a level between 1 and 9"
|
.GSTR STR?59,"Course set. Launch in approximately 30 millichrons"
|
||||||
.GSTR STR?60,"The instant you press the button, the elevator begins plunging down the shaft! It's worse than just free-fall; the elevator is actually in a power dive!!! You punch frantically at the keypad..."
|
.GSTR STR?60,"Safety precautions forbid the acceptance of course settings unless both the pilot and copilot seats are occupied"
|
||||||
.GSTR STR?61,"You are already at that level"
|
.GSTR STR?61,"Select a level between 1 and 9"
|
||||||
.GSTR STR?62,"You have not deposited a coin"
|
.GSTR STR?62,"The instant you press the button, the elevator begins plunging down the shaft in a power dive! You punch frantically at the keypad..."
|
||||||
.GSTR STR?63,"This dispenser offers only 9 selections"
|
.GSTR STR?63,"You are already at that level"
|
||||||
.GSTR STR?64,"Sorry, that item is sold out. Please contact your PX Officer regarding restocking of dispenser"
|
.GSTR STR?64,"You have not deposited a coin"
|
||||||
.GSTR STR?65,"walk"
|
.GSTR STR?65,"This dispenser offers only 9 selections"
|
||||||
.GSTR STR?66,"wear"
|
.GSTR STR?66,"Sorry, that item is sold out. Inform your PX Officer for restocking"
|
||||||
.GSTR STR?67,"posit"
|
.GSTR STR?67,"walk"
|
||||||
.GSTR STR?68,"remove"
|
.GSTR STR?68,"wear"
|
||||||
.GSTR STR?69," is as worthwhile as cleaning a grotch cage."
|
.GSTR STR?69,"posit"
|
||||||
.GSTR STR?70," accomplishes nothing."
|
.GSTR STR?70,"remove"
|
||||||
.GSTR STR?71," has no desirable effect."
|
.GSTR STR?71," is as worthwhile as cleaning a grotch cage."
|
||||||
.GSTR STR?72,"Fat chance."
|
.GSTR STR?72," accomplishes nothing."
|
||||||
.GSTR STR?73,"A valiant attempt."
|
.GSTR STR?73," has no desirable effect."
|
||||||
.GSTR STR?74,"You can't be serious."
|
.GSTR STR?74,"Fat chance."
|
||||||
.GSTR STR?75,"Not bloody likely."
|
.GSTR STR?75,"A valiant attempt."
|
||||||
.GSTR STR?76,"What a concept."
|
.GSTR STR?76,"You can't be serious."
|
||||||
.GSTR STR?77,"Nice try."
|
.GSTR STR?77,"Not bloody likely."
|
||||||
.GSTR STR?78,"You are behaving like a demented Denebian slime devil."
|
.GSTR STR?78,"What a concept."
|
||||||
.GSTR STR?79,"Dream on."
|
.GSTR STR?79,"Nice try."
|
||||||
.GSTR STR?80,"It's the looney bin for you!"
|
.GSTR STR?80,"You are behaving like a demented Denebian slime devil."
|
||||||
.GSTR STR?81,"You have lost your mind."
|
.GSTR STR?81,"Dream on."
|
||||||
.GSTR STR?82,"A waste of time."
|
.GSTR STR?82,"You're wacko."
|
||||||
.GSTR STR?83,"A worthless action -- and much too difficult for a poorly-written program like this one to handle."
|
.GSTR STR?83,"You have lost your mind."
|
||||||
.GSTR STR?84,"Useless. Unhelpful."
|
.GSTR STR?84,"A waste of time."
|
||||||
.GSTR STR?85,"There's another turn down the drain."
|
.GSTR STR?85,"A worthless action -- and much too complex for a crufty program like this one to handle."
|
||||||
.GSTR STR?86,"Why bother?"
|
.GSTR STR?86,"Useless. Unhelpful."
|
||||||
.GSTR STR?87,"with"
|
.GSTR STR?87,"There's another turn down the drain."
|
||||||
.GSTR STR?88,"Done. You might remain alive long enough to type EXAMINE MY STUMP. Oops, I guess not."
|
.GSTR STR?88,"Why bother?"
|
||||||
.GSTR STR?89,"If you insist."
|
.GSTR STR?89,"with"
|
||||||
.GSTR STR?90,"Wow! A hole where your torso used to be!"
|
.GSTR STR?90,"Done. You might remain alive long enough to type EXAMINE MY STUMP. Oops, I guess not."
|
||||||
.GSTR STR?91,"I was going to ask you the same question!"
|
.GSTR STR?91,"If you insist."
|
||||||
.GSTR STR?92,"Floyd loves games! Let's play!"
|
.GSTR STR?92,"Wow! A hole where your torso used to be!"
|
||||||
.GSTR STR?93,"Safety precautions forbid the activation of the vehicle unless both the pilot and copilot seats are occupied"
|
.GSTR STR?93,"I was going to ask you the same question!"
|
||||||
.GSTR STR?94,"Spacecraft activated. Type in the course heading"
|
.GSTR STR?94,"Floyd loves games! Let's play!"
|
||||||
.GSTR STR?95,"Authorization approved. Type the bin number of the desired robot"
|
.GSTR STR?95,"Safety precautions forbid the activation of the vehicle unless both the pilot and copilot seats are occupied"
|
||||||
.GSTR STR?96,"This form has not been validated by a commanding officer"
|
.GSTR STR?96,"Spacecraft activated. Type in the course heading"
|
||||||
.GSTR STR?97,"Improper form for this location"
|
.GSTR STR?97,"Authorization approved. Type the bin number of the desired robot"
|
||||||
.GSTR STR?98,"slot"
|
.GSTR STR?98,"This form has not been validated by a commanding officer"
|
||||||
.GSTR STR?99,"The quiet, dusty corridors stir disturbing memories. You're back on Resida, the deserted, plague-stricken world where you met Floyd. A hot flush creeps over you, indicating that the virulent disease that conquered this planet is beginnning its insidious work on you"
|
.GSTR STR?99,"Improper form for this location"
|
||||||
.GSTR STR?100,"You are strolling across Deck Four of the Duffy, when suddenly you remember that you were supposed to have Handwriting Legibility Evaluation Forms -- all nine parts, for every member of the crew -- on Captain Fussbottom's desk by 7800. It's 7790, and those forms are stored on the other side of the ship. You try to run, but the floor is covered with glue. You can hear the Captain calling your name, louder and louder, as you struggle to move your legs"
|
.GSTR STR?100,"slot"
|
||||||
.GSTR STR?101,"You gulp down the last of your Ramosian Fire Nectar and ask the andro-waiter for another pitcher. This pub makes the finest Nectar on all of Ramos Two, and you and your shipmates are having a pretty rowdy time. Through the windows of the pub you can see a mighty, ancient castle, shining in the light of the three Ramosian moons. The Fire Nectar spreads through your blood and you begin to feel drowsy"
|
.GSTR STR?101,"The quiet, dusty corridors stir disturbing memories. You're back on Resida, the deserted, plague-stricken world where you met Floyd. A hot flush creeps over you, indicating that the virulent disease that conquered this planet is beginnning its insidious work on you"
|
||||||
.GSTR STR?102,"You wake up in a huge stadium, watching an important ceremony. It's a Stellar Patrol promotion ceremony on Tremain! Suddenly your own name echoes over the PA system -- and down below you see YOURSELF walking up the steps to the stage! The presiding admiral describes your heroism on Resida, mentioning that you were awarded the key to the planet, and then asks the ceremonial question, ""Do you accept promotion to Lieutenant First Class?"" You try to yell ""No!"" from the stands, but the words are lost in the vastness of the stadium"
|
.GSTR STR?102,"You are strolling across Deck Four of the Duffy, when suddenly you remember that you were supposed to have Handwriting Legibility Evaluation Forms -- all nine parts, for every member of the crew -- on Captain Fussbottom's desk by 7800. It's 7790, and those forms are stored on the other side of the ship. You try to run, but the floor is covered with glue. You can hear the Captain calling your name, louder and louder, as you struggle to move your legs"
|
||||||
.GSTR STR?103,"You find yourself in a spacepod outside the docking bays of a large space station. All the doors are closed. You snap on the radio, and discover that Floyd is in charge within the station. ""Open the pod bay doors, Floyd,"" you tell him but he replies, ""I'm sorry, I can't do that,"" and begins laughing and your air is beginning to run out"
|
.GSTR STR?103,"You gulp down the last of your Ramosian Fire Nectar and ask the andro-waiter for another pitcher. This pub makes the finest Nectar on all of Ramos Two, and you and your shipmates are having a pretty rowdy time. Through the windows of the pub you can see a mighty, ancient castle, shining in the light of the three Ramosian moons. The Fire Nectar spreads through your blood and you begin to feel drowsy"
|
||||||
.GSTR STR?104,"At last, the Duffy is approaching station Delta Upsilon Upsilon Phi -- your first rec leave in almost six months. It's even worth the six solid days of paperwork necessary for a standard half-day leave. Stationfall is millichrons away, but suddenly you realize that you're all alone on the Duffy! Frantic, you dash to the deserted bridge, but it's too late to stop the out-of-control Duffy from ramming the massive space station! The hull of the station rushes toward you"
|
.GSTR STR?104,"You wake up in a huge stadium, watching an important ceremony. It's a Stellar Patrol promotion ceremony on Tremain! Suddenly your own name echoes over the P.A. system -- and down below you see YOURSELF walking up the steps to the stage! The presiding admiral describes your heroism on Resida, mentioning that you were awarded the key to the planet, and then asks the ceremonial question, ""Do you accept promotion to Lieutenant First Class?"" You try to yell ""No!"" from the stands, but the words are lost in the vastness of the stadium"
|
||||||
.GSTR STR?105,"You dream of being buried alive in an ancient Egyptian pyramid, inside the sarcophagus with some long-dead pharaoh. Phew, does he stink! You gasp and gag as the air in the coffin runs low.
|
.GSTR STR?105,"You find yourself in a spacepod outside the docking bays of a large space station. All the doors are closed. You snap on the radio, and discover that Floyd is in charge within the station. ""Open the pod bay doors, Floyd,"" you tell him but he replies, ""I'm sorry, I can't do that,"" and begins laughing and your air is beginning to run out"
|
||||||
|
.GSTR STR?106,"At last, the Duffy is approaching station Delta Upsilon Upsilon Phi -- your first rec leave in almost six months. It's even worth the six solid days of paperwork necessary for a standard half-day leave. Stationfall is millichrons away, but suddenly you realize that you're all alone on the Duffy! Frantic, you dash to the deserted bridge, but it's too late to stop the out-of-control Duffy from ramming the massive space station! The hull of the station rushes toward you"
|
||||||
|
.GSTR STR?107,"You dream of being buried alive in an ancient Egyptian pyramid, inside the sarcophagus with some long-dead pharaoh. Phew, does he stink! You gasp and gag as the air in the coffin runs low.
|
||||||
This dream, incidentally, is not a particularly unusual one among people who go to sleep inside space suits with limited oxygen supplies."
|
This dream, incidentally, is not a particularly unusual one among people who go to sleep inside space suits with limited oxygen supplies."
|
||||||
.GSTR STR?106,"A movement awakens you in the middle of the night! Through unfocused eyes you see a large machine rolling menacingly closer! A bright light leaps from it, straight toward..."
|
.GSTR STR?108,"A movement awakens you in the middle of the night! Through unfocused eyes you see a large machine rolling menacingly closer! A bright light leaps from it, straight toward..."
|
||||||
.GSTR STR?107,"You collapse from extreme thirst and hunger."
|
.GSTR STR?109,"Snore...snore...KABOOM!"
|
||||||
.GSTR STR?108,"A powerful arc of raw energy bridges the gap between two of the monster's welding extensions. Unfortunately, you were pretty much right between the same two extensions at that moment."
|
.GSTR STR?110,"You collapse from extreme thirst and hunger."
|
||||||
.GSTR STR?109,"It's too dark to see a thing."
|
.GSTR STR?111,"It's too dark to see a thing."
|
||||||
.GSTR STR?110,"You're not holding"
|
.GSTR STR?112,"You're not holding"
|
||||||
.GSTR STR?111,"There's nothing "
|
.GSTR STR?113,"There's nothing "
|
||||||
.GSTR STR?112,"You can see"
|
.GSTR STR?114,"You can see"
|
||||||
.GSTR STR?113,"It seems that"
|
.GSTR STR?115,"It seems that"
|
||||||
.GSTR STR?114,"You can't "
|
.GSTR STR?116,"You can't "
|
||||||
.GSTR STR?115,"You'll have to "
|
.GSTR STR?117,"You'll have to "
|
||||||
.GSTR STR?116,"Look around you.
|
.GSTR STR?118,"Look around you.
|
||||||
"
|
"
|
||||||
.GSTR STR?117,"You're holding it!
|
.GSTR STR?119,"You're holding it!
|
||||||
"
|
"
|
||||||
.GSTR STR?118,"[There seems to be a noun missing in that sentence.]
|
.GSTR STR?120,"[There seems to be a noun missing in that sentence.]
|
||||||
"
|
"
|
||||||
.GSTR STR?119,"You see only blackness.
|
.GSTR STR?121,"You see only blackness.
|
||||||
"
|
"
|
||||||
.GSTR STR?120,"You already did that. Senility strikes again!
|
.GSTR STR?122,"You already did that. Senility strikes again!
|
||||||
"
|
"
|
||||||
.GSTR STR?121,".
|
.GSTR STR?123,".
|
||||||
"
|
"
|
||||||
.GSTR STR?122,"...
|
.GSTR STR?124,"...
|
||||||
|
|
||||||
"
|
"
|
||||||
.GSTR STR?123,"Nothing happens.
|
.GSTR STR?125,"Nothing happens.
|
||||||
"
|
"
|
||||||
.GSTR STR?124,"Failed.
|
.GSTR STR?126,"Failed.
|
||||||
"
|
"
|
||||||
.GSTR STR?125,"Okay.
|
.GSTR STR?127,"Okay.
|
||||||
"
|
"
|
||||||
.GSTR STR?126,"Huh?
|
.GSTR STR?128,"Huh?
|
||||||
"
|
"
|
||||||
.GSTR STR?127,"You can't go that way.
|
.GSTR STR?129,"You can't go that way.
|
||||||
"
|
"
|
||||||
.GSTR STR?128,"It already is!
|
.GSTR STR?130,"It already is!
|
||||||
"
|
"
|
||||||
.GSTR STR?129,"""Floyd does not one of those have!""
|
.GSTR STR?131,"""Floyd does not one of those have!""
|
||||||
"
|
"
|
||||||
.GSTR STR?130,"Like most fromitz boards, it is a twisted maze of silicon circuits. It is square, approximately seventeen centimeters on each side.
|
.GSTR STR?132,"Like most fromitz boards, it is a twisted maze of silicon circuits. It is square, approximately seventeen centimeters on each side.
|
||||||
"
|
"
|
||||||
.GSTR STR?131,"You're neither hungry nor thirsty.
|
.GSTR STR?133,"You're neither hungry nor thirsty.
|
||||||
"
|
"
|
||||||
.GSTR STR?132,"Floyd is leaning against the wall, his head lolling to the side. Apparently, someone has heartlessly turned him off."
|
.GSTR STR?134,"Floyd is leaning against the wall, his head lolling to the side. Apparently, someone has heartlessly turned him off."
|
||||||
.GSTR STR?133,"The only part of the complex robot authorization equipment that is visible to you is a slot (for inserting your form) and a keypad (for typing your selection)."
|
.GSTR STR?135,"The only part of the complex robot authorization equipment that is visible to you is a slot (for inserting your form) and a keypad (for typing your selection)."
|
||||||
.GSTR STR?134,"Request for Stellar Patrol Issue Regulation Black Form Binders Request Form Forms"
|
.GSTR STR?136,"Request for Stellar Patrol Issue Regulation Black Form Binders Request Form Forms"
|
||||||
.GSTR STR?135,"The thick side wall of the tank has been blasted open"
|
.GSTR STR?137,"The thick side wall of the tank has been blasted open"
|
||||||
.GSTR STR?136,"Next time, say what number to set it to.
|
.GSTR STR?138,"Next time, say what number to set it to.
|
||||||
"
|
"
|
||||||
.GSTR STR?137,", hopping mad. ""Why you turn Floyd off?"" he asks accusingly."
|
.GSTR STR?139,", hopping mad. ""Why you turn Floyd off?"" he asks accusingly."
|
||||||
.GSTR STR?138,"Spanning the entire garden is a transparent dome, providing a breathtaking view of the heavens in all their splendor."
|
.GSTR STR?140,"Spanning the entire garden is a transparent dome, providing a breathtaking view of the heavens in all their splendor."
|
||||||
.GSTR STR?139," strike the machine's power source, inducing an overload implosion in said power source."
|
.GSTR STR?141," strike the machine's power source, inducing an overload implosion in said power source."
|
||||||
.GSTR STR?140,"""The Galaxy's Best Zero-Gee Restaurant"""
|
.GSTR STR?142,"""The Galaxy's Best Zero-Gee Restaurant"""
|
||||||
.GSTR STR?141,"The eternal flame has been extinguished!"
|
.GSTR STR?143,"The eternal flame has been extinguished!"
|
||||||
.GSTR STR?142,"Lieutenant First Class"
|
.GSTR STR?144,"Lieutenant First Class"
|
||||||
.GSTR STR?143,"Through the large, dirty window, you can see Dan's used spaceship lot. The spaceships floating in Dan's lot all have their prices whitewashed on their viewports, along with phrases like ""A steal!"" and ""Just reduced!"""
|
.GSTR STR?145,"Through the large, dirty window, you can see Dan's used spaceship lot. The spaceships floating in Dan's lot all have their prices whitewashed on their viewports, along with phrases like ""A steal!"" and ""Just reduced!"""
|
||||||
.GSTR STR?144,"You are already in that mode.
|
.GSTR STR?146,"You are already in that mode.
|
||||||
"
|
"
|
||||||
.GSTR STR?145,"That might get you into serious trouble as a violation of the Comprehensive Forms Destruction and Mutilation Act of 11309 GY.
|
.GSTR STR?147,"That might get you into serious trouble as a violation of the Comprehensive Forms Destruction and Mutilation Act of 11309 GY.
|
||||||
"
|
"
|
||||||
.GSTR STR?146,"ou hear the welder move off in another direction.
|
.GSTR STR?148,"ou hear the welder move off in another direction.
|
||||||
"
|
"
|
||||||
.GSTR STR?147,", of course, no longer attached to the detonator.)"
|
.GSTR STR?149,", of course, no longer attached to the detonator.)"
|
||||||
.GSTR STR?148,"The form is swallowed up, followed by a long pause for triple-redundancy processing. "
|
.GSTR STR?150,"The form is swallowed up, followed by a long pause for triple-redundancy processing. "
|
||||||
.GSTR STR?149,"The form is rejected. "
|
.GSTR STR?151,"The form is rejected. "
|
||||||
.GSTR STR?150,"suddenly sublimes into a puff of FREZONE (tm) gas."
|
.GSTR STR?152,"suddenly sublimes into a puff of FREZONE (tm) gas."
|
||||||
.GSTR STR?151,"For those unfamiliar with PLANETFALL, "
|
.GSTR STR?153,"For those unfamiliar with PLANETFALL, "
|
||||||
.GSTR STR?152,"
|
.GSTR STR?154,"
|
||||||
You have entered a cluttered space bubble "
|
You have entered a cluttered space bubble "
|
||||||
.GSTR STR?153," in the center... Oops. At second glance, you realize that the "
|
.GSTR STR?155," in the center... Oops. At second glance, you realize that the "
|
||||||
.GSTR STR?154," between the arms of the frozen exercise machine, smoke pouring from its engine vents like steam from the nostrils of an angry bull."
|
.GSTR STR?156," between the arms of the frozen exercise machine, smoke pouring from its engine vents like steam from the nostrils of an angry bull."
|
||||||
.GSTR STR?155,"You detach the detonator from "
|
.GSTR STR?157,"You detach the detonator from "
|
||||||
.GSTR STR?156," The ostrich gives a pathetic squawk of terror "
|
.GSTR STR?158," The ostrich gives a pathetic squawk of terror "
|
||||||
.GSTR STR?157,"ou can just make out a letter ""M.""
|
.GSTR STR?159,"ou can just make out a letter ""M.""
|
||||||
"
|
"
|
||||||
.GSTR STR?158," and lands on the floor."
|
.GSTR STR?160," and lands on the floor."
|
||||||
.GSTR STR?159,", and a ladder leads both upward and downward."
|
.GSTR STR?161,", and a ladder leads both upward and downward."
|
||||||
.GSTR STR?160,"That's too long to wait.
|
.GSTR STR?162,"That's too long to wait.
|
||||||
"
|
"
|
||||||
.GSTR STR?161,"You are in the heart of the administrative level of the ship, the largest level of the S.P.S. Duffy or any other Stellar Patrol ship for that matter. The corridor continues starboard and a room lies aft of here. Through the door to port lies the bulk of the Duffy. Next to the door is a slot."
|
.GSTR STR?163,". 2. A callous disregard for scientific accuracy on the part of the author"
|
||||||
.GSTR STR?162,"You must insert a validated Assignment Completion Form in the slot"
|
.GSTR STR?164,"[Please refer to them as FIRST BIN, SECOND BIN, and THIRD BIN.]
|
||||||
.GSTR STR?163,"""STELLAR PATROL
|
"
|
||||||
|
.GSTR STR?165," ""Boy, that looks like fun!"" says Floyd, peering up at you. ""Can Floyd try it? Huh? Please?""
|
||||||
|
"
|
||||||
|
.GSTR STR?166," is a tangle of tubes and space bubbles and derelict rockets."
|
||||||
|
.GSTR STR?167,"It won't budge.
|
||||||
|
"
|
||||||
|
.GSTR STR?168,"Floyd sniffs, ""Please leave Floyd alone for a while.""
|
||||||
|
"
|
||||||
|
.GSTR STR?169,"You are in the heart of the administrative level of the ship, the largest level of the S.P.S. Duffy or any other Stellar Patrol ship for that matter. The corridor continues starboard and a room lies aft. Beyond the door to port lies the bulk of the Duffy. Next to the door is a slot."
|
||||||
|
.GSTR STR?170,"You must insert a validated Assignment Completion Form in the slot"
|
||||||
|
.GSTR STR?171,"""STELLAR PATROL
|
||||||
Paperwork Task Force
|
Paperwork Task Force
|
||||||
ID Number: 1451-352-716"""
|
ID Number: 1451-352-716"""
|
||||||
.GSTR STR?164,"This is the largest space in the ship, three decks tall and with the floor area of seven Rigellian buzzball fields. The only exit is fore."
|
.GSTR STR?172,"This is the largest space in the ship, three decks tall and with the floor area of seven Rigellian buzzball fields. The only exit is fore."
|
||||||
.GSTR STR?165,"The room is filled to the ceiling with row upon row of pallets filled with boxes. Each box has some writing stamped on the side."
|
.GSTR STR?173,"The room is filled to the ceiling with row upon row of pallets filled with boxes. Each box has some writing stamped on the side."
|
||||||
.GSTR STR?166,"The deck five corridor ends here at the entrance to the cargo bay, to starboard. A smaller entrance leads fore."
|
.GSTR STR?174,"The deck twelve corridor ends here at the entrance to the cargo bay, to starboard. A smaller entrance leads fore."
|
||||||
.GSTR STR?167,"He's an amusing and friendly little fellow."
|
.GSTR STR?175,"He's an amusing and friendly little fellow."
|
||||||
.GSTR STR?168,"That's me!"
|
.GSTR STR?176,"That's me!"
|
||||||
.GSTR STR?169,"Floyd, he"
|
.GSTR STR?177,"Floyd, he"
|
||||||
.GSTR STR?170,"rubs his head affectionately against your shoulder"
|
.GSTR STR?178,"rubs his head affectionately against your shoulder"
|
||||||
.GSTR STR?171,"notices a mouse scurrying by and tries to hide behind you"
|
.GSTR STR?179,"notices a mouse scurrying by and tries to hide behind you"
|
||||||
.GSTR STR?172,"reminisces about the excitement of your adventure on Resida"
|
.GSTR STR?180,"reminisces about the excitement of your adventure on Resida"
|
||||||
.GSTR STR?173,"hums the theme song from a popular Saturday morning hyperwave cartoon"
|
.GSTR STR?181,"hums the theme song from a popular Saturday morning hyperwave cartoon"
|
||||||
.GSTR STR?174,"plays a quick game of paddleball, almost breaking his record of four hits"
|
.GSTR STR?182,"plays a quick game of paddleball, almost breaking his record of four hits"
|
||||||
.GSTR STR?175,"paces impatiently"
|
.GSTR STR?183,"paces impatiently"
|
||||||
.GSTR STR?176,"absent-mindedly recites the first six hundred digits of pi"
|
.GSTR STR?184,"absent-mindedly recites the first six hundred digits of pi"
|
||||||
.GSTR STR?177,"recalls the time he bruised his knee"
|
.GSTR STR?185,"recalls the time he bruised his knee"
|
||||||
.GSTR STR?178,"tells you how much it hurts to repair dents"
|
.GSTR STR?186,"tells you how much it hurts to repair dents"
|
||||||
.GSTR STR?179,"cranes his neck to see what you are doing"
|
.GSTR STR?187,"cranes his neck to see what you are doing"
|
||||||
.GSTR STR?180,"examines himself for signs of rust"
|
.GSTR STR?188,"examines himself for signs of rust"
|
||||||
.GSTR STR?181,"absent-mindedly oils one of his joints"
|
.GSTR STR?189,"absent-mindedly oils one of his joints"
|
||||||
.GSTR STR?182,"wanders restlessly around the room"
|
.GSTR STR?190,"wanders restlessly around the room"
|
||||||
.GSTR STR?183,"sneaks up clumsily behind you and shouts ""Boo!"" in your ear"
|
.GSTR STR?191,"sneaks up clumsily behind you and shouts ""Boo!"" in your ear"
|
||||||
.GSTR STR?184,"frets about the possibility of his batteries failing"
|
.GSTR STR?192,"frets about the possibility of his batteries failing"
|
||||||
.GSTR STR?185,"whistles tunelessly"
|
.GSTR STR?193,"whistles tunelessly"
|
||||||
.GSTR STR?186,"boasts about the time he helped someone find a lost paper clip"
|
.GSTR STR?194,"boasts about the time he helped someone find a lost paper clip"
|
||||||
.GSTR STR?187,"yawns and looks bored"
|
.GSTR STR?195,"yawns and looks bored"
|
||||||
.GSTR STR?188,"complains about a recent assignment in the forms filing department"
|
.GSTR STR?196,"complains about a recent assignment in the forms filing department"
|
||||||
.GSTR STR?189,"produces a crayon from one of his compartments and scrawls his name on the wall"
|
.GSTR STR?197,"produces a crayon from one of his compartments and scrawls his name on the wall"
|
||||||
.GSTR STR?190,"stomps on your foot, for no apparent reason"
|
.GSTR STR?198,"stomps on your foot, for no apparent reason"
|
||||||
.GSTR STR?191,"accidentally bumps into you, and reacts by cursing your ancestors"
|
.GSTR STR?199,"accidentally bumps into you, and reacts by cursing your ancestors"
|
||||||
.GSTR STR?192,"produces a loud burp and fails to apologize"
|
.GSTR STR?200,"produces a loud burp and fails to apologize"
|
||||||
.GSTR STR?193,"mumbles about a mysterious future in which humans will have to take orders from robots"
|
.GSTR STR?201,"mumbles about a mysterious future in which humans will have to take orders from robots"
|
||||||
.GSTR STR?194,"tells an off-color joke about the bizarre mating habits of flesh and blood creatures"
|
.GSTR STR?202,"tells an off-color joke about the bizarre mating habits of flesh and blood creatures"
|
||||||
.GSTR STR?195,"Floyd tells Plato about a neat shortcut for calculating seventh order differentials"
|
.GSTR STR?203,"Floyd tells Plato about a neat shortcut for calculating seventh order differentials"
|
||||||
.GSTR STR?196,"Plato tells Floyd one of the ancient legends about the early days of the settlement of the galaxy"
|
.GSTR STR?204,"Plato tells Floyd one of the ancient legends about the early days of the settlement of the galaxy"
|
||||||
.GSTR STR?197,"Floyd confides to Plato that his life's dream is to get locked up overnight in a toy factory"
|
.GSTR STR?205,"Floyd confides to Plato that his life's dream is to get locked up overnight in a toy factory"
|
||||||
.GSTR STR?198,"Floyd and Plato discuss their favorite battery recharging techniques"
|
.GSTR STR?206,"Floyd and Plato discuss their favorite battery recharging techniques"
|
||||||
.GSTR STR?199,"Plato helps polish a hard-to-reach spot on Floyd's back"
|
.GSTR STR?207,"Plato helps polish a hard-to-reach spot on Floyd's back"
|
||||||
.GSTR STR?200,"""You like Floyd, don't you, Plato?"" asks Floyd. ""Yes,"" replies the taller robot, ""you're the only robot I've ever met who doesn't call me a nerd."" Floyd smiles"
|
.GSTR STR?208,"""You like Floyd, don't you, Plato?"" asks Floyd. ""Yes,"" replies the taller robot, ""you're the only robot I've ever met who doesn't call me a nerd."" Floyd smiles"
|
||||||
.GSTR STR?201,"In a very sad voice, Floyd talks of his friend Lazarus, a medical robot on Resida who was tragically disassembled. Plato responds, ""Now, Floyd, don't fill your head with the sad memories of Lazarus' death. Think instead about the joy-filled times when you and your friend were together."" Floyd seems awed by such wisdom"
|
.GSTR STR?209,"In a very sad voice, Floyd talks of his friend Lazarus, a medical robot on Resida who was tragically disassembled. Plato responds, ""Now, Floyd, don't fill your head with the sad memories of Lazarus' death. Think instead about the joy-filled times when you and your friend were together."" Floyd seems awed by such wisdom"
|
||||||
.GSTR STR?202,"Floyd gives Plato a friendly hug"
|
.GSTR STR?210,"Floyd gives Plato a friendly hug"
|
||||||
.GSTR STR?203,"Floyd stubs his toe and begins to whimper. ""There, there,"" says Plato, ""such a reaction will not reduce the level of pain."" He gives Floyd a little tickle, and Floyd begins giggling and forgets the injury"
|
.GSTR STR?211,"Floyd stubs his toe and begins to whimper. ""There, there,"" says Plato, ""such a reaction will not reduce the level of pain."" He gives Floyd a little tickle, and Floyd begins giggling and forgets the injury"
|
||||||
.GSTR STR?204,"Bin number two holds a spindly little robot, a specialized model designed for bursting and decollating multi-part forms. A tiny nameplate on her perforating extension reads ""Helen."""
|
.GSTR STR?212,"Bin number two holds a spindly little robot, a specialized model designed for bursting and decollating multi-part forms. A tiny nameplate on her perforating extension reads ""Helen."""
|
||||||
.GSTR STR?205,"In the first bin is a bulky robot, obviously intended for heavy lifting. A brass plate on one of his pneumatic arm lifts says ""Rex."""
|
.GSTR STR?213,"In the first bin is a bulky robot, obviously intended for heavy lifting. A brass plate on one of his pneumatic arm lifts says ""Rex."""
|
||||||
.GSTR STR?206," Rex trundles after you. Unfortunately, Rex is not too bright on his best days, and today is not one of them. He forgets to stop when you do; sixteen tons of Rex turn you into a human pancake."
|
.GSTR STR?214," Rex trundles after you. Unfortunately, Rex is not too bright on his best days, and today is not one of them. He forgets to stop when you do; sixteen tons of Rex turn you into a human pancake."
|
||||||
.GSTR STR?207,"open the hatch"
|
.GSTR STR?215,"open the hatch"
|
||||||
.GSTR STR?208,"If you're in spacelane 630-461, keep it down to 26000 kilometers per millichron. There's a stakeout there."
|
.GSTR STR?216,"If you're in spacelane 630-461, keep it down to 26000 kilometers per millichron. There's a stakeout there."
|
||||||
.GSTR STR?209,"Anyone seen any smokeys in the Nebulon sector?"
|
.GSTR STR?217,"Anyone seen any smokeys in the Nebulon sector?"
|
||||||
.GSTR STR?210,"I'm looking for a traffic report on spacelane 317-455."
|
.GSTR STR?218,"I'm looking for a traffic report on spacelane 317-455."
|
||||||
.GSTR STR?211,"At the conclusion of this recording, your emergency message will be sent. In the meantime, stay calm. Nothing can go wrong <skip> go wrong <skip> go wrong <skip> go wrong.."
|
.GSTR STR?219,"At the conclusion of this recording, your emergency message will be sent. In the meantime, stay calm. Nothing can go wrong <skip> go wrong <skip> go wrong <skip> go wrong.."
|
||||||
.GSTR STR?212," filling the bay with hot ion gasses. Since you slept through most lectures at boot camp, you may not recall that hot ion gasses are pretty deadly."
|
.GSTR STR?220," filling the bay with hot ion gasses. Since you slept through most lectures at boot camp, you may not recall that hot ion gasses are pretty deadly."
|
||||||
.GSTR STR?213,". Once in space, the truck's air gushes out through the open hatch."
|
.GSTR STR?221,". Once in space, the truck's air gushes out through the open hatch."
|
||||||
.GSTR STR?214,", leaving an impressive cloud of ion dust. However, you're in no condition to admire it, since you are now smeared all over the rear wall of the truck."
|
.GSTR STR?222,", leaving an impressive cloud of ion dust. However, you're in no condition to admire it, since you are now smeared all over the rear wall of the truck."
|
||||||
.GSTR STR?215,"Fuel level at three-quarters"
|
.GSTR STR?223,"Fuel level at three-quarters"
|
||||||
.GSTR STR?216,"Fuel level at one-quarter"
|
.GSTR STR?224,"Fuel level at one-quarter"
|
||||||
.GSTR STR?217,"Docking bay one is occupied. Defaulting to bay two"
|
.GSTR STR?225,"Docking bay one is occupied. Defaulting to bay two"
|
||||||
.GSTR STR?218,"Arrival at terminus of inputted course. Fuel levels now effectively at zero. Oxygen supply for one person: approximately two chrons"
|
.GSTR STR?226,"Arrival at terminus of inputted course. Fuel level now effectively at zero. Oxygen supply for one person: approximately two chrons"
|
||||||
.GSTR STR?219," As the oxygen runs low, Floyd becomes quite chipper. Never before has he been in such a rust-inhibiting atmosphere. You, on the other hand, are dead."
|
.GSTR STR?227," As the oxygen runs low, Floyd becomes quite chipper. Never before has he been in such a rust-inhibiting atmosphere. You, on the other hand, are dead."
|
||||||
.GSTR STR?220," blueberry walnut soup"
|
.GSTR STR?228," blueberry walnut soup"
|
||||||
.GSTR STR?221," Ramosian tree-mold custard"
|
.GSTR STR?229,"soup"
|
||||||
.GSTR STR?222," apricot yogurt"
|
.GSTR STR?230," Ramosian tree-mold custard"
|
||||||
.GSTR STR?223,"This is a fairly large space where much of the maintenance work for the station takes place. Some repair work for visiting ships is also done here. The room is filled with all sorts of repair and fabrication machinery. A door leads south, and there's an opening to the north."
|
.GSTR STR?231," apricot yogurt"
|
||||||
.GSTR STR?224,"I'm really not at all mechanically inclined. My sincerest apologies."
|
.GSTR STR?232,"This is a fairly large space where much of the maintenance work for the station takes place. Some repair work for visiting ships is also done here. The room is filled with all sorts of repair and fabrication machinery. A door leads south, and there's an opening to the north."
|
||||||
.GSTR STR?225,"It's a kind of a thingamabob for putting in a, you know, a whosiwhatsis."
|
.GSTR STR?233,"I'm really not at all mechanically inclined. My sincerest apologies."
|
||||||
.GSTR STR?226,"This is one of the storage areas. Exits lie to the east and south."
|
.GSTR STR?234,"It's a kind of a thingamabob for putting in a, you know, a whosiwhatsis."
|
||||||
.GSTR STR?227,"twenty tiny sockets"
|
.GSTR STR?235,"This is one of the storage areas. Exits lie to the east and south."
|
||||||
.GSTR STR?228,"The central corridor continues around to the southeast and southwest, but another corridor joins from the north. There's a door to the east and a doorway to the northeast."
|
.GSTR STR?236,"twenty tiny sockets"
|
||||||
.GSTR STR?229,"The corridor widens here as it approaches the skin of the space station at the point where a Scientific Sub-Module would connect. Sure enough, the connecting tube of a Sub-Module begins just to the north! An auto-door lies to the west. Opposite it, a doorway leads east."
|
.GSTR STR?237,"The central corridor continues around to the southeast and southwest, but another corridor joins from the north. There's a door to the east and a doorway to the northeast."
|
||||||
.GSTR STR?230,"This is the shop for station personnel, selling everything from postcards to chewing gum at inflated prices. Exits lead west and southwest."
|
.GSTR STR?238,"The corridor widens here as it approaches the skin of the space station at the point where a Scientific Sub-Module would connect. Sure enough, the connecting tube of a Sub-Module begins just to the north! An auto-door lies to the west. Opposite it, a doorway leads east. A junction is visible to the south."
|
||||||
.GSTR STR?231,"In the corner of the PX is a Stellar Patrol dispensing machine, consisting of a screen (displaying the dispenser's ""exciting"" offerings), a slot (for coin insertion), a keypad (for typing your selection), and a hole (where the dispensed item hopefully -- but rarely -- arrives)."
|
.GSTR STR?239,"This is the shop for station personnel, selling everything from postcards to chewing gum at inflated prices. Exits lead west and southwest."
|
||||||
.GSTR STR?232,"coin slot"
|
.GSTR STR?240,"In the corner of the PX is a Stellar Patrol dispensing machine, consisting of a screen (displaying the dispenser's ""exciting"" offerings), a slot (for coin insertion), a keypad (for typing your selection), and a hole (where the dispensed item hopefully -- but rarely -- arrives)."
|
||||||
.GSTR STR?233," In case you were napping during Demolitions Training, this means that you're now a fine layer of ash all over the walls of the PX."
|
.GSTR STR?241,"coin slot"
|
||||||
.GSTR STR?234,"It's a kind of a thingamabob for connecting a, you know, a whosiwhatsis."
|
.GSTR STR?242," In case you were napping during Demolitions Training, this means that you're now a fine layer of ash all over the walls of the PX."
|
||||||
.GSTR STR?235,"Surrounding the beds of this infirmary is the finest diagnostic equipment that unlimited Stellar Patrol budgets can buy. To the east, an ID reader indicates a security door. You can leave to the west or southeast."
|
.GSTR STR?243,"It's a kind of a thingamabob for connecting a, you know, a whosiwhatsis."
|
||||||
.GSTR STR?236,"This is a modest prison, with three cells. The only exit is west."
|
.GSTR STR?244,"Surrounding the beds of this infirmary is the finest diagnostic equipment that unlimited Stellar Patrol budgets can buy. To the east, an ID reader indicates a security door. You can leave to the west or southeast."
|
||||||
.GSTR STR?237,"lock"
|
.GSTR STR?245,"This is a modest prison, with three cells. The only exit is west."
|
||||||
.GSTR STR?238,"The corridor continues around to the northwest and southwest, and an adjoining one heads east."
|
.GSTR STR?246,"lock"
|
||||||
.GSTR STR?239,"This central corridor turns northeast and northwest of here. A second corridor begins here and leads south. There are doorways to the southwest, southeast, and east."
|
.GSTR STR?247,"The corridor continues around to the northwest and southwest, and an adjoining one heads east."
|
||||||
.GSTR STR?240," The shock seems to have been a bit too much for your heart."
|
.GSTR STR?248,"This central corridor turns northeast and northwest of here. A second corridor begins here and leads south. There are doorways to the southwest, southeast, and east."
|
||||||
.GSTR STR?241,"This is the room where octuplet copies of important forms are stored. Since it is only about a hundred square meters, this room cannot hold more than a few days worth of storage before being dumped to nanofilm. Mercifully, there is an exit to the northeast."
|
.GSTR STR?249," The shock seems to have been a bit too much for your heart."
|
||||||
.GSTR STR?242,"reader"
|
.GSTR STR?250,"This is the room where octuplet copies of forms are stored. Since it's only a hundred square meters, this room cannot hold more than a few days' worth of storage before being dumped to nanofilm. Mercifully, there is an exit to the northeast."
|
||||||
.GSTR STR?243," The log reader explodes!"
|
.GSTR STR?251,"reader"
|
||||||
.GSTR STR?244,"These are by far the nicest living quarters on the station, with separate sleeping, changing, and working cubicles, and a private SanFac. The only exit is west."
|
.GSTR STR?252,"These are by far the nicest living quarters on the station, with separate sleeping, changing, and working cubicles, and a private SanFac. The only exit is west."
|
||||||
.GSTR STR?245,"Sitting on the Commander's desk is an ordinary-looking log tape. There's a notation printed on it."
|
.GSTR STR?253,"Sitting on the Commander's desk is an ordinary-looking log tape. There's a notation printed on it."
|
||||||
.GSTR STR?246,"""Commander's Log -- 11349.12.2 through 11349.12.4"""
|
.GSTR STR?254,"""Commander's Log -- 11349.12.2 through 11349.12.4"""
|
||||||
.GSTR STR?247,"A sturdy safe is welded to the deck next to the desk."
|
.GSTR STR?255,"A sturdy safe is welded to the deck next to the desk."
|
||||||
.GSTR STR?248,"The safe has been blown open! The area around the safe is blackened, and a burnt odor hangs in the air."
|
.GSTR STR?256,"The safe has been blown open! The area around the safe is blackened, and a burnt odor hangs in the air."
|
||||||
.GSTR STR?249,"hole"
|
.GSTR STR?257,"hole"
|
||||||
.GSTR STR?250,"This is the Station Commander's conference room. Doors point north and west."
|
.GSTR STR?258,"This is the Station Commander's conference room. Doors point north and west."
|
||||||
.GSTR STR?251,"This is a secondary weapons storage deck, but the only weapon deck on a station with no Military Sub-Module. Exit: south."
|
.GSTR STR?259,"This is a secondary weapons storage deck, but the only weapon deck on a station with no Military Sub-Module. Exit: south."
|
||||||
.GSTR STR?252,"This is a wide but not very tall docking bay. The station entrance lies to the east."
|
.GSTR STR?260,"This is a wide but not very tall docking bay. The station entrance lies to the east."
|
||||||
.GSTR STR?253,"""Spacetruck Refueling Instructions"
|
.GSTR STR?261,"""Spacetruck Refueling Instructions"""
|
||||||
.GSTR STR?254,"This cramped dormitory, composed of approximately twenty private cubicles, curves around the northern half of this level, with exits to the southeast and southwest."
|
.GSTR STR?262,"This cramped dormitory, composed of approximately twenty private cubicles, curves around the northern half of this level, with exits to the southeast and southwest."
|
||||||
.GSTR STR?255,"You enter one of the cubicles but find nothing of interest."
|
.GSTR STR?263,"You enter one of the cubicles but find nothing of interest."
|
||||||
.GSTR STR?256,"This warren of tiny cubicles fills the southern half of this level, curving toward exits in the northeast and northwest corners."
|
.GSTR STR?264,"This warren of tiny cubicles fills the southern half of this level, curving toward exits in the northeast and northwest corners."
|
||||||
.GSTR STR?257,"This is a crowded but otherwise typical sanitary facility, with rows of showers, toilet stalls, and sinks. There are exits both north and south."
|
.GSTR STR?265,"This is a crowded but otherwise typical sanitary facility, with rows of showers, toilet stalls, and sinks. There are exits both north and south."
|
||||||
.GSTR STR?258,"A multiple-function exercise machine sits imposingly on one side of the gym. There is a sign above it."
|
.GSTR STR?266,"A multiple-function exercise machine sits imposingly on one side of the gym. There is a sign above it."
|
||||||
.GSTR STR?259," hums encouraging platitudes as it exercises you to death."
|
.GSTR STR?267," hums encouraging platitudes as it exercises you to death."
|
||||||
.GSTR STR?260,"In the corner, next to the dryer, is a large empty spot where the washer should be."
|
.GSTR STR?268,"In the corner, next to the dryer, is a large empty spot where the washer should be."
|
||||||
.GSTR STR?261,"lurches forward and slams shut on your arm. Before you pass out from the pain, you hear a rumbling sound from the presser, but you can't decide whether it sounds more like a chuckle or a burp."
|
.GSTR STR?269,"lurches forward and slams shut on your arm. Before you pass out from the pain, you hear a rumbling sound from the presser, but you can't decide whether it sounds more like a chuckle or a burp."
|
||||||
.GSTR STR?262,"""Chapel Maintenance Procedures"
|
.GSTR STR?270,"""Chapel Maintenance Procedures"""
|
||||||
.GSTR STR?263,"This sixty-seat auditorium is used for lectures, certain large briefings, an occasional live entertainment, and a rare live broadcast over deep-space channels. A projection booth dominates the rear of the room. The theatre's only exit is to the north."
|
.GSTR STR?271,"This sixty-seat auditorium is used for lectures, certain large briefings, an occasional live entertainment, and a rare live broadcast over deep-space channels. A projection booth dominates the rear of the room. The theatre's only exit is to the north."
|
||||||
.GSTR STR?264,"Aaarghhh! The coffee is poisoned! It's eating away at your insides!!"
|
.GSTR STR?272,"coffee"
|
||||||
.GSTR STR?265,"This is the primary storage room of the station, with large stockpiles of important items. For example, basic organic materials are needed to supplement the food supply due to the tiny inefficiencies of the recycling process. This is nearly the top level of the Command Module, and the ceiling curves in sharply over the supply room, which curves around to doors at the northwestern and southwestern ends."
|
.GSTR STR?273,"Aaarghhh! The coffee is poisoned! It's eating away at your insides!!"
|
||||||
.GSTR STR?266,"detonator"
|
.GSTR STR?274,"This is the primary storage room of the station, with large stockpiles of important items. For example, basic organic materials are needed to supplement the food supply due to the tiny inefficiencies of the recycling process. This is nearly the top level of the Command Module, and the ceiling curves in sharply over the supply room, which curves around to doors at the northwestern and southwestern ends."
|
||||||
.GSTR STR?267,"This is a medium-sized conference room with doors to the south and west."
|
.GSTR STR?275,"detonator"
|
||||||
.GSTR STR?268,"This is a fairly large conference room with north and south exits."
|
.GSTR STR?276,"This is a medium-sized conference room with doors to the south and west."
|
||||||
.GSTR STR?269,"This station's library has some printed material, such as recently transmitted magazines, but primarily it is a location for reading nanofilm spools, using the spool reader, and accessing the main computer's data banks via a computer terminal. Strangely, the computer terminal has been removed from the room. There's a door to the north and an exit to the west."
|
.GSTR STR?277,"This is a fairly large conference room with north and south exits."
|
||||||
.GSTR STR?270,"Magazines are not to be removed from the library"
|
.GSTR STR?278,"This station's library has some printed material, such as recently transmitted magazines, but primarily it is a location for reading nanofilm spools, using the spool reader here, and for accessing the main computer's data banks via a computer terminal. Strangely, the computer terminal has been removed. There's a door to the north and an exit to the west."
|
||||||
.GSTR STR?271,"You stroll down one of the pebbled paths. It circles the garden, passing more exotic plants, and returns to the area near the elevator."
|
.GSTR STR?279,"Magazines are not to be removed from the library"
|
||||||
.GSTR STR?272,"""Shrubbery Maintenance Supplies"""
|
.GSTR STR?280,"You stroll down one of the pebbled paths. It circles the garden, passing more exotic plants, and returns to the area near the elevator."
|
||||||
.GSTR STR?273,"open the grating"
|
.GSTR STR?281,"""Shrubbery Maintenance Supplies"""
|
||||||
.GSTR STR?274,"These cubicles are for use by any visitors or station personnel beyond the normal complement. The entire barracks seem to be unused as well as deserted. The exit lies to the south, and the barracks curve around to the east."
|
.GSTR STR?282,"open the grating"
|
||||||
.GSTR STR?275,"This is the rather ordinary sanitary facility for the barracks to the north."
|
.GSTR STR?283,"These cubicles are for use by any visitors or station personnel beyond the normal complement. The entire barracks seem to be unused as well as deserted. The exit lies to the south, and the barracks curve around to the east."
|
||||||
.GSTR STR?276,"This is the station's largest docking bay. A huge door to the east leads into the station.
|
.GSTR STR?284,"This is the rather ordinary sanitary facility for the barracks to the north."
|
||||||
|
.GSTR STR?285,"This is the station's largest docking bay. A huge door to the east leads into the station.
|
||||||
Resting in the docking bay is a small ship of obviously alien origin. An open hatch seems to beckon you inward."
|
Resting in the docking bay is a small ship of obviously alien origin. An open hatch seems to beckon you inward."
|
||||||
.GSTR STR?277,"Must be a connect-the-dots! And a real easy one, too! None of those dumb numbers to confuse you! Where's my crayon?"
|
.GSTR STR?286,"Must be a connect-the-dots! And a real easy one, too! None of those dumb numbers to confuse you! Where's my crayon?"
|
||||||
.GSTR STR?278,"Hmmm. Some kind of alien writing, I presume. If I recall, the Mayor is an expert on that subject."
|
.GSTR STR?287,"Hmmm. Some kind of alien writing, I presume. If I recall, the Mayor is an expert on that subject."
|
||||||
.GSTR STR?279,"Lying under the dots is a skeleton, the brittle remains of a member of some unfamiliar alien race."
|
.GSTR STR?288,"Lying under the dots is a skeleton, the brittle remains of a member of some unfamiliar alien race."
|
||||||
.GSTR STR?280,"This is the station's smallest docking bay. You can enter the station to the east."
|
.GSTR STR?289,"This is the station's smallest docking bay. You can enter the station to the east."
|
||||||
.GSTR STR?281,"The corridor, which widens off to the west, ends here. There are doorways north and east of you, and doors to the south and southwest. The door to the north must be a security door, because there's an ID reader next to it."
|
.GSTR STR?290,"The corridor, which widens off to the west, ends here. Doors lie to the east, north, south, and southwest. The door to the north must be a security door, because there's an ID reader next to it."
|
||||||
.GSTR STR?282,"This is a room where new robots are constructed, old robots are repaired, and unused robots are stored. There's a door to the east."
|
.GSTR STR?291,"This is a room where new robots are constructed, old robots are repaired, and unused robots are stored. There's a door to the east."
|
||||||
.GSTR STR?283,"opening of the chamber"
|
.GSTR STR?292,"opening of the chamber"
|
||||||
.GSTR STR?284,"There's a young-looking robot lying here, apparently having completed the final ""training"" phase of its construction. The wires for feeding it information have been removed, but it has not yet ""woken up."" A dim memory from your old robotics text drifts through your mind: ""The incubation period between the training and 'birth' of a robot is two to twenty days, depending on the complexity of the model."" This particular model has the name ""Oliver"" engraved on its chestplate."
|
.GSTR STR?293,"There's a young-looking robot lying here, apparently having completed the final ""training"" phase of its construction. The wires for feeding it information have been removed, but it has not yet ""woken up."" A dim memory from your old robotics text drifts through your mind: ""The incubation period between the training and 'birth' of a robot is two to twenty days, depending on the complexity of the model."" This particular model has the name ""Oliver"" engraved on its chestplate."
|
||||||
.GSTR STR?285,"If we be here when Oliver wakes up, Floyd would like to teach Oliver to play paddleball. Paddleball helped Floyd forget how lonely and scared he was until he found friends...like you."
|
.GSTR STR?294,"A little ""sleeping"" robot named ""Oliver"" is lying here."
|
||||||
.GSTR STR?286,"Ah, a new robot. Poor fellow; new robots are so mercilessly mistreated by the older robots. Such is our lot."
|
.GSTR STR?295,"If we be here when Oliver wakes up, Floyd would like to teach Oliver to play paddleball. Paddleball helped Floyd forget how lonely and scared he was until he found friends...like you."
|
||||||
.GSTR STR?287,"In an event staggering in its improbability, a huge meteor crashes through the hull of the space station as you take aim, and turns you into cosmic dust. Can't say you didn't deserve it, you baby-robot-killer you."
|
.GSTR STR?296,"Ah, a new robot. Poor fellow; new robots are so mercilessly mistreated by the older robots. Such is our lot."
|
||||||
.GSTR STR?288,"This is the place where a station's exports are prepared before transfer to the docking bays and subsequent shipment throughout the regional sector. Hanging above a large vacant section of the room is an eye-catching sign. The only exit is west."
|
.GSTR STR?297,"In an event staggering in its improbability, a huge meteor crashes through the hull of the space station as you take aim, and turns you into cosmic dust. Can't say you didn't deserve it, you baby-robot-killer you."
|
||||||
.GSTR STR?289,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. There's a door to the north, and an opening leads southeast."
|
.GSTR STR?298,"This is the place where a station's exports are prepared before transfer to the docking bays and subsequent shipment throughout the regional sector. Hanging above a large vacant section of the room is an eye-catching sign. The only exit is west."
|
||||||
.GSTR STR?290,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. A door leads north and a doorway south."
|
.GSTR STR?299,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. There's a door to the north, and an opening leads southeast."
|
||||||
.GSTR STR?291,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. A doorway lies to the southwest, and there's an auto-door to the north."
|
.GSTR STR?300,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. A door leads north and a doorway south."
|
||||||
.GSTR STR?292,"A moderately luxurious SanFac, with a pair of bathtubs in addition to the regular fixtures. Exits lead north, northeast, and northwest."
|
.GSTR STR?301,"This is a fairly comfortable two-person living quarters, significantly roomier than the barracks where most of the ship's personnel live. A doorway lies to the southwest, and there's an auto-door to the north."
|
||||||
.GSTR STR?293,"Partway down, you discover that the ladder passage to Level Eight is sealed off -- apparently from below."
|
.GSTR STR?302,"A moderately luxurious SanFac, with a pair of bathtubs in addition to the regular fixtures. Exits lead north, northeast, and northwest."
|
||||||
.GSTR STR?294,"""Collater Repair Manual"""
|
.GSTR STR?303,"A few rungs down, you discover that the ladder passage to Level Eight is sealed off -- apparently from below."
|
||||||
.GSTR STR?295,"Outdated forms and expired files are reduced to pulp by this machinery. In addition, raw pulp is constantly being ferried into the station from nearby forest worlds. The output from this plant feeds the station's printing plant, which lies to the southeast."
|
.GSTR STR?304,"""Collater Repair Manual"""
|
||||||
.GSTR STR?296,"Someone has presumably been attempting to repair some of the machinery in this room, because they left a drill lying around."
|
.GSTR STR?305,"Outdated forms and expired files are reduced to pulp by this machinery. In addition, raw pulp is constantly being ferried into the station from nearby forest worlds. The output from this plant feeds the station's printing plant, which lies to the southeast."
|
||||||
.GSTR STR?297,"drill"
|
.GSTR STR?306,"Someone has presumably been attempting to repair some of the machinery in this room, because they left a drill lying around."
|
||||||
.GSTR STR?298,"remove the bit that's in the drill"
|
.GSTR STR?307,"drill"
|
||||||
.GSTR STR?299,"Oh, no! The elevator isn't at this floor! It's a long plunge..."
|
.GSTR STR?308,"remove the bit that's in the drill"
|
||||||
.GSTR STR?300,"Magnetically-stored data has been damaged; see the Security Officer to have data restored"
|
.GSTR STR?309,"Oh, no! The elevator isn't at this floor! It's a long plunge..."
|
||||||
.GSTR STR?301,"This shiny cylindrical corridor is the connector between the Command Module, to the south, and the Scientific Sub-Module, to the north."
|
.GSTR STR?310,"Magnetically-stored data has been damaged; see the Security Officer to have data restored"
|
||||||
.GSTR STR?302,"This laboratory, which fills most of the middle level of the Sub-Module, is for the study of applications of the various space-related research that takes place on the other levels. Gangways lead up and down, and a door leads north. A connecting tube opens to the south."
|
.GSTR STR?311,"This shiny cylindrical corridor is the connector between the Command Module, to the south, and the Scientific Sub-Module, to the north."
|
||||||
.GSTR STR?303,"This is a small office associated with the lab to the south."
|
.GSTR STR?312,"This laboratory, which fills most of the middle level of the Sub-Module, is for the study of applications of the various space-related research that takes place on the other levels. Gangways lead up and down, and a door leads north. A connecting tube opens to the south."
|
||||||
.GSTR STR?304,"This is the notebook of a certain Professor Schmidt, who was studying a strange pyramid discovered aboard a derelict alien ship and brought here.
|
.GSTR STR?313,"This is a small office associated with the lab to the south."
|
||||||
|
.GSTR STR?314,"This is the notebook of a certain Professor Schmidt, who was studying a strange pyramid discovered aboard a derelict alien ship and brought here.
|
||||||
Schmidt traced back the path of the alien ship; the path points out of the galaxy without nearing any star system. Further, extending the path leads straight to one of our smaller neighboring galaxies. Schmidt concludes that the ship and the pyramid are probably well over one billion years old!
|
Schmidt traced back the path of the alien ship; the path points out of the galaxy without nearing any star system. Further, extending the path leads straight to one of our smaller neighboring galaxies. Schmidt concludes that the ship and the pyramid are probably well over one billion years old!
|
||||||
Next, Schmidt studied the wall markings in the alien ship. A series of identical dots, they defied every computerized model of linguistic decipherment! Then, in an inspiration, Schmidt studied the dots for nonvisual properties. His diary vaguely refers to a breakthrough, saying, ""I guess my pal, the mayor, will get to show off his linguistic training.""
|
Next, Schmidt studied the wall markings in the alien ship. A series of identical dots, they defied every computerized model of linguistic decipherment! Then, in an inspiration, Schmidt studied the dots for nonvisual properties. His diary vaguely refers to a breakthrough, saying, ""I guess my pal, the mayor, will get to show off his linguistic training.""
|
||||||
Finally, Schmidt began concentrating his studies on the pyramid itself. He was able to discover very little, blaming this primarily on the unexplained failures of several crucial pieces of lab machinery."
|
Finally, Schmidt began concentrating his studies on the pyramid itself. He was able to discover very little, blaming this primarily on the unexplained failures of several crucial pieces of lab machinery."
|
||||||
.GSTR STR?305,"This laboratory conducts research into various space-related physical sciences. Gangways lead up and down, a there's a door to the north."
|
.GSTR STR?315,"This laboratory conducts research into various space-related physical sciences. Gangways lead up and down, and there's a door to the north."
|
||||||
.GSTR STR?306,"Various biological sciences, as they related to the environment of space, are studied in this laboratory. There is a gangway leading up, another leading down, and a door leading north."
|
.GSTR STR?316,"Various biological sciences, as they relate to the environment of space, are studied in this laboratory. There is a gangway leading up, another leading down, and a door leading north."
|
||||||
.GSTR STR?307,"Lying on one of the desks is a scribbled note."
|
.GSTR STR?317,"Lying on one of the desks is a scribbled note."
|
||||||
.GSTR STR?308,"""Schmidt -- Why didn't I see it until now! Just think of this station as a cell and the pyramid as a mechanized bacterioph"" The note ends at that point; there seem to be some reddish-brown stains on it."
|
.GSTR STR?318,"""Schmidt -- Why didn't I see it until now! Just think of this station as a cell and the pyramid as a mechanized bacterioph"" The note ends at that point; there seem to be some reddish-brown stains on it."
|
||||||
.GSTR STR?309,"This cramped living area has cubicles for the dozen or so scientists and engineers working in this Sub-Module. The only exit is a gangway leading down."
|
.GSTR STR?319,"This cramped living area has cubicles for the dozen or so scientists and engineers working in this Sub-Module. The only exit is a gangway leading down."
|
||||||
.GSTR STR?310,"I don't have a very specific function in the station's robotic organizational scheme, but I do keep the library organized."
|
.GSTR STR?320,"I don't have a very specific function in the station's robotic organizational scheme, but I do keep the library organized."
|
||||||
.GSTR STR?311,"Floyd's best friend! Oh, except you, of course!"
|
.GSTR STR?321,"Floyd's best friend! Oh, except you, of course!"
|
||||||
.GSTR STR?312,"Some early poems by Ignatius Tomato. He's my current favorite."
|
.GSTR STR?322,"Some early poems by Ignatius Tomato. He's my current favorite."
|
||||||
.GSTR STR?313,"burst into tears and dashes out of the room. A beam leaps from the gun..."
|
.GSTR STR?323,"burst into tears and dashes out of the room. A beam leaps from the gun..."
|
||||||
.GSTR STR?314," the station's reactor turns into a good old-fashioned H-bomb."
|
.GSTR STR?324," the station's reactor turns into a good old-fashioned H-bomb."
|
||||||
.GSTR STR?315,"You are at the top of an air shaft. Handholds lead downward, and a partially open air grate leads out of the shaft."
|
.GSTR STR?325,"You are at the top of an air shaft. Handholds lead downward, and a partially open air grate leads out of the shaft."
|
||||||
.GSTR STR?316,"You are in a large, vertical air duct. Handholds lead up and down."
|
.GSTR STR?326,"You are in a large, vertical air duct. Handholds lead up and down."
|
||||||
.GSTR STR?317,"You have reached the bottom of the air vent. Ducts too small for you to enter lead off laterally. Handholds lead upward, and the entire floor of the duct is another large grating."
|
.GSTR STR?327,"You have reached the bottom of the air vent. Ducts too small for you to enter lead off laterally. Handholds lead upward, and the entire floor of the duct is another large grating."
|
||||||
.GSTR STR?318,"The sides ducts are too small to enter!"
|
.GSTR STR?328,"The sides ducts are too small to enter!"
|
||||||
.GSTR STR?319,"This tiny control station allows access to the massive memory banks of the station's computer. Ever since the formation of the Third Galactic Union ended the great interstellar dark age, every Stellar Patrol spaceship, every Patrol space station, has been equipped with a computer bulging with the entire accumulated knowledge of mankind. Never again will humanity be permitted to slip back into the ignorance and savagery of the dark age.
|
.GSTR STR?329,"This tiny control station allows access to the massive memory banks of the station's computer. Ever since the formation of the Third Galactic Union ended the great interstellar dark age, every Stellar Patrol spaceship, every Patrol space station, has been equipped with a computer bulging with the entire accumulated knowledge of mankind. Never again will humanity be permitted to slip back into the ignorance and savagery of the dark age.
|
||||||
A ladder leads up to Level Eight, and there's a call button next to the elevator shaft to the north."
|
A ladder leads up to Level Eight, and there's a call button next to the elevator shaft to the north."
|
||||||
.GSTR STR?320," reaches you, and performs various repetitions all over your body, proving that exercise isn't always good for you."
|
.GSTR STR?330," reaches you, and performs various repetitions all over your body, proving that exercise isn't always good for you."
|
||||||
.GSTR STR?321,"slips into gear and zooms forward, goring you on its fork."
|
.GSTR STR?331,"slips into gear and zooms forward, goring you on its fork."
|
||||||
.GSTR STR?322,"There is gravity here at the bottom of the elevator shaft. The elevator's not in sight; the only exit is back to the computer room to the south."
|
.GSTR STR?332,"There is gravity here at the bottom of the elevator shaft. The elevator's not in sight; the only exit is back to the computer room to the south."
|
||||||
.GSTR STR?323,"There's no way to climb the shaft."
|
.GSTR STR?333,"There's no way to climb the shaft."
|
||||||
.GSTR STR?324,"Floyd fires his stun ray nonchalantly in your direction, laughing, as though taunting you. You feel part of your leg go numb"
|
.GSTR STR?334,"Floyd fires his stun ray nonchalantly in your direction, laughing, as though taunting you. You feel part of your leg go numb"
|
||||||
.GSTR STR?325,"Smoke is trickling from the tails of the tiny rockets, as though the duplicate pyramids were preparing for activation and launch"
|
.GSTR STR?335,"Smoke is trickling from the tails of the tiny rockets, as though the duplicate pyramids were preparing for activation and launch"
|
||||||
.GSTR STR?326,"One of the blinking lights on the reactor goes from yellow to red"
|
.GSTR STR?336,"One of the blinking lights on the reactor goes from yellow to red"
|
||||||
.GSTR STR?327,"the pyramid, Floyd"
|
.GSTR STR?337,"the pyramid, Floyd"
|
||||||
.GSTR STR?328,"This is an east-west tube, widening as it gets farther from the Command Module."
|
.GSTR STR?338,"This is an east-west tube, widening as it gets farther from the Command Module."
|
||||||
.GSTR STR?329,"This is a wide, cheaply constructed space tube, narrowing to the west. There are openings off this ""street"" in virtually every direction, including one leading downward."
|
.GSTR STR?339,"This is a wide, cheaply constructed space tube, narrowing to the west. There are openings off this ""street"" in virtually every direction, including one leading downward."
|
||||||
.GSTR STR?330,"Well, there are openings in ALMOST every direction."
|
.GSTR STR?340,"Well, there are openings in ALMOST every direction."
|
||||||
.GSTR STR?331,"This is a tiny living bubble beneath Broadway. The inhabitant, who is nowhere in sight, seems to be in the profession of reading the future for superstitious spacemen."
|
.GSTR STR?341,"This is a tiny living bubble beneath Broadway. The inhabitant, who is nowhere in sight, seems to be in the profession of reading the future for superstitious spacers."
|
||||||
.GSTR STR?332,"The Stellar Patrol has opened a recruitment office off Broadway, thus giving tacit approval to this technically nonregulation space village. Posters showing a rose-colored view of Patrol life are plastered all over the walls. A door leads south."
|
.GSTR STR?342,"The Stellar Patrol has opened a recruitment office off Broadway, thus giving tacit approval to this technically nonregulation space village. Posters showing a rose-colored view of Patrol life are plastered all over the walls. A door leads south."
|
||||||
.GSTR STR?333,"This moderately large store sells all kinds of games and other recreational materials. There is also an in-house rec area, featuring a group of simulation booths. The ""street"" lies to the southwest."
|
.GSTR STR?343,"This moderately large store sells all kinds of games and other recreational materials. There is also an in-house rec area, featuring a group of simulation booths. The ""street"" lies to the southwest."
|
||||||
.GSTR STR?334,"groof hunting on Septurion Seven"
|
.GSTR STR?344,"groof hunting on Septurion Seven"
|
||||||
.GSTR STR?335,"a little-known incident during the signing of the Treaty of Gishen IV"
|
.GSTR STR?345,"a little-known incident during the signing of the Treaty of Gishen IV"
|
||||||
.GSTR STR?336,"a torrid romance on the tropical planet of San Cupidor"
|
.GSTR STR?346,"a torrid romance on the tropical planet of San Cupidor"
|
||||||
.GSTR STR?337,"searching for treasure in a magical underground kingdom"
|
.GSTR STR?347,"searching for treasure in a magical underground empire"
|
||||||
.GSTR STR?338,"bullfighting, skydiving, and dental hygiene"
|
.GSTR STR?348,"bullfighting, skydiving, and dental hygiene"
|
||||||
.GSTR STR?339,"The huge galactic mining conglomerates often open field offices in these space villages, and this is one of those. Miners will haul some promising hunk of space rock into the vicinity, and then come here to sell the rights to it. You can leave to the west."
|
.GSTR STR?349,"The huge galactic mining conglomerates often open field offices in these space villages, and this is one of those. Miners will haul some promising hunk of space rock into the vicinity, and then come here to sell the rights to it. You can leave to the west."
|
||||||
.GSTR STR?340,"Some miner has left a headlamp here."
|
.GSTR STR?350,"Some miner has left a headlamp here."
|
||||||
.GSTR STR?341,"A piece of reflective foil is hanging on the wall where the mirror once was."
|
.GSTR STR?351,"A piece of reflective foil is hanging on the wall where the mirror once was."
|
||||||
.GSTR STR?342,"Trans-molecular platinum foil! I am told that it is the most perfectly reflective material known to man, and not just on the visual wavelengths!"
|
.GSTR STR?352,"Trans-molecular platinum foil! I am told that it is the most perfectly reflective material known, and not just on the visual wavelengths!"
|
||||||
.GSTR STR?343,"Floyd loves anything reflective! Give Floyd a mirror and he'll be happy for days!"
|
.GSTR STR?353,"Floyd loves anything reflective! Give Floyd a mirror and he'll be happy for days!"
|
||||||
.GSTR STR?344,"This is a small convenience store, the main source of food and living supplies for this village, as well as a supplement supply for personnel from the space station proper. The shelves are pretty bare, and there is no one in sight. Exits lead north, east, southeast and south."
|
.GSTR STR?354,"This is a small convenience store, the main source of food and living supplies for this village, as well as a supplement supply for personnel from the space station proper. The shelves are pretty bare, and there is no one in sight. Exits lead north, east, southeast and south."
|
||||||
.GSTR STR?345,"A small, translucent plastic bag is sitting on one of the shelves."
|
.GSTR STR?355,"A small, translucent plastic bag is sitting on one of the shelves."
|
||||||
.GSTR STR?346,", delectable, moist boysenberry-flavored taffy"
|
.GSTR STR?356,", delectable, moist boysenberry-flavored taffy"
|
||||||
.GSTR STR?347,"This shop, with exits to the northeast and southeast, sells a variety of animals. Many a lonely spacer has discovered the joys a pet can bring, and this shop features animals of both terrestrial and alien origin. A large sign advertises this month's special."
|
.GSTR STR?357,"This shop, with exits to the northeast and southeast, sells a variety of animals. Many a lonely spacer has discovered the joys a pet can bring, and this shop features animals of both terrestrial and alien origin. A large sign advertises this month's special."
|
||||||
.GSTR STR?348,"You can see the faint outline of a panel in the ceiling."
|
.GSTR STR?358,"You can see the faint outline of a panel in the ceiling."
|
||||||
.GSTR STR?349,"This sprawling old cargo ship, its engines long ago cannibalized for spare parts, has been converted into a store for supplies and curios. There's an eye-catching sign on the wall. Passageways lead in many directions, and there's an opening in the floor."
|
.GSTR STR?359,"This sprawling old cargo ship, its engines long ago cannibalized for spare parts, has been converted into a store for supplies and curios. There's an eye-catching sign on the wall. Passageways lead in many directions, and there's an opening in the floor."
|
||||||
.GSTR STR?350,"""FREZONE (tm) Liquid Gorzium Explosive
|
.GSTR STR?360,"""FREZONE (tm) Liquid Gorzium Explosive
|
||||||
Instructions for use:
|
Instructions for use:
|
||||||
1. Insert explosive in hole of appropriate diameter.
|
1. Insert explosive in hole of appropriate diameter.
|
||||||
2. Attach detonator to explosive and timer.
|
2. Attach detonator to explosive and timer.
|
||||||
3. Set timer.
|
3. Set timer.
|
||||||
4. Vamoose.
|
4. Vamoose.
|
||||||
NOTE: Do not expose explosive to temperatures above 150 degrees Kelvin for period of more than 100 millichrons."""
|
NOTE: Do not expose explosive to temperatures above 150 degrees Kelvin for periods of more than 100 millichrons."""
|
||||||
.GSTR STR?351,"This living bubble has been set up as an artist's loft. Most of the space is taken up by a large scrap sculpture floating in the center of the bubble. It is, of course, pretty impossible to tell how close the sculpture is to completion. The way out is to the east."
|
.GSTR STR?361,"This living bubble has been set up as an artist's loft. Most of the space is taken up by a large scrap sculpture floating in the center of the bubble. It is, of course, pretty impossible to tell how close the sculpture is to completion. The way out is to the east."
|
||||||
.GSTR STR?352,"The most recognizable item in the sculpture is a J-series hyperdiode."
|
.GSTR STR?362,"The most recognizable item in the sculpture is a J-series hyperdiode."
|
||||||
.GSTR STR?353,"From your experience with tawdry, space village bars, they are crowded every millichron of the day and night. So it's quite unusual that this saloon is totally deserted. Despite the current solitude, you can almost hear the tinny music, the loud voices, the fistfights. Openings lead west and northwest, and to the east is a partially disguised exit."
|
.GSTR STR?363,"From your experience with tawdry, space village bars, they are crowded every millichron of the day and night. So it's quite unusual that this saloon is totally deserted. Despite the current solitude, you can almost hear the tinny music, the loud voices, the fistfights. Openings lead west and northwest, and to the east is a partially disguised exit."
|
||||||
.GSTR STR?354,"This is a tiny room, smelling strongly of various synthesized opium variants. There's a sign on the wall and a door to the south."
|
.GSTR STR?364,"This is a tiny room, smelling strongly of various synthesized opium variants. There's a sign on the wall and a door to the south."
|
||||||
.GSTR STR?355,"Your lungs rupture, not to mention all sorts of even nastier stuff that you're lucky if you can't imagine."
|
.GSTR STR?365,"Your lungs rupture, not to mention all sorts of even nastier stuff that you're lucky if you can't imagine."
|
||||||
.GSTR STR?356,"This filthy north-south tube is quite a change from the gleaming, well-scrubbed metal of the space station."
|
.GSTR STR?366,"This filthy north-south tube is quite a change from the gleaming, well-scrubbed metal of the space station."
|
||||||
.GSTR STR?357,"This large spacetube is the main thoroughfare of a space village which has sprung up here on the outskirts of the space station, which lies to the north. Rather than the bustling thoroughfare you might expect, however, there isn't a soul in sight. Openings lead up, northeast, south and west. To the southeast, the ""street"" narrows and ramps downward."
|
.GSTR STR?367,"This large spacetube is the main thoroughfare of a space village which has sprung up here on the outskirts of the space station, which lies to the north. Rather than the bustling thoroughfare you might expect, however, there isn't a soul in sight. Openings lead up, northeast, south and west. To the southeast, the ""street"" narrows and ramps downward."
|
||||||
.GSTR STR?358," fire nectar - thick and warming"
|
.GSTR STR?368," fire nectar -- thick and warming"
|
||||||
.GSTR STR?359,"This permanently-docked one-man ship serves as the office for Hizzoner the Mayor, the unofficial leader of the village. Main Street is below."
|
.GSTR STR?369,"nectar"
|
||||||
.GSTR STR?360,"You spot a copy of a book entitled ""Deciphering Alien Speech."""
|
.GSTR STR?370,"This permanently-docked one-man ship serves as the office for Hizzoner the Mayor, the unofficial leader of the village. Main Street is below."
|
||||||
.GSTR STR?361,"""(bitter/salty/bitter) softness/weakness
|
.GSTR STR?371,"You spot a copy of a book entitled ""Deciphering Alien Speech."""
|
||||||
(sweet/very-sour) Hunji (noun form)
|
.GSTR STR?372,"""bttr/salty/bttr softness/weakness
|
||||||
(bland/salty/sour) Zeenak (adj form)
|
sweet/v.sour Hunji (noun form)
|
||||||
(bland/bitter) air/atmosphere
|
blnd/salty/sour Zeenak (adj form)
|
||||||
(very-salty) however
|
blnd/bttr air/atmosphere
|
||||||
(sweet/very-sweet) legal destruction (sabotage?)
|
sour/blnd/blnd/sour died/failed
|
||||||
(very-sweet/bland/sour) I have shined light upon
|
sweet/v.sweet legal destruction
|
||||||
(sour/bland/sour/sweet) turn back
|
(sabotage?)
|
||||||
(bland) (definite article?)
|
v.salty however
|
||||||
(slightly-sour) solitary
|
sour/blnd/sour/sweet turn back
|
||||||
(very-sweet/very-salty) element/substance
|
blnd (def. article?)
|
||||||
(sweet/slightly-bitter) brethren (adj form)
|
v.sweet/blnd/sour I have shined
|
||||||
(sour/bland/bland/sour) died/failed
|
light upon
|
||||||
(bland/sour/very-sour) is souring/turning bad
|
slightly-sour solitary
|
||||||
(spicy-hot/bland/bland) (a number) (78? 7/8?)
|
v.sweet/v.salty element/substance
|
||||||
(bitter/sour/very-sour) weapon (poss form)
|
sweet/slightly-bttr brethren (adj)
|
||||||
(very-sweet) (emphasis mark?)
|
blnd/sour/v.sour is souring
|
||||||
(very-salty/salty/sour) bad/evil/deadly radiation (plur form)"""
|
v.salty/salty/sour bad/evil/deadly
|
||||||
.GSTR STR?362,"This is a branch office of the First Galactic Bank of Nebulon. There are doors to the north and northwest."
|
radiations
|
||||||
.GSTR STR?363,"This small space bubble, with openings to the east and southeast, is decorated with posters of exotic locales, but it's hard to imagine that anyone in this rundown spacetown would be able to afford an interstellar pleasure jaunt."
|
spicy-hot/blnd/blnd 78 (?) 7/8 (?)
|
||||||
.GSTR STR?364,"There's no doubt that ""alley"" is the best word to describe this winding, garbage-strewn connector. Dark passages branch off in almost every direction, and the alley slopes upward to the northwest."
|
bttr/sour/v.sour weapon (possesv.)
|
||||||
.GSTR STR?365,"This is the home of some kook, a proselytizer of the fringe religion which believes that humankind has angered God by venturing out into space, and the universe will end sometime next week. Next week never seems to come, but there are enough kooks in the galaxy to keep the belief going. You can exit to the south."
|
v.sweet (emphasis mark?)"""
|
||||||
.GSTR STR?366,"
|
.GSTR STR?373,"This is a branch office of the First Galactic Bank of Nebulon. There are doors to the north and northwest."
|
||||||
|
.GSTR STR?374,"This small space bubble, with openings to the east and southeast, is decorated with posters of exotic locales, but it's hard to imagine that anyone in this rundown spacetown would be able to afford an interstellar pleasure jaunt."
|
||||||
|
.GSTR STR?375,"There's no doubt that ""alley"" is the best word to describe this winding, garbage-strewn connector. Dark passages branch off in almost every direction, and the alley slopes upward to the northwest."
|
||||||
|
.GSTR STR?376,"This is the home of some kook, a proselytizer of the fringe religion which believes that humankind has angered God by venturing out into space, and the universe will end sometime next week. Next week never seems to come, but there are enough kooks in the galaxy to keep the belief going. You can exit to the south."
|
||||||
|
.GSTR STR?377,"
|
||||||
|
|
||||||
Lost in Space
|
Lost in Space
|
||||||
You spend several chrons tumbling into the starry depths, the station dwindling to a dot of light behind you. Eventually, your air runs out."
|
You spend several chrons tumbling into the starry depths, the station dwindling to a dot of light behind you. Eventually, your air runs out."
|
||||||
.GSTR STR?367,"As you swivel the headlamp around, you discover a tiny cylinder with an even tinier label."
|
.GSTR STR?378,"As you swivel the headlamp around, you discover a tiny cylinder with an even tinier label."
|
||||||
.GSTR STR?368,"""FREZONE (tm) Liquid Gorzium Explosive. For use only by licensed demolitionist. Instruction sheet available from vendor; read thoroughly before use!"""
|
.GSTR STR?379,"""FREZONE (tm) Liquid Gorzium Explosive. For use only by licensed demolitionist. Instruction sheet available from vendor; read thoroughly before use!"""
|
||||||
.GSTR STR?369,"The three balls hanging by the (northeastern) entrance to this space hut indicate that a villager down on his or her luck could come here to hock some valuable possession."
|
.GSTR STR?380,"The three balls hanging by the (northeastern) entrance to this space hut indicate that a villager down on his or her luck could come here to hock some valuable possession."
|
||||||
.GSTR STR?370,"Some destitute spacer was so hard up that he or she actually pawned a spray can. It's sitting here in the shop, and has some lettering on it."
|
.GSTR STR?381,"Some destitute spacer was so hard up that he or she actually pawned a spray can. It's sitting here in the shop, and has some lettering on it."
|
||||||
.GSTR STR?371,"This is a dilapidated vessel that some seedy loan shark has moored on the south side of the alley."
|
.GSTR STR?382,"This is a dilapidated vessel that some seedy loan shark has moored on the south side of the alley."
|
||||||
.GSTR STR?372,"A fairly sturdy strong box is fastened to the floor. Or maybe the ceiling. One can never be sure without gravity."
|
.GSTR STR?383,"A fairly sturdy strong box is fastened to the floor. Or maybe the ceiling. One can never be sure without gravity."
|
||||||
.GSTR STR?373,"""ONE GALAKMID
|
.GSTR STR?384,"""ONE GALAKMID
|
||||||
Third Galactic Union"""
|
Third Galactic Union"""
|
||||||
.GSTR STR?374,"This physician's bubble is owned by the village quack, known to his friends as ""Doc"" Schuster, but known to the vast majority of the villagers as Schuster the Shyster. There's a small hole in the wall, probably the opening for a disposal chute. The Doc is out, and in this case, out is northwest."
|
.GSTR STR?385,"This physician's bubble is owned by the village quack, known to his friends as ""Doc"" Schuster, but known to the vast majority of the villagers as Schuster the Shyster. There's a small hole in the wall, probably the opening for a disposal chute. The Doc is out, and in this case, out is northwest."
|
||||||
.GSTR STR?375,"There is a large pile of intoxicated ostrich here."
|
.GSTR STR?386,"There is a large pile of intoxicated ostrich here."
|
||||||
.GSTR STR?376,"""Doc -- that ostrich nip you've been waiting for finally came in. Drop by and pick it up. If I'm not in, you'll find it in my ceiling panel."""
|
.GSTR STR?387,"""Doc -- that ostrich nip you've been waiting for finally came in. Drop by and pick it up. If I'm not in, you'll find it in my ceiling panel."""
|
||||||
.GSTR STR?377,"In the corner of the office is a rather plain-looking machine with a keypad. It looks a bit jerry-built."
|
.GSTR STR?388,"In the corner of the office is a rather plain-looking machine with a keypad. It looks a bit jerry-built."
|
||||||
.GSTR STR?378,"opening"
|
.GSTR STR?389,"opening"
|
||||||
.GSTR STR?379,"A scrambled card cannot be altered"
|
.GSTR STR?390,"A scrambled card cannot be altered"
|
||||||
.GSTR STR?380,"Ensign, Sixth Class or lower"
|
.GSTR STR?391,"Ensign, lower classes"
|
||||||
.GSTR STR?381,"Ensign, Fifth through Second Class"
|
.GSTR STR?392,"Ensign First Class"
|
||||||
.GSTR STR?382,"Ensign First Class"
|
.GSTR STR?393,"Upshipman"
|
||||||
.GSTR STR?383,"Midshipman"
|
.GSTR STR?394,"Lieutenant Last Class"
|
||||||
.GSTR STR?384,"Lieutenant Second Class"
|
.GSTR STR?395,"Lieutenant Second Class"
|
||||||
.GSTR STR?385,"Lieutenant Commander"
|
.GSTR STR?396,"Commander or Captain"
|
||||||
.GSTR STR?386,"Commander or Captain"
|
.GSTR STR?397,"Admiral"
|
||||||
.GSTR STR?387,"Admiral"
|
.GSTR STR?398,"HyperAdmiral"
|
||||||
.GSTR STR?388,"Fleet Admiral"
|
.GSTR STR?399,"Grand Fleet HyperAdmiral"
|
||||||
.GSTR STR?389,"This outdated drydock is now a messy junk yard. A huge pile of floating junk fills the center of the bubble. Passages lead upwards and west."
|
.GSTR STR?400,"This outdated drydock is now a messy junk yard. A huge pile of floating junk fills the center of the bubble. Passages lead upwards and west."
|
||||||
.GSTR STR?390,"Of all the items floating in the scrap heap, the pair of magnetic spaceboots looks to be in the best shape."
|
.GSTR STR?401,"Of all the items floating in the scrap heap, the pair of magnetic spaceboots looks to be in the best shape."
|
||||||
|
|
||||||
.ENDI
|
.ENDI
|
||||||
|
|
405
ship.zil
405
ship.zil
|
@ -8,8 +8,8 @@
|
||||||
(LDESC
|
(LDESC
|
||||||
"You are in the heart of the administrative level of the ship, the largest
|
"You are in the heart of the administrative level of the ship, the largest
|
||||||
level of the S.P.S. Duffy or any other Stellar Patrol ship for that matter.
|
level of the S.P.S. Duffy or any other Stellar Patrol ship for that matter.
|
||||||
The corridor continues starboard and a room lies aft of here. Through the
|
The corridor continues starboard and a room lies aft. Beyond the door to
|
||||||
door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(EAST TO CARGO-BAY-ENTRANCE)
|
(EAST TO CARGO-BAY-ENTRANCE)
|
||||||
(SOUTH TO FORM-STORAGE-ROOM)
|
(SOUTH TO FORM-STORAGE-ROOM)
|
||||||
(WEST PER FAKE-DOOR-ENTER-F)
|
(WEST PER FAKE-DOOR-ENTER-F)
|
||||||
|
@ -18,7 +18,7 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(<> SLOT FORM-SLOT-F)>)>
|
(<> SLOT FORM-SLOT-F)>)>
|
||||||
|
|
||||||
<ROUTINE FAKE-DOOR-ENTER-F ()
|
<ROUTINE FAKE-DOOR-ENTER-F ()
|
||||||
<THIS-IS-IT ,PSEUDO-OBJECT>
|
;<THIS-IS-IT ,PSEUDO-OBJECT> ;"doesn't work"
|
||||||
<TELL "The door is closed." CR>
|
<TELL "The door is closed." CR>
|
||||||
<RFALSE>>
|
<RFALSE>>
|
||||||
|
|
||||||
|
@ -26,6 +26,8 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
<COND (<VERB? OPEN>
|
<COND (<VERB? OPEN>
|
||||||
<RECORDING
|
<RECORDING
|
||||||
"You must insert a validated Assignment Completion Form in the slot">)
|
"You must insert a validated Assignment Completion Form in the slot">)
|
||||||
|
(<VERB? EXAMINE>
|
||||||
|
<TELL "There's a slot next to the closed door." CR>)
|
||||||
(<VERB? ENTER>
|
(<VERB? ENTER>
|
||||||
<DO-WALK ,P?WEST>)>>
|
<DO-WALK ,P?WEST>)>>
|
||||||
|
|
||||||
|
@ -37,7 +39,7 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(SYNONYM FORM FORMS QX-17-T)
|
(SYNONYM FORM FORMS QX-17-T)
|
||||||
(ADJECTIVE ASSIGNMENT COMPLETION FORM)
|
(ADJECTIVE ASSIGNMENT COMPLETION FORM)
|
||||||
(FLAGS TAKEBIT READBIT VOWELBIT)
|
(FLAGS TAKEBIT READBIT VOWELBIT)
|
||||||
(SIZE 2)
|
(SIZE 1)
|
||||||
(ACTION FORM-F)>
|
(ACTION FORM-F)>
|
||||||
|
|
||||||
<OBJECT ROBOT-USE-AUTHORIZATION-FORM
|
<OBJECT ROBOT-USE-AUTHORIZATION-FORM
|
||||||
|
@ -46,6 +48,7 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(SYNONYM FORM FORMS JZ-59-G)
|
(SYNONYM FORM FORMS JZ-59-G)
|
||||||
(ADJECTIVE ROBOT USE AUTHORIZATION FORM)
|
(ADJECTIVE ROBOT USE AUTHORIZATION FORM)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
|
(SIZE 1)
|
||||||
(ACTION FORM-F)>
|
(ACTION FORM-F)>
|
||||||
|
|
||||||
<OBJECT CLASS-THREE-SPACECRAFT-ACTIVATION-FORM
|
<OBJECT CLASS-THREE-SPACECRAFT-ACTIVATION-FORM
|
||||||
|
@ -54,6 +57,7 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(SYNONYM FORM FORMS HB-56-V)
|
(SYNONYM FORM FORMS HB-56-V)
|
||||||
(ADJECTIVE CLASS THREE SPACECRAFT ACTIVA FORM)
|
(ADJECTIVE CLASS THREE SPACECRAFT ACTIVA FORM)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
|
(SIZE 1)
|
||||||
(ACTION FORM-F)>
|
(ACTION FORM-F)>
|
||||||
|
|
||||||
<ROUTINE FORM-F ()
|
<ROUTINE FORM-F ()
|
||||||
|
@ -79,7 +83,7 @@ door to port lies the bulk of the Duffy. Next to the door is a slot.")
|
||||||
(DESC "chronometer")
|
(DESC "chronometer")
|
||||||
(SYNONYM CHRONOMETER WRISTWATCH WATCH)
|
(SYNONYM CHRONOMETER WRISTWATCH WATCH)
|
||||||
(ADJECTIVE WRIST MY)
|
(ADJECTIVE WRIST MY)
|
||||||
(SIZE 10)
|
(SIZE 8)
|
||||||
(FLAGS TAKEBIT WEARBIT WORNBIT)
|
(FLAGS TAKEBIT WEARBIT WORNBIT)
|
||||||
(ACTION CHRONOMETER-F)>
|
(ACTION CHRONOMETER-F)>
|
||||||
|
|
||||||
|
@ -103,12 +107,14 @@ stopped. You can't recall doing anything that might have broken it." CR>)
|
||||||
(SYNONYM CARD CARDS)
|
(SYNONYM CARD CARDS)
|
||||||
(ADJECTIVE MY PATROL ID IDENTIFICATION)
|
(ADJECTIVE MY PATROL ID IDENTIFICATION)
|
||||||
(FLAGS VOWELBIT TAKEBIT TRYTAKEBIT READBIT)
|
(FLAGS VOWELBIT TAKEBIT TRYTAKEBIT READBIT)
|
||||||
(SIZE 3)
|
(SIZE 2)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"STELLAR PATROL|
|
"\"STELLAR PATROL|
|
||||||
Paperwork Task Force|
|
Paperwork Task Force|
|
||||||
ID Number: 1451-352-716\"")>
|
ID Number: 1451-352-716\"")>
|
||||||
|
|
||||||
|
<GLOBAL SCRAMBLED-FOOTNOTE <>>
|
||||||
|
|
||||||
<GLOBAL ID-SCRAMBLED <>>
|
<GLOBAL ID-SCRAMBLED <>>
|
||||||
|
|
||||||
<OBJECT PATROL-UNIFORM
|
<OBJECT PATROL-UNIFORM
|
||||||
|
@ -118,6 +124,7 @@ ID Number: 1451-352-716\"")>
|
||||||
(ADJECTIVE PATROL MY)
|
(ADJECTIVE PATROL MY)
|
||||||
(FLAGS TAKEBIT WORNBIT WEARBIT CONTBIT SEARCHBIT OPENBIT)
|
(FLAGS TAKEBIT WORNBIT WEARBIT CONTBIT SEARCHBIT OPENBIT)
|
||||||
(CAPACITY 10)
|
(CAPACITY 10)
|
||||||
|
(SIZE 8)
|
||||||
(ACTION PATROL-UNIFORM-F)>
|
(ACTION PATROL-UNIFORM-F)>
|
||||||
|
|
||||||
<GLOBAL SUIT-PRESSED <>>
|
<GLOBAL SUIT-PRESSED <>>
|
||||||
|
@ -145,9 +152,8 @@ else, it is super-comfy">
|
||||||
(<PROB ,BLATHER-PROB>
|
(<PROB ,BLATHER-PROB>
|
||||||
<DEQUEUE I-BLATHER>
|
<DEQUEUE I-BLATHER>
|
||||||
<TELL
|
<TELL
|
||||||
" Ensign Twelfth Class Blather walks by, carrying various toilet scrubbing
|
" Ensign Twelfth Class Blather walks by, lugging his toilet scrubbing
|
||||||
supplies. He spots you, glances away, whimpers, and slouches out of sight
|
supplies. He spots you, whimpers, and slouches away (Footnote 2)." CR>)
|
||||||
(Footnote 2)." CR>)
|
|
||||||
(T
|
(T
|
||||||
<SETG BLATHER-PROB <+ ,BLATHER-PROB 10>>)>>
|
<SETG BLATHER-PROB <+ ,BLATHER-PROB 10>>)>>
|
||||||
|
|
||||||
|
@ -216,7 +222,7 @@ Disbursal Form,\" \"Loss of Form Pallet Label Report Form,\" and
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
(DESC "Cargo Bay Entrance")
|
(DESC "Cargo Bay Entrance")
|
||||||
(LDESC
|
(LDESC
|
||||||
"The deck five corridor ends here at the entrance to the cargo bay, to
|
"The deck twelve corridor ends here at the entrance to the cargo bay, to
|
||||||
starboard. A smaller entrance leads fore.")
|
starboard. A smaller entrance leads fore.")
|
||||||
(EAST TO CARGO-BAY)
|
(EAST TO CARGO-BAY)
|
||||||
(WEST TO DECK-TWELVE)
|
(WEST TO DECK-TWELVE)
|
||||||
|
@ -241,7 +247,7 @@ starboard. A smaller entrance leads fore.")
|
||||||
<QUEUE I-FLOYD <+ ,C-ELAPSED 2>>)
|
<QUEUE I-FLOYD <+ ,C-ELAPSED 2>>)
|
||||||
(<EQUAL? .RARG ,M-LOOK>
|
(<EQUAL? .RARG ,M-LOOK>
|
||||||
<TELL
|
<TELL
|
||||||
"This is where a " ,LFC " would come to check out a robot for use on an
|
"This is where a " ,LFC " would come to obtain a robot for use on an
|
||||||
important assignment. Also for a trivial assignment like yours. "
|
important assignment. Also for a trivial assignment like yours. "
|
||||||
,ROBOT-POOL-EQUIPMENT-DESC " You can exit aft.">)
|
,ROBOT-POOL-EQUIPMENT-DESC " You can exit aft.">)
|
||||||
(<AND <EQUAL? .RARG ,M-EXIT>
|
(<AND <EQUAL? .RARG ,M-EXIT>
|
||||||
|
@ -253,7 +259,7 @@ important assignment. Also for a trivial assignment like yours. "
|
||||||
<PRSO? ,PSEUDO-OBJECT>>
|
<PRSO? ,PSEUDO-OBJECT>>
|
||||||
<AND <EQUAL? <GET ,P-ADJW 1> <>>
|
<AND <EQUAL? <GET ,P-ADJW 1> <>>
|
||||||
<PRSI? ,PSEUDO-OBJECT>>>
|
<PRSI? ,PSEUDO-OBJECT>>>
|
||||||
<TELL "Next time, specify which bin you meant." CR>)
|
<TELL ,REFER-TO-BIN>)
|
||||||
(<VERB? LOOK-INSIDE>
|
(<VERB? LOOK-INSIDE>
|
||||||
<COND (<AND <ADJ-USED ,A?FIRST ,PSEUDO-OBJECT>
|
<COND (<AND <ADJ-USED ,A?FIRST ,PSEUDO-OBJECT>
|
||||||
<NOT <EQUAL? ,ROBOT-PICKED ,REX>>>
|
<NOT <EQUAL? ,ROBOT-PICKED ,REX>>>
|
||||||
|
@ -296,23 +302,24 @@ important assignment. Also for a trivial assignment like yours. "
|
||||||
<PERFORM ,V?COMFORT ,FLOYD>
|
<PERFORM ,V?COMFORT ,FLOYD>
|
||||||
<STOP>)
|
<STOP>)
|
||||||
(,FLOYD-ANGUISHED
|
(,FLOYD-ANGUISHED
|
||||||
<SETG WINNER ,PROTAGONIST>
|
<TELL ,FLOYD-SNIFFS>
|
||||||
<PERFORM ,V?TOUCH ,FLOYD>
|
|
||||||
<STOP>)
|
<STOP>)
|
||||||
(<AND <VERB? TELL-ABOUT>
|
(<AND <VERB? TELL-ABOUT>
|
||||||
<PRSO? ,ME>>
|
<PRSO? ,ME>>
|
||||||
|
<SET TXT <GETP ,PRSI ,P?FLOYD-ASK-ABOUT>>
|
||||||
<COND (<G? ,ROBOT-EVILNESS 12>
|
<COND (<G? ,ROBOT-EVILNESS 12>
|
||||||
<TELL "\"Oh, quit jabbering already.\"" CR>)
|
<TELL "\"Oh, quit jabbering already.\"" CR>)
|
||||||
(<SET TXT <GETP ,PRSI ,P?FLOYD-ASK-ABOUT>>
|
(<OR <NOT .TXT>
|
||||||
<TELL "\"" .TXT "\"" CR>)
|
<AND <PRSI? ,OLIVER>
|
||||||
(T
|
<NOT <FSET? ,OLIVER ,TOUCHBIT>>>>
|
||||||
<TELL "Floyd shrugs. \"Beats me.">
|
<TELL "Floyd shrugs. \"Beats me.">
|
||||||
<COND (<IN? ,PLATO ,HERE>
|
<COND (<IN? ,PLATO ,HERE>
|
||||||
<TELL
|
<TELL
|
||||||
" Ask Plato. He knows everything!">)>
|
" Ask Plato. He knows everything!">)>
|
||||||
<TELL "\"" CR>)>)
|
<TELL "\"" CR>)
|
||||||
(<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
(T
|
||||||
<IN? ,PLATO ,HERE>>
|
<TELL "\"" .TXT "\"" CR>)>)
|
||||||
|
(,STUNNED
|
||||||
<COND (<OR <VERB? HELP>
|
<COND (<OR <VERB? HELP>
|
||||||
<AND <VERB? SAVE-SOMETHING>
|
<AND <VERB? SAVE-SOMETHING>
|
||||||
<PRSO? ,ME>>
|
<PRSO? ,ME>>
|
||||||
|
@ -323,7 +330,7 @@ important assignment. Also for a trivial assignment like yours. "
|
||||||
<SETG FLOYD-TOLD T>
|
<SETG FLOYD-TOLD T>
|
||||||
<TELL
|
<TELL
|
||||||
"Floyd waves his hands helplessly. \"Yes... I mean no... I mean oh no oh help
|
"Floyd waves his hands helplessly. \"Yes... I mean no... I mean oh no oh help
|
||||||
me please. Floyd does not know right thing to do...\"" CR>)
|
me please. Floyd in quandry...\"" CR>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"Floyd just looks at you with confusion and panic in his eyes." CR>
|
"Floyd just looks at you with confusion and panic in his eyes." CR>
|
||||||
|
@ -441,7 +448,7 @@ of direction.\" Then he looks up at you with wide, trusting eyes.
|
||||||
(<AND <NOT <FSET? ,FLOYD ,TOUCHBIT>>
|
(<AND <NOT <FSET? ,FLOYD ,TOUCHBIT>>
|
||||||
<NOUN-USED ,W?FLOYD ,FLOYD>>
|
<NOUN-USED ,W?FLOYD ,FLOYD>>
|
||||||
<TELL "You don't see anyone by that name here." CR>
|
<TELL "You don't see anyone by that name here." CR>
|
||||||
<STOP>)
|
<RFATAL>)
|
||||||
(<AND <NOT <EQUAL? ,ROBOT-PICKED ,FLOYD>>
|
(<AND <NOT <EQUAL? ,ROBOT-PICKED ,FLOYD>>
|
||||||
<TOUCHING? ,FLOYD>>
|
<TOUCHING? ,FLOYD>>
|
||||||
<CANT-REACH ,FLOYD>)
|
<CANT-REACH ,FLOYD>)
|
||||||
|
@ -452,8 +459,7 @@ of direction.\" Then he looks up at you with wide, trusting eyes.
|
||||||
(<AND ,FLOYD-ANGUISHED
|
(<AND ,FLOYD-ANGUISHED
|
||||||
<OR <TOUCHING? ,FLOYD>
|
<OR <TOUCHING? ,FLOYD>
|
||||||
<VERB? COMFORT>>>
|
<VERB? COMFORT>>>
|
||||||
<TELL
|
<TELL ,FLOYD-SNIFFS>)
|
||||||
"Floyd sniffs, \"Please leave Floyd alone for a while.\"" CR>)
|
|
||||||
(<AND <PROB <- <* ,ROBOT-EVILNESS 10> 70>>
|
(<AND <PROB <- <* ,ROBOT-EVILNESS 10> 70>>
|
||||||
<TOUCHING? ,FLOYD>
|
<TOUCHING? ,FLOYD>
|
||||||
<NOT <VERB? OFF KICK SHAKE>>
|
<NOT <VERB? OFF KICK SHAKE>>
|
||||||
|
@ -547,7 +553,7 @@ life, you kripping ingrate.\"" CR>)
|
||||||
<COND (,FLOYD-ANGUISHED
|
<COND (,FLOYD-ANGUISHED
|
||||||
<PERFORM ,V?TOUCH ,FLOYD>
|
<PERFORM ,V?TOUCH ,FLOYD>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<NOT <EQUAL? ,FLOYD ,ROBOT-PICKED>>
|
(<UNTOUCHABLE? ,FLOYD>
|
||||||
<CANT-REACH ,FLOYD>
|
<CANT-REACH ,FLOYD>
|
||||||
<RTRUE>)>
|
<RTRUE>)>
|
||||||
<SETG C-ELAPSED 30>
|
<SETG C-ELAPSED 30>
|
||||||
|
@ -629,17 +635,18 @@ games with it?\" he asks." CR>)
|
||||||
<TELL
|
<TELL
|
||||||
"Floyd smells faintly of ozone and light machine oil." CR>)>)
|
"Floyd smells faintly of ozone and light machine oil." CR>)>)
|
||||||
;"following clauses are for when Floyd is off"
|
;"following clauses are for when Floyd is off"
|
||||||
|
(<AND <VERB? ON OFF>
|
||||||
|
,FLOYD-SHOT>
|
||||||
|
<TELL
|
||||||
|
"The switch crumbles in your hand; it looks like Floyd's headed for that
|
||||||
|
big Robot Pool in the sky..." CR>)
|
||||||
(<VERB? ON>
|
(<VERB? ON>
|
||||||
<COND (,FLOYD-SHOT
|
<QUEUE I-FLOYD -1>
|
||||||
<TELL
|
<SETG FLOYD-SPOKE T>
|
||||||
"Floyd IS on...but he's headed for that big Robot Pool in the sky..." CR>)
|
<FSET ,FLOYD ,ACTORBIT>
|
||||||
(T
|
<FSET ,FLOYD ,ACTIVEBIT>
|
||||||
<QUEUE I-FLOYD -1>
|
<FSET ,FLOYD ,TOUCHBIT>
|
||||||
<SETG FLOYD-SPOKE T>
|
<TELL "Floyd jumps to his feet" ,HOPPING-MAD CR>)
|
||||||
<FSET ,FLOYD ,ACTORBIT>
|
|
||||||
<FSET ,FLOYD ,ACTIVEBIT>
|
|
||||||
<FSET ,FLOYD ,TOUCHBIT>
|
|
||||||
<TELL "Floyd jumps to his feet" ,HOPPING-MAD CR>)>)
|
|
||||||
(<VERB? OFF>
|
(<VERB? OFF>
|
||||||
<TELL "Floyd isn't on." CR>)
|
<TELL "Floyd isn't on." CR>)
|
||||||
(<AND <VERB? TELL>
|
(<AND <VERB? TELL>
|
||||||
|
@ -715,265 +722,7 @@ grip slips and he clatters to the deck. \"Oops! More dents!\"" CR>)>>
|
||||||
|
|
||||||
<GLOBAL FLOYD-ANGUISHED <>> ;"true if Plato just died"
|
<GLOBAL FLOYD-ANGUISHED <>> ;"true if Plato just died"
|
||||||
|
|
||||||
<ROUTINE I-FLOYD ("AUX" (OBJ <>))
|
;"routine I-FLOYD moved to INTERRUPTS file"
|
||||||
<QUEUE I-FLOYD -1>
|
|
||||||
<COND (<NOT <FSET? ,FLOYD ,TOUCHBIT>>
|
|
||||||
<FSET ,FLOYD ,TOUCHBIT>
|
|
||||||
<FSET ,FLOYD ,TRYTAKEBIT>
|
|
||||||
<TELL
|
|
||||||
" The third robot looks up from his marbles, jumps to his feet, and starts
|
|
||||||
waving wildly. It's Floyd, your robotic companion from Resida! (Footnote 3)
|
|
||||||
You've seen him only occasionally since he opted for assignment in the Stellar
|
|
||||||
Patrol those five long years ago." CR>)
|
|
||||||
(<NOT ,ROBOT-PICKED>
|
|
||||||
<TELL
|
|
||||||
" Floyd jumps up and down saying, \"Oh boy oh boy oh boy pick Floyd
|
|
||||||
pick Floyd pick Floyd!\"" CR>)
|
|
||||||
(,FLOYD-ANGUISHED
|
|
||||||
<COND (<NOT <VISIBLE? ,FLOYD>>
|
|
||||||
<SETG FLOYD-ANGUISHED <>>)>
|
|
||||||
<SETG FLOYD-FOLLOW <>>
|
|
||||||
<RFALSE>)
|
|
||||||
(<VISIBLE? ,FLOYD>
|
|
||||||
<COND (<NOT <FSET? ,FLOYD ,ACTIVEBIT>>
|
|
||||||
<RFALSE>)>
|
|
||||||
<COND (<AND <IN? ,OSTRICH ,HERE>
|
|
||||||
<NOT ,OSTRICH-COMMENT>>
|
|
||||||
<SETG OSTRICH-COMMENT T>
|
|
||||||
<TELL
|
|
||||||
" Floyd looks at the ostrich with breathless excitement.
|
|
||||||
\"Wow! An elephant!\"" CR>)
|
|
||||||
(<AND <IN? ,BALLOON ,HERE>
|
|
||||||
<NOT ,BALLOON-COMMENT>
|
|
||||||
<G? ,ROBOT-EVILNESS 13>>
|
|
||||||
<SETG BALLOON-COMMENT T>
|
|
||||||
<TELL
|
|
||||||
" You notice Floyd taunting the " D ,BALLOON ". The frightened balloon
|
|
||||||
takes refuge in the far corner of the room." CR>)
|
|
||||||
(<OR <AND <NOT <FSET? ,HERE ,FLOYDBIT>>
|
|
||||||
<NOT ,FLOYD-SPOKE>
|
|
||||||
<PROB 6>>
|
|
||||||
<AND <G? ,TIMER-SETTING 0>
|
|
||||||
<VISIBLE? ,EXPLOSIVE>>>
|
|
||||||
<REMOVE ,FLOYD>
|
|
||||||
<TELL " ">
|
|
||||||
<COND (<IN? ,PLATO ,HERE>
|
|
||||||
<SETG POSTPONE-ATTACK T>
|
|
||||||
<REMOVE ,PLATO>
|
|
||||||
<COND (<G? ,ROBOT-EVILNESS 8>
|
|
||||||
<TELL
|
|
||||||
"\"Let us take a stroll, Floyd,\" says Plato, tucking his book under one
|
|
||||||
arm. \"Tagging along after this simpleton human is becoming tiresome.\"
|
|
||||||
He breezes out. Floyd hesitates, then follows." CR>)
|
|
||||||
(<OR <PROB 50>
|
|
||||||
<EQUAL? ,HERE ,LIBRARY>>
|
|
||||||
<TELL
|
|
||||||
"\"Hey, Plato!\" says Floyd. \"Play Hider-and-Seeker with Floyd?\" Plato
|
|
||||||
glances up from his book, nods, and says, \"I do believe that I can spare
|
|
||||||
a few millichrons for a relaxing bit of sport.\" Floyd bounds away, with
|
|
||||||
Plato a bit behind. From out of sight, Floyd's voice faintly echoes
|
|
||||||
back to you: \"Ollie ollie oxen free!\"" CR>)
|
|
||||||
(T
|
|
||||||
<TELL
|
|
||||||
"Plato reaches the last page of his book. \"Heavens! It appears to be time
|
|
||||||
for another jaunt to the library. Would you care to accompany me, my
|
|
||||||
boisterous friend?\"|
|
|
||||||
\"Oh boy yessiree!\" says Floyd, bounding off after Plato. \"I hope they
|
|
||||||
have copies of my favorite comic, THE ADVENTURES OF LANE MASTODON!\"" CR>)>)
|
|
||||||
(T
|
|
||||||
<TELL
|
|
||||||
"Floyd says, \"Floyd going exploring. See you later.\"
|
|
||||||
He glides out of the room." CR>)>)
|
|
||||||
(<AND <PROB 45>
|
|
||||||
<NOT ,FLOYD-SPOKE>
|
|
||||||
<IN? ,FLOYD ,HERE>
|
|
||||||
<IN? ,PROTAGONIST ,HERE>
|
|
||||||
<NOT ,HANGING-IN-AIR>
|
|
||||||
,LIT>
|
|
||||||
<SET OBJ <FIRST? ,HERE>>
|
|
||||||
<COND (<AND .OBJ
|
|
||||||
<FSET? .OBJ ,TOUCHBIT>
|
|
||||||
<FSET? .OBJ ,TAKEBIT>
|
|
||||||
<NOT <FSET? .OBJ ,CONTBIT>>
|
|
||||||
<NOT <EQUAL? .OBJ ,OSTRICH-NIP ,SPACESUIT>>
|
|
||||||
<NOT <EQUAL? .OBJ ,DETONATOR ,TIMER
|
|
||||||
,EXPLOSIVE>>
|
|
||||||
<L? <CCOUNT ,FLOYD> 4>
|
|
||||||
<PROB 6>>
|
|
||||||
<MOVE .OBJ ,FLOYD>
|
|
||||||
<TELL
|
|
||||||
" Floyd picks up" T .OBJ ", examines it, and tucks ">
|
|
||||||
<COND (<FSET? .OBJ ,PLURALBIT>
|
|
||||||
<TELL "them">)
|
|
||||||
(T
|
|
||||||
<TELL "it">)>
|
|
||||||
<TELL " under his arm." CR>)
|
|
||||||
(<AND <FIRST? ,FLOYD>
|
|
||||||
<PROB 6>>
|
|
||||||
<SET OBJ <FIRST? ,FLOYD>>
|
|
||||||
<COND (<AND <NEXT? .OBJ>
|
|
||||||
<PROB 60>>
|
|
||||||
<SET OBJ <NEXT? .OBJ>>)>
|
|
||||||
<MOVE .OBJ ,HERE>
|
|
||||||
<TELL
|
|
||||||
" Floyd drops" T .OBJ " he was carrying." CR>)
|
|
||||||
(<AND <FIRST? ,FLOYD>
|
|
||||||
<PROB 4>>
|
|
||||||
<SET OBJ <FIRST? ,FLOYD>>
|
|
||||||
<COND (<AND <NEXT? .OBJ>
|
|
||||||
<PROB 60>>
|
|
||||||
<SET OBJ <NEXT? .OBJ>>)>
|
|
||||||
<TELL
|
|
||||||
" Floyd moves" T .OBJ " in a wavering course through the air, making
|
|
||||||
a roaring noise like a rocket exhaust." CR>)
|
|
||||||
(<AND <IN? ,PLATO ,HERE>
|
|
||||||
<PROB 70>>
|
|
||||||
<TELL " " <PICK-ONE ,PLATOISMS> ,PERIOD-CR>)
|
|
||||||
(T
|
|
||||||
<TELL " Floyd ">
|
|
||||||
<COND (<PROB <- 36 <* ,ROBOT-EVILNESS 3>>>
|
|
||||||
<TELL <PICK-ONE ,GOOD-FLOYDISMS>
|
|
||||||
,PERIOD-CR>)
|
|
||||||
(<PROB <- <* ,ROBOT-EVILNESS 25> 300>>
|
|
||||||
<TELL <PICK-ONE ,BAD-FLOYDISMS>
|
|
||||||
,PERIOD-CR>)
|
|
||||||
(<PROB 6>
|
|
||||||
<SETG AWAITING-REPLY 4>
|
|
||||||
<QUEUE I-REPLY <+ ,C-ELAPSED 2>>
|
|
||||||
<TELL
|
|
||||||
"says, \"Hey! Wanna play Hucka-Bucka-Beanstalk?\"" CR>)
|
|
||||||
(T
|
|
||||||
<TELL <PICK-ONE ,NEUTRAL-FLOYDISMS>
|
|
||||||
,PERIOD-CR>)>)>)>)
|
|
||||||
(<NOT <FSET? ,FLOYD ,ACTIVEBIT>>
|
|
||||||
<COND (<OR <EQUAL? ,HERE ,VACUUM-STORAGE ,AIRLOCK>
|
|
||||||
<L? ,SPACETRUCK-COUNTER 5>>
|
|
||||||
<RFALSE>)
|
|
||||||
(<NEXT-ROOM? ,FLOYD>
|
|
||||||
<RFALSE>)>
|
|
||||||
<FSET ,FLOYD ,ACTIVEBIT>
|
|
||||||
<FSET ,FLOYD ,ACTORBIT>
|
|
||||||
<TELL " Floyd bounds up to you" ,HOPPING-MAD>
|
|
||||||
<COND (,PLATO-INTRODUCED
|
|
||||||
<TELL
|
|
||||||
" Plato strolls in and gives Floyd a pat. \"I reactivated the little fellow;
|
|
||||||
I hope you don't mind.\"" CR>)
|
|
||||||
(T
|
|
||||||
<TELL
|
|
||||||
" Another robot wanders in behind Floyd and notices you." CR>
|
|
||||||
<I-PLATO T>
|
|
||||||
<TELL
|
|
||||||
" Plato motions toward Floyd. \"I presume you know this playful little
|
|
||||||
fellow. Someone had deactivated him, so I rectified the situation.\"" CR>)>
|
|
||||||
<MOVE ,PLATO ,HERE>
|
|
||||||
<MOVE ,FLOYD ,HERE>)
|
|
||||||
;"Floyd is active but not present"
|
|
||||||
(<G? ,ROBOT-EVILNESS 17>
|
|
||||||
<COND (<AND <LOC ,FLOYD>
|
|
||||||
<FSET? <LOC ,FLOYD> ,NWELDERBIT>
|
|
||||||
<NEXT-ROOM? ,FLOYD>>
|
|
||||||
;"don't move Floyd to Factory if he's in the next room
|
|
||||||
and it's a dead end"
|
|
||||||
<RFALSE>)>
|
|
||||||
<MOVE ,FLOYD ,FACTORY>
|
|
||||||
<ROB ,FLOYD <COND (<EQUAL? ,HERE ,EAST-JUNCTION ,LEVEL-FIVE>
|
|
||||||
,SOUTH-CONNECTION)
|
|
||||||
(<==? ,HERE ,SOUTH-JUNCTION ,NORTH-JUNCTION>
|
|
||||||
,EAST-CONNECTION)
|
|
||||||
(<PROB 25>
|
|
||||||
,SOUTH-JUNCTION)
|
|
||||||
(<PROB 33>
|
|
||||||
,EAST-JUNCTION)
|
|
||||||
(<PROB 50>
|
|
||||||
,NORTH-JUNCTION)
|
|
||||||
(T
|
|
||||||
,LEVEL-FIVE)>>
|
|
||||||
<MOVE ,STUN-GUN ,FLOYD>
|
|
||||||
<DEQUEUE I-FLOYD>
|
|
||||||
<DEQUEUE I-ROBOT-EVILNESS>
|
|
||||||
<RFALSE>)
|
|
||||||
(<AND ,FLOYD-FOLLOW
|
|
||||||
<EQUAL? ,HERE ,AIRLOCK>>
|
|
||||||
<TELL " Floyd calls from above, \"">
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<TELL "We">)
|
|
||||||
(T
|
|
||||||
<TELL "I">)>
|
|
||||||
<TELL
|
|
||||||
"'ll wait here; it doesn't look like there's room in that phone booth for ">
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<TELL "all">)
|
|
||||||
(T
|
|
||||||
<TELL "both">)>
|
|
||||||
<TELL " of us.\"" CR>)
|
|
||||||
(<OR <AND ,FLOYD-FOLLOW
|
|
||||||
<G? ,TIMER-SETTING 0>
|
|
||||||
<VISIBLE? ,EXPLOSIVE>>
|
|
||||||
<AND ,FLOYD-FOLLOW
|
|
||||||
<PROB 80>>>
|
|
||||||
<TELL " Floyd ">
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<MOVE ,PLATO ,HERE>
|
|
||||||
<TELL "and Plato follow">)
|
|
||||||
(T
|
|
||||||
<TELL "follows">)>
|
|
||||||
<MOVE ,FLOYD ,HERE>
|
|
||||||
<TELL " you." CR>)
|
|
||||||
(<EQUAL? ,HERE ,SPACETRUCK ,ELEVATOR ,BRIG ,ARMORY>
|
|
||||||
<TELL " Floyd bounces in">
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<MOVE ,PLATO ,HERE>
|
|
||||||
<TELL ", followed at a more leisurely pace by Plato">)>
|
|
||||||
<TELL ". \"Hey, wait for ">
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<MOVE ,PLATO ,HERE>
|
|
||||||
<TELL "us">)
|
|
||||||
(T
|
|
||||||
<TELL "Floyd">)>
|
|
||||||
<MOVE ,FLOYD ,HERE>
|
|
||||||
<TELL "!\" he yells." CR>)
|
|
||||||
(<AND <PROB 17>
|
|
||||||
,LIT
|
|
||||||
<NOT <EQUAL? ,HERE ,AIRLOCK ,VACUUM-STORAGE>>>
|
|
||||||
<TELL " Floyd ">
|
|
||||||
<COND (<AND <NOT ,PLATO-INTRODUCED>
|
|
||||||
<FSET? ,LEVEL-FIVE ,TOUCHBIT>
|
|
||||||
<PROB 50>>
|
|
||||||
<TELL
|
|
||||||
"dashes into view, followed by a slightly older-looking robot. \"Look, Floyd
|
|
||||||
found a new friend,\" Floyd says with unbounded exuberance." CR>
|
|
||||||
<I-PLATO T>)
|
|
||||||
(T
|
|
||||||
<COND (<PROB <- <* ,ROBOT-EVILNESS 10> 70>>
|
|
||||||
<TELL
|
|
||||||
"meanders in. \"You doing anything fun?\" he asks, and then answers
|
|
||||||
his own question, \"Nope. Same dumb boring things.\"">)
|
|
||||||
(<PROB 15>
|
|
||||||
<TELL
|
|
||||||
"rushes into the room and barrels into you. \"Oops, sorry,\" he says.
|
|
||||||
\"Floyd not looking at where he was going to.\"">)
|
|
||||||
(T
|
|
||||||
<TELL
|
|
||||||
"bounds into the room. \"Floyd here now!\" he cries.">)>
|
|
||||||
<COND (<AND ,PLATO-INTRODUCED
|
|
||||||
<EQUAL? ,PLATO-ATTACK-COUNTER 0>>
|
|
||||||
<MOVE ,PLATO ,HERE>
|
|
||||||
<TELL
|
|
||||||
" You notice that Plato has also roamed into view behind Floyd, once again
|
|
||||||
absorbed in his reading.">)>
|
|
||||||
<CRLF>)>
|
|
||||||
<MOVE ,FLOYD ,HERE>
|
|
||||||
<COND (<AND ,HANGING-IN-AIR
|
|
||||||
<NOT ,HANGING-COMMENT>>
|
|
||||||
<SETG FLOYD-SPOKE T>
|
|
||||||
<FLOYDS-HANGING-IN-AIR-COMMENT>)>)>
|
|
||||||
<SETG FLOYD-SPOKE <>>
|
|
||||||
<SETG FLOYD-FOLLOW <>>>
|
|
||||||
|
|
||||||
<GLOBAL GOOD-FLOYDISMS
|
<GLOBAL GOOD-FLOYDISMS
|
||||||
<LTABLE 0
|
<LTABLE 0
|
||||||
|
@ -1036,6 +785,24 @@ awed by such wisdom"
|
||||||
\"such a reaction will not reduce the level of pain.\" He gives Floyd a
|
\"such a reaction will not reduce the level of pain.\" He gives Floyd a
|
||||||
little tickle, and Floyd begins giggling and forgets the injury">>
|
little tickle, and Floyd begins giggling and forgets the injury">>
|
||||||
|
|
||||||
|
<ROUTINE MOVE-FLOYD-TO-FACTORY ()
|
||||||
|
<MOVE ,FLOYD ,FACTORY>
|
||||||
|
<ROB ,FLOYD <COND (<EQUAL? ,HERE ,EAST-JUNCTION ,LEVEL-FIVE>
|
||||||
|
,SOUTH-CONNECTION)
|
||||||
|
(<==? ,HERE ,SOUTH-JUNCTION ,NORTH-JUNCTION>
|
||||||
|
,EAST-CONNECTION)
|
||||||
|
(<PROB 25>
|
||||||
|
,SOUTH-JUNCTION)
|
||||||
|
(<PROB 33>
|
||||||
|
,EAST-JUNCTION)
|
||||||
|
(<PROB 50>
|
||||||
|
,NORTH-JUNCTION)
|
||||||
|
(T
|
||||||
|
,LEVEL-FIVE)>>
|
||||||
|
<MOVE ,STUN-GUN ,FLOYD>
|
||||||
|
<DEQUEUE I-FLOYD>
|
||||||
|
<DEQUEUE I-ROBOT-EVILNESS>>
|
||||||
|
|
||||||
<OBJECT HELEN
|
<OBJECT HELEN
|
||||||
(IN ROBOT-POOL)
|
(IN ROBOT-POOL)
|
||||||
(DESC "Helen")
|
(DESC "Helen")
|
||||||
|
@ -1068,7 +835,8 @@ perforating extension reads \"Helen.\"")
|
||||||
CLASS-THREE-SPACECRAFT-ACTIVATION-FORM>>
|
CLASS-THREE-SPACECRAFT-ACTIVATION-FORM>>
|
||||||
<CONFETTI ,PRSO>)
|
<CONFETTI ,PRSO>)
|
||||||
(<VERB? OFF ON OPEN>
|
(<VERB? OFF ON OPEN>
|
||||||
<PERFORM-PRSA ,PLATO>)
|
<PERFORM, PRSA ,PLATO>
|
||||||
|
<RTRUE>)
|
||||||
(<VERB? PICK>
|
(<VERB? PICK>
|
||||||
<PICK-ROBOT>)>>
|
<PICK-ROBOT>)>>
|
||||||
|
|
||||||
|
@ -1101,7 +869,8 @@ A brass plate on one of his pneumatic arm lifts says \"Rex.\"")
|
||||||
<TOUCHING? ,REX>>
|
<TOUCHING? ,REX>>
|
||||||
<CANT-REACH ,REX>)
|
<CANT-REACH ,REX>)
|
||||||
(<VERB? OFF ON OPEN>
|
(<VERB? OFF ON OPEN>
|
||||||
<PERFORM-PRSA ,PLATO>)
|
<PERFORM, PRSA ,PLATO>
|
||||||
|
<RTRUE>)
|
||||||
(<VERB? PICK>
|
(<VERB? PICK>
|
||||||
<PICK-ROBOT>)>>
|
<PICK-ROBOT>)>>
|
||||||
|
|
||||||
|
@ -1200,7 +969,8 @@ off and unoccupied.")
|
||||||
(T
|
(T
|
||||||
<TELL ,LOOK-AROUND>)>)
|
<TELL ,LOOK-AROUND>)>)
|
||||||
(<VERB? OPEN CLOSE>
|
(<VERB? OPEN CLOSE>
|
||||||
<PERFORM-PRSA ,SPACETRUCK-HATCH>)
|
<PERFORM, PRSA ,SPACETRUCK-HATCH>
|
||||||
|
<RTRUE>)
|
||||||
(<VERB? EXAMINE>
|
(<VERB? EXAMINE>
|
||||||
<COND (<EQUAL? ,HERE ,SPACETRUCK>
|
<COND (<EQUAL? ,HERE ,SPACETRUCK>
|
||||||
<V-LOOK>)
|
<V-LOOK>)
|
||||||
|
@ -1227,7 +997,7 @@ off and unoccupied.")
|
||||||
(DESC "Spacetruck")
|
(DESC "Spacetruck")
|
||||||
(OUT PER SPACETRUCK-EXIT-F)
|
(OUT PER SPACETRUCK-EXIT-F)
|
||||||
(FLAGS RLANDBIT ONBIT NWELDERBIT FLOYDBIT)
|
(FLAGS RLANDBIT ONBIT NWELDERBIT FLOYDBIT)
|
||||||
(GLOBAL WINDOW KEYPAD SPACETRUCK-OBJECT SPACETRUCK-HATCH)
|
(GLOBAL VILLAGE WINDOW KEYPAD SPACETRUCK-OBJECT SPACETRUCK-HATCH)
|
||||||
(ACTION SPACETRUCK-F)
|
(ACTION SPACETRUCK-F)
|
||||||
(THINGS <PSEUDO (<> SLOT FORM-SLOT-F)
|
(THINGS <PSEUDO (<> SLOT FORM-SLOT-F)
|
||||||
(RED BUTTON RED-BUTTON-F)>)>
|
(RED BUTTON RED-BUTTON-F)>)>
|
||||||
|
@ -1307,7 +1077,11 @@ controlling the autopilot. The hatch is ">
|
||||||
<TELL "co">)
|
<TELL "co">)
|
||||||
(T
|
(T
|
||||||
<MOVE ,FLOYD ,PILOT-SEAT>)>
|
<MOVE ,FLOYD ,PILOT-SEAT>)>
|
||||||
<TELL D ,PILOT-SEAT ".">
|
<PRINTD ,PILOT-SEAT>
|
||||||
|
<COND (<EQUAL? <LOC ,FLOYD> ,PILOT-SEAT ,COPILOT-SEAT>
|
||||||
|
<TELL
|
||||||
|
", his feet dangling a few centimeters short of the floor">)>
|
||||||
|
<TELL ".">
|
||||||
<COND (<EQUAL? ,SPACETRUCK-COUNTER -1>
|
<COND (<EQUAL? ,SPACETRUCK-COUNTER -1>
|
||||||
<SETG FLOYD-SPOKE T>
|
<SETG FLOYD-SPOKE T>
|
||||||
<SETG AWAITING-REPLY 2>
|
<SETG AWAITING-REPLY 2>
|
||||||
|
@ -1349,17 +1123,7 @@ a truck in over two weeks!\"">)>
|
||||||
<DEQUEUE I-RADIO>
|
<DEQUEUE I-RADIO>
|
||||||
<RFALSE>)>>
|
<RFALSE>)>>
|
||||||
|
|
||||||
<ROUTINE I-RADIO ()
|
;"routine I-RADIO moved to INTERRUPTS file"
|
||||||
<COND (<NOT <EQUAL? ,HERE ,SPACETRUCK>>
|
|
||||||
<RFALSE>)
|
|
||||||
(<PROB 30>
|
|
||||||
<TELL
|
|
||||||
" The radio crackles to life. \"Breaker. "
|
|
||||||
<PICK-ONE ,RADIO-LINES> " Over.\"" CR>)
|
|
||||||
(<PROB 20>
|
|
||||||
<TELL
|
|
||||||
" A country and western station drifts into tune for a moment, but then
|
|
||||||
fades again." CR>)>>
|
|
||||||
|
|
||||||
<GLOBAL RADIO-LINES
|
<GLOBAL RADIO-LINES
|
||||||
<LTABLE
|
<LTABLE
|
||||||
|
@ -1450,7 +1214,7 @@ the floor, the bay floods with air, and a voice whispers, \"Stationfall.\"
|
||||||
Through the viewport, you see no one to meet you. Odd." CR>)
|
Through the viewport, you see no one to meet you. Odd." CR>)
|
||||||
(T
|
(T
|
||||||
<RECORDING
|
<RECORDING
|
||||||
"Arrival at terminus of inputted course. Fuel levels now effectively at
|
"Arrival at terminus of inputted course. Fuel level now effectively at
|
||||||
zero. Oxygen supply for one person: approximately two chrons">
|
zero. Oxygen supply for one person: approximately two chrons">
|
||||||
<QUEUE I-SUFFOCATE 1970>)>
|
<QUEUE I-SUFFOCATE 1970>)>
|
||||||
<DEQUEUE I-SPACETRUCK>)>>
|
<DEQUEUE I-SPACETRUCK>)>>
|
||||||
|
@ -1527,6 +1291,11 @@ dead.">>
|
||||||
"It's your basic insulated bottle, which hasn't changed much over the
|
"It's your basic insulated bottle, which hasn't changed much over the
|
||||||
centuries. This one is plaid, with pictures of little robots all over it. ">
|
centuries. This one is plaid, with pictures of little robots all over it. ">
|
||||||
<RFALSE> ;"open-closed")
|
<RFALSE> ;"open-closed")
|
||||||
|
(<AND <VERB? POUR EMPTY>
|
||||||
|
<PRSO? ,THERMOS>
|
||||||
|
<IN? ,SOUP ,THERMOS>>
|
||||||
|
<PERFORM ,PRSA ,SOUP ,PRSI>
|
||||||
|
<RTRUE>)
|
||||||
(<AND <VERB? PUT>
|
(<AND <VERB? PUT>
|
||||||
<PRSI? ,THERMOS>
|
<PRSI? ,THERMOS>
|
||||||
<NOT <PRSO? ,EXPLOSIVE ,SMALL-BIT ,LARGE-BIT ,MEDIUM-BIT>>>
|
<NOT <PRSO? ,EXPLOSIVE ,SMALL-BIT ,LARGE-BIT ,MEDIUM-BIT>>>
|
||||||
|
@ -1539,7 +1308,11 @@ centuries. This one is plaid, with pictures of little robots all over it. ">
|
||||||
(,THERMOS-FILLED-WITH-GAS
|
(,THERMOS-FILLED-WITH-GAS
|
||||||
<FSET ,THERMOS ,OPENBIT>
|
<FSET ,THERMOS ,OPENBIT>
|
||||||
<TELL
|
<TELL
|
||||||
"You open the thermos, releasing a puff of FREZONE (tm) gas." CR>)>)>>
|
"You open the thermos, releasing a puff of FREZONE (tm) gas." CR>)>)
|
||||||
|
(<AND <VERB? REACH-IN>
|
||||||
|
<IN? ,SOUP ,THERMOS>>
|
||||||
|
<PERFORM ,V?EXAMINE ,SOUP>
|
||||||
|
<RTRUE>)>>
|
||||||
|
|
||||||
<GLOBAL THERMOS-FILLED-WITH-GAS <>>
|
<GLOBAL THERMOS-FILLED-WITH-GAS <>>
|
||||||
|
|
||||||
|
@ -1578,7 +1351,11 @@ centuries. This one is plaid, with pictures of little robots all over it. ">
|
||||||
<NOT <ULTIMATELY-IN? ,THERMOS>>>
|
<NOT <ULTIMATELY-IN? ,THERMOS>>>
|
||||||
<THIS-IS-IT ,THERMOS>
|
<THIS-IS-IT ,THERMOS>
|
||||||
<TELL ,YNH TR ,THERMOS>)
|
<TELL ,YNH TR ,THERMOS>)
|
||||||
(<VERB? EXAMINE TOUCH TASTE>
|
(<VERB? POUR EMPTY>
|
||||||
|
<REMOVE ,SOUP>
|
||||||
|
<MESS "soup">
|
||||||
|
<TELL ,PERIOD-CR>)
|
||||||
|
(<VERB? EXAMINE TOUCH TASTE REACH-IN>
|
||||||
<TELL "The soup seems to be ">
|
<TELL "The soup seems to be ">
|
||||||
<DESCRIBE-SOUP-TEMPERATURE>)>>
|
<DESCRIBE-SOUP-TEMPERATURE>)>>
|
||||||
|
|
||||||
|
|
530
station.zap
530
station.zap
File diff suppressed because it is too large
Load diff
458
station.zil
458
station.zil
File diff suppressed because it is too large
Load diff
12
syntax.zil
12
syntax.zil
|
@ -71,11 +71,11 @@
|
||||||
<SYNTAX $VERIFY = V-$VERIFY>
|
<SYNTAX $VERIFY = V-$VERIFY>
|
||||||
<SYNTAX $VERIFY OBJECT = V-$VERIFY>
|
<SYNTAX $VERIFY OBJECT = V-$VERIFY>
|
||||||
|
|
||||||
<SYNTAX $DEBUG = V-$DEBUG>
|
;<SYNTAX $DEBUG = V-$DEBUG>
|
||||||
|
|
||||||
<SYNTAX $STATION = V-$STATION>
|
;<SYNTAX $STATION = V-$STATION>
|
||||||
|
|
||||||
<SYNTAX $KEY = V-$KEY>
|
;<SYNTAX $KEY = V-$KEY>
|
||||||
|
|
||||||
;"subtitle real verbs"
|
;"subtitle real verbs"
|
||||||
|
|
||||||
|
@ -155,7 +155,7 @@
|
||||||
<SYNTAX CONNECT OBJECT TO OBJECT = V-CONNECT>
|
<SYNTAX CONNECT OBJECT TO OBJECT = V-CONNECT>
|
||||||
<VERB-SYNONYM CONNECT ATTACH>
|
<VERB-SYNONYM CONNECT ATTACH>
|
||||||
|
|
||||||
<SYNTAX COVER OBJECT WITH OBJECT (HELD MANY) = V-SPUT-ON>
|
<SYNTAX COVER OBJECT WITH OBJECT (HELD MANY HAVE) = V-SPUT-ON>
|
||||||
|
|
||||||
<SYNTAX COUNT OBJECT = V-COUNT>
|
<SYNTAX COUNT OBJECT = V-COUNT>
|
||||||
|
|
||||||
|
@ -253,7 +253,7 @@
|
||||||
<SYNONYM FIX REPAIR>
|
<SYNONYM FIX REPAIR>
|
||||||
|
|
||||||
<SYNTAX FLATTEN OBJECT = V-FLATTEN>
|
<SYNTAX FLATTEN OBJECT = V-FLATTEN>
|
||||||
<VERB-SYNONYM FLATTEN UNCRUMPLE STRAIGHTEN>
|
<VERB-SYNONYM FLATTEN UNCRUMPLE UNCREASE STRAIGHTEN>
|
||||||
|
|
||||||
<SYNTAX FOLLOW OBJECT = V-FOLLOW>
|
<SYNTAX FOLLOW OBJECT = V-FOLLOW>
|
||||||
<VERB-SYNONYM FOLLOW PURSUE CHASE>
|
<VERB-SYNONYM FOLLOW PURSUE CHASE>
|
||||||
|
@ -470,7 +470,7 @@
|
||||||
<VERB-SYNONYM SHOOT FIRE BLAST ZAP>
|
<VERB-SYNONYM SHOOT FIRE BLAST ZAP>
|
||||||
|
|
||||||
<SYNTAX SHOW OBJECT (HELD MANY) TO OBJECT (FIND ACTORBIT) = V-SHOW>
|
<SYNTAX SHOW OBJECT (HELD MANY) TO OBJECT (FIND ACTORBIT) = V-SHOW>
|
||||||
<SYNTAX SHOW OBJECT (FIND ACTORBIT) OBJECT (HELD MANY) = V-SSHOW>
|
<SYNTAX SHOW OBJECT (FIND ACTORBIT) OBJECT (HELD MANY HAVE) = V-SSHOW>
|
||||||
|
|
||||||
<SYNTAX SIT ON OBJECT ;(FIND VEHBIT) (ON-GROUND IN-ROOM) = V-CLIMB-ON>
|
<SYNTAX SIT ON OBJECT ;(FIND VEHBIT) (ON-GROUND IN-ROOM) = V-CLIMB-ON>
|
||||||
<SYNTAX SIT DOWN OBJECT (FIND RLANDBIT) (ON-GROUND IN-ROOM) = V-SIT>
|
<SYNTAX SIT DOWN OBJECT (FIND RLANDBIT) (ON-GROUND IN-ROOM) = V-SIT>
|
||||||
|
|
327
verbs.zil
327
verbs.zil
|
@ -31,6 +31,7 @@
|
||||||
<ROUTINE V-SAVE ()
|
<ROUTINE V-SAVE ()
|
||||||
<SETG P-CONT <>> ;"flush anything on input line after SAVE"
|
<SETG P-CONT <>> ;"flush anything on input line after SAVE"
|
||||||
<SETG QUOTE-FLAG <>>
|
<SETG QUOTE-FLAG <>>
|
||||||
|
<PUTB ,OOPS-INBUF 1 0> ;"retrofix 50"
|
||||||
<COND (<AND <VISIBLE? ,FLOYD>
|
<COND (<AND <VISIBLE? ,FLOYD>
|
||||||
<FSET? ,FLOYD ,TOUCHBIT>
|
<FSET? ,FLOYD ,TOUCHBIT>
|
||||||
<FSET? ,FLOYD ,ACTIVEBIT>
|
<FSET? ,FLOYD ,ACTIVEBIT>
|
||||||
|
@ -59,17 +60,16 @@ was more fun,\" he sighs." CR CR>
|
||||||
<TELL ,FAILED>)>>
|
<TELL ,FAILED>)>>
|
||||||
|
|
||||||
<ROUTINE CONTINUE ()
|
<ROUTINE CONTINUE ()
|
||||||
<TELL "[Hit your RETURN/ENTER key.]" CR>
|
<TELL "[Hit RETURN/ENTER.]" CR>
|
||||||
<PUTB ,P-LEXV 0 10>
|
<PUTB ,P-LEXV 0 10>
|
||||||
<READ ,P-INBUF ,P-LEXV>
|
<READ ,P-INBUF ,P-LEXV>
|
||||||
<PUTB ,P-LEXV 0 60>>
|
<PUTB ,P-LEXV 0 60>>
|
||||||
|
|
||||||
<ROUTINE TELL-SCORE ()
|
<ROUTINE TELL-SCORE ()
|
||||||
<TELL
|
<TELL "It is Day " N ,DAY " of your adventure. ">
|
||||||
"Your score is " N ,SCORE " (out of 80 points). It is Day " N ,DAY " of your
|
|
||||||
adventure. ">
|
|
||||||
<V-TIME T>
|
<V-TIME T>
|
||||||
<TELL " Your score gives you the rank of ">
|
<TELL
|
||||||
|
" Your score is " N ,SCORE " (of 80 points), giving you the rank of ">
|
||||||
<COND (<EQUAL? ,SCORE 0>
|
<COND (<EQUAL? ,SCORE 0>
|
||||||
<TELL "Insignificant Nobody">)
|
<TELL "Insignificant Nobody">)
|
||||||
(<L? ,SCORE 17> ;"1 thru 16"
|
(<L? ,SCORE 17> ;"1 thru 16"
|
||||||
|
@ -94,9 +94,8 @@ adventure. ">
|
||||||
<FSET? ,FLOYD ,ACTIVEBIT>
|
<FSET? ,FLOYD ,ACTIVEBIT>
|
||||||
<NOT <EQUAL? ,HERE ,FACTORY>>>
|
<NOT <EQUAL? ,HERE ,FACTORY>>>
|
||||||
<TELL
|
<TELL
|
||||||
" \"Uh oh,\" frets Floyd. \"If this is going to be permanent,
|
" \"Uh oh,\" frets Floyd. \"Once printer is on, Floyd will have to be
|
||||||
Floyd will have to be careful not to use any of the bad words
|
careful not to use any of the bad words he learned aboard the Duffy!\"" CR>)>
|
||||||
he learned aboard the Duffy!\"" CR>)>
|
|
||||||
<PUT 0 8 <BOR <GET 0 8> 1>>
|
<PUT 0 8 <BOR <GET 0 8> 1>>
|
||||||
<CORP-NOTICE "begins">
|
<CORP-NOTICE "begins">
|
||||||
<V-VERSION>>
|
<V-VERSION>>
|
||||||
|
@ -121,14 +120,12 @@ to save for important scenes. Not like this one.\"" CR>)>
|
||||||
<ROUTINE V-DIAGNOSE ()
|
<ROUTINE V-DIAGNOSE ()
|
||||||
<SETG C-ELAPSED 18>
|
<SETG C-ELAPSED 18>
|
||||||
<COND (<EQUAL? ,HERE ,FACTORY>
|
<COND (<EQUAL? ,HERE ,FACTORY>
|
||||||
<TELL
|
<TELL "We're talking adrenaline. Lots of adrenalin." CR>)
|
||||||
"We're talking adrenaline. Lots and lots of adrenalin." CR>)
|
|
||||||
(T
|
(T
|
||||||
<TELL "You feel ">
|
<TELL "You feel ">
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
|
||||||
<TELL "numb. ">
|
<TELL "numb. ">
|
||||||
<STUNNED>
|
<YOURE-STUNNED>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<EQUAL? ,SLEEPY-LEVEL 0>
|
(<EQUAL? ,SLEEPY-LEVEL 0>
|
||||||
<TELL "well-rested">)
|
<TELL "well-rested">)
|
||||||
|
@ -225,10 +222,10 @@ the Robot Pool again?\"" CR>)>
|
||||||
<SET REPEATING T>
|
<SET REPEATING T>
|
||||||
<TELL-SCORE>)>
|
<TELL-SCORE>)>
|
||||||
<TELL
|
<TELL
|
||||||
" According to the Treaty of Gishen IV, which was amended after the Battle
|
" According to the Treaty of Gishen IV (amended after the Battle on Sorkin
|
||||||
on Sorkin III in 11347 GY, you must be given the opportunity to restart the
|
III in 11347 GY) you have the opportunity to restart the story, restore a saved
|
||||||
story, restore a saved position, or end this session of the game. In the
|
position, or end this session of the game. In the interests of interstellar
|
||||||
interests of interstellar peace, type RESTART, RESTORE, or QUIT: >">
|
peace, type RESTART, RESTORE, or QUIT: >">
|
||||||
<PUTB ,P-LEXV 0 10>
|
<PUTB ,P-LEXV 0 10>
|
||||||
<READ ,P-INBUF ,P-LEXV>
|
<READ ,P-INBUF ,P-LEXV>
|
||||||
<PUTB ,P-LEXV 0 60>
|
<PUTB ,P-LEXV 0 60>
|
||||||
|
@ -316,9 +313,9 @@ this disk, they'll have Floyd to answer to.\"" CR>)>>
|
||||||
|
|
||||||
<CONSTANT SERIAL 0>
|
<CONSTANT SERIAL 0>
|
||||||
|
|
||||||
<GLOBAL DEBUG <>>
|
;<GLOBAL DEBUG <>>
|
||||||
|
|
||||||
<ROUTINE V-$DEBUG ()
|
;<ROUTINE V-$DEBUG ()
|
||||||
<TELL "O">
|
<TELL "O">
|
||||||
<COND (,DEBUG
|
<COND (,DEBUG
|
||||||
<SETG DEBUG <>>
|
<SETG DEBUG <>>
|
||||||
|
@ -328,7 +325,7 @@ this disk, they'll have Floyd to answer to.\"" CR>)>>
|
||||||
<TELL "n">)>
|
<TELL "n">)>
|
||||||
<TELL ,PERIOD-CR>>
|
<TELL ,PERIOD-CR>>
|
||||||
|
|
||||||
<ROUTINE V-$STATION ()
|
;<ROUTINE V-$STATION ()
|
||||||
<FSET ,FLOYD ,TOUCHBIT>
|
<FSET ,FLOYD ,TOUCHBIT>
|
||||||
<FSET ,SPACETRUCK-HATCH ,OPENBIT>
|
<FSET ,SPACETRUCK-HATCH ,OPENBIT>
|
||||||
<FSET ,IRIS-HATCH ,OPENBIT>
|
<FSET ,IRIS-HATCH ,OPENBIT>
|
||||||
|
@ -343,7 +340,7 @@ this disk, they'll have Floyd to answer to.\"" CR>)>>
|
||||||
<QUEUE I-PLATO 750>
|
<QUEUE I-PLATO 750>
|
||||||
<GOTO ,SPACETRUCK>>
|
<GOTO ,SPACETRUCK>>
|
||||||
|
|
||||||
<ROUTINE V-$KEY ()
|
;<ROUTINE V-$KEY ()
|
||||||
<QUEUE I-LIGHTS-OUT <+ <RANDOM 200> 20>>
|
<QUEUE I-LIGHTS-OUT <+ <RANDOM 200> 20>>
|
||||||
<MOVE ,KEY ,PROTAGONIST>
|
<MOVE ,KEY ,PROTAGONIST>
|
||||||
<MOVE ,HEADLAMP ,PROTAGONIST>
|
<MOVE ,HEADLAMP ,PROTAGONIST>
|
||||||
|
@ -359,22 +356,21 @@ this disk, they'll have Floyd to answer to.\"" CR>)>>
|
||||||
|
|
||||||
<ROUTINE V-ALARM ()
|
<ROUTINE V-ALARM ()
|
||||||
<COND (<PRSO? ,ROOMS>
|
<COND (<PRSO? ,ROOMS>
|
||||||
<PERFORM-PRSA ,ME>)
|
<PERFORM ,PRSA ,ME>
|
||||||
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<TELL "But" T ,PRSO " isn't asleep." CR>)>>
|
<TELL "But" T ,PRSO " isn't asleep." CR>)>>
|
||||||
|
|
||||||
<ROUTINE V-ANSWER ()
|
<ROUTINE V-ANSWER ()
|
||||||
<COND (<AND ,AWAITING-REPLY
|
<COND (<AND ,AWAITING-REPLY
|
||||||
<YES-WORD <GET ,P-LEXV ,P-CONT>>>
|
<YES-WORD <GET ,P-LEXV ,P-CONT>>>
|
||||||
<V-YES>
|
<V-YES>)
|
||||||
<STOP>)
|
|
||||||
(<AND ,AWAITING-REPLY
|
(<AND ,AWAITING-REPLY
|
||||||
<NO-WORD <GET ,P-LEXV ,P-CONT>>>
|
<NO-WORD <GET ,P-LEXV ,P-CONT>>>
|
||||||
<V-NO>
|
<V-NO>)
|
||||||
<STOP>)
|
|
||||||
(T
|
(T
|
||||||
<TELL "Nobody is awaiting your answer." CR>
|
<TELL "Nobody is awaiting your answer." CR>)>
|
||||||
<STOP>)>>
|
<STOP>>
|
||||||
|
|
||||||
<ROUTINE V-APPLAUD ()
|
<ROUTINE V-APPLAUD ()
|
||||||
<TELL "\"Clap.\"" CR>
|
<TELL "\"Clap.\"" CR>
|
||||||
|
@ -589,7 +585,8 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<NOT ,PRSO>
|
(<NOT ,PRSO>
|
||||||
<COND (<NOT <IN? ,PROTAGONIST ,HERE>>
|
<COND (<NOT <IN? ,PROTAGONIST ,HERE>>
|
||||||
<PERFORM-PRSA <LOC ,PROTAGONIST>>)
|
<PERFORM ,PRSA <LOC ,PROTAGONIST>>
|
||||||
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<TELL ,LOOK-AROUND>)>)
|
<TELL ,LOOK-AROUND>)>)
|
||||||
(<EQUAL? ,P-PRSA-WORD ,W?TAKE> ;"since GET OUT is also TAKE OUT"
|
(<EQUAL? ,P-PRSA-WORD ,W?TAKE> ;"since GET OUT is also TAKE OUT"
|
||||||
|
@ -641,7 +638,7 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<ROUTINE V-DRILL ()
|
<ROUTINE V-DRILL ()
|
||||||
<COND (<FSET? ,PRSO ,TAKEBIT>
|
<COND (<FSET? ,PRSO ,TAKEBIT>
|
||||||
<TELL
|
<TELL
|
||||||
"You'll need a vice to hold down" T ,PRSO " before you can drill it." CR>)
|
"You'll need a vise to hold" T ,PRSO " before you can drill it." CR>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"The point of the drill doesn't seem to be as hard as" TR ,PRSO>)>>
|
"The point of the drill doesn't seem to be as hard as" TR ,PRSO>)>>
|
||||||
|
@ -651,7 +648,7 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<PERFORM ,V?DRILL ,PRSI>
|
<PERFORM ,V?DRILL ,PRSI>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<TELL ,RECOGNIZE>)>>
|
<RECOGNIZE>)>>
|
||||||
|
|
||||||
;<ROUTINE V-DRIVE ()
|
;<ROUTINE V-DRIVE ()
|
||||||
<V-DRIVE-DIR>>
|
<V-DRIVE-DIR>>
|
||||||
|
@ -676,7 +673,9 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<TELL ,PERIOD-CR>)>>
|
<TELL ,PERIOD-CR>)>>
|
||||||
|
|
||||||
<ROUTINE PRE-EAT ()
|
<ROUTINE PRE-EAT ()
|
||||||
<COND (<AND ,PRSI
|
<COND (,STUNNED
|
||||||
|
<YOURE-STUNNED>)
|
||||||
|
(<AND ,PRSI
|
||||||
<NOT <IN? ,PRSO ,PRSI>>>
|
<NOT <IN? ,PRSO ,PRSI>>>
|
||||||
<NOT-IN>)
|
<NOT-IN>)
|
||||||
(<FSET? ,SPACESUIT ,WORNBIT>
|
(<FSET? ,SPACESUIT ,WORNBIT>
|
||||||
|
@ -707,7 +706,8 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<COND (<NOT <FSET? ,PRSO ,OPENBIT>>
|
<COND (<NOT <FSET? ,PRSO ,OPENBIT>>
|
||||||
<DO-FIRST "open" ,PRSO>)
|
<DO-FIRST "open" ,PRSO>)
|
||||||
(<SET X <FIRST? ,PRSO>>
|
(<SET X <FIRST? ,PRSO>>
|
||||||
<TELL "(How about" T .X "?)">
|
<COND (<NEXT? .X>
|
||||||
|
<TELL "(How about" T .X "?)" CR>)>
|
||||||
<PERFORM ,V?EAT .X>
|
<PERFORM ,V?EAT .X>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
|
@ -790,6 +790,8 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
;<FSET ,PRSO ,TOUCHBIT>
|
;<FSET ,PRSO ,TOUCHBIT>
|
||||||
<APPLY <GETP ,PRSO ,P?ACTION> ,M-ENTER>
|
<APPLY <GETP ,PRSO ,P?ACTION> ,M-ENTER>
|
||||||
<CRLF>)>)
|
<CRLF>)>)
|
||||||
|
(<PRSO? ,AIR>
|
||||||
|
<V-LEAP>)
|
||||||
(<EQUAL? <GET ,P-ITBL ,P-PREP1> ,PR?ON>
|
(<EQUAL? <GET ,P-ITBL ,P-PREP1> ,PR?ON>
|
||||||
<CANT-VERB-A-PRSO "get onto">)
|
<CANT-VERB-A-PRSO "get onto">)
|
||||||
(<NOT <FSET? ,PRSO ,TAKEBIT>>
|
(<NOT <FSET? ,PRSO ,TAKEBIT>>
|
||||||
|
@ -844,9 +846,8 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
<TELL "about" TR ,PRSO>)>>
|
<TELL "about" TR ,PRSO>)>>
|
||||||
|
|
||||||
<ROUTINE V-EXERCISE ()
|
<ROUTINE V-EXERCISE ()
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
<YOURE-STUNNED>
|
||||||
<STUNNED>
|
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<IN? ,PROTAGONIST ,EXERCISE-MACHINE>
|
(<IN? ,PROTAGONIST ,EXERCISE-MACHINE>
|
||||||
<COND (<AND <ULTIMATELY-IN? ,JAMMER ,HERE>
|
<COND (<AND <ULTIMATELY-IN? ,JAMMER ,HERE>
|
||||||
|
@ -858,7 +859,7 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
(T
|
(T
|
||||||
<TELL "You do a few repetitions">)>)
|
<TELL "You do a few repetitions">)>)
|
||||||
(T
|
(T
|
||||||
<TELL "You drop to the deck and do a few push-ups">)>
|
<TELL "You do a few push-ups">)>
|
||||||
<TELL
|
<TELL
|
||||||
". Dr. Ventricalli, the Duffy's cardiologist, would be pleased." CR>>
|
". Dr. Ventricalli, the Duffy's cardiologist, would be pleased." CR>>
|
||||||
|
|
||||||
|
@ -928,8 +929,8 @@ object, LOOK INSIDE it, LOOK UNDER it, etc." CR>)>>
|
||||||
|
|
||||||
<ROUTINE V-FIX ()
|
<ROUTINE V-FIX ()
|
||||||
<TELL
|
<TELL
|
||||||
"[You shouldn't expect such general commands to work. To repair something,
|
"[Such general commands won't work. To repair something, you must perform the
|
||||||
you must perform the specific steps required.]" CR>>
|
specific steps required.]" CR>>
|
||||||
|
|
||||||
<ROUTINE V-FLATTEN ()
|
<ROUTINE V-FLATTEN ()
|
||||||
<TELL ,HUH>>
|
<TELL ,HUH>>
|
||||||
|
@ -958,8 +959,8 @@ you must perform the specific steps required.]" CR>>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<EQUAL? ,P-NUMBER 1>
|
(<EQUAL? ,P-NUMBER 1>
|
||||||
<TELL
|
<TELL
|
||||||
"These dice are obviously special zero-gee dice which project their
|
"These must be those special zero-gee dice which project their own
|
||||||
own gravitational field onto the nearest surface. Zero-gee dice are, of
|
gravitational field onto the nearest surface. Zero-gee dice are, of
|
||||||
course, notoriously easy to load">)
|
course, notoriously easy to load">)
|
||||||
(<EQUAL? ,P-NUMBER 2>
|
(<EQUAL? ,P-NUMBER 2>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -974,8 +975,8 @@ recounted in PLANETFALL">)
|
||||||
<TELL
|
<TELL
|
||||||
"This is, of course, impossible. To do this, the creature would have to be
|
"This is, of course, impossible. To do this, the creature would have to be
|
||||||
an order of magnitude larger. There are two possible explanations: 1. The
|
an order of magnitude larger. There are two possible explanations: 1. The
|
||||||
creature actually extends part of its volume into a parallel dimension.
|
creature actually extends part of its volume into a parallel dimension"
|
||||||
2. A callous disregard for scientific accuracy on the part of the author">)
|
,CALLOUS-DISREGARD>)
|
||||||
(<EQUAL? ,P-NUMBER 5 9 13>
|
(<EQUAL? ,P-NUMBER 5 9 13>
|
||||||
<TELL "Kids: ">
|
<TELL "Kids: ">
|
||||||
<COND (<EQUAL? ,P-NUMBER 5>
|
<COND (<EQUAL? ,P-NUMBER 5>
|
||||||
|
@ -990,8 +991,8 @@ creature actually extends part of its volume into a parallel dimension.
|
||||||
<TELL "That was just an example">)
|
<TELL "That was just an example">)
|
||||||
(<EQUAL? ,P-NUMBER 7>
|
(<EQUAL? ,P-NUMBER 7>
|
||||||
<TELL
|
<TELL
|
||||||
,UNFAMILIAR "your frenzied boss, Ensign Blather, would toss you into
|
,UNFAMILIAR "your frenzied (former) boss, Ensign Blather, would toss you into
|
||||||
the Feinstein's brig for almost any violation of the Stellar Patrol's
|
the Feinstein's brig for the tiniest violation of the Stellar Patrol's
|
||||||
near-infinity of trivial regulations">)
|
near-infinity of trivial regulations">)
|
||||||
(<EQUAL? ,P-NUMBER 8>
|
(<EQUAL? ,P-NUMBER 8>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1013,6 +1014,22 @@ wishes to point out his right to rip off his own ideas. So there">)
|
||||||
(T
|
(T
|
||||||
<TELL "1)">)>)
|
<TELL "1)">)>)
|
||||||
;"13 handled above"
|
;"13 handled above"
|
||||||
|
(<EQUAL? ,P-NUMBER 14>
|
||||||
|
<TELL
|
||||||
|
"Actually, it is only a myth that ostriches stick their heads in holes when
|
||||||
|
frightened. The fact that this ostrich does can be attributed to: 1. an
|
||||||
|
addling of the animal's brain caused by extended exposure to weightlessness"
|
||||||
|
,CALLOUS-DISREGARD>)
|
||||||
|
(<EQUAL? ,P-NUMBER 15>
|
||||||
|
<TELL
|
||||||
|
"IF you also played Planetfall, and IF you scrambled any magnetic cards in
|
||||||
|
Planetfall by being careless with the magnet: GOTCHA AGAIN! (Footnote 16)" CR>
|
||||||
|
<RTRUE>)
|
||||||
|
(<EQUAL? ,P-NUMBER 16>
|
||||||
|
<TELL
|
||||||
|
"Reminds me of that old saying, \"Fool me once, shame on you. Fool me twice,
|
||||||
|
shame on me!\"" CR>
|
||||||
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<TELL "There is no Footnote " N ,P-NUMBER ,PERIOD-CR>
|
<TELL "There is no Footnote " N ,P-NUMBER ,PERIOD-CR>
|
||||||
<RTRUE>)>
|
<RTRUE>)>
|
||||||
|
@ -1021,17 +1038,23 @@ wishes to point out his right to rip off his own ideas. So there">)
|
||||||
<TELL ". (Footnote 8)">)>
|
<TELL ". (Footnote 8)">)>
|
||||||
<TELL ,PERIOD-CR>>
|
<TELL ,PERIOD-CR>>
|
||||||
|
|
||||||
<ROUTINE PRE-GIVE ()
|
<ROUTINE PRE-GIVE ("AUX" IDROP-VALUE)
|
||||||
<COND (<AND <VERB? GIVE>
|
<COND (<AND <VERB? GIVE>
|
||||||
<PRSO? ,HANDS>>
|
<PRSO? ,HANDS>>
|
||||||
<PERFORM ,V?SHAKE-WITH ,PRSI>
|
<PERFORM ,V?SHAKE-WITH ,PRSI>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<IDROP>
|
(<SET IDROP-VALUE <IDROP>>
|
||||||
<RTRUE>)>>
|
<RETURN .IDROP-VALUE>)>>
|
||||||
|
|
||||||
<ROUTINE V-GET-DRESSED ()
|
<ROUTINE V-GET-DRESSED ()
|
||||||
<COND (<PRSO? ,ROOMS>
|
<COND (<PRSO? ,ROOMS>
|
||||||
<TELL "You are!" CR>)
|
<COND (<FSET? ,PATROL-UNIFORM ,WORNBIT>
|
||||||
|
<TELL "You are!" CR>)
|
||||||
|
(<VISIBLE? ,PATROL-UNIFORM>
|
||||||
|
<PERFORM ,V?WEAR ,PATROL-UNIFORM>
|
||||||
|
<RTRUE>)
|
||||||
|
(T
|
||||||
|
<TELL "No clothes in sight!" CR>)>)
|
||||||
(T
|
(T
|
||||||
<RECOGNIZE>)>>
|
<RECOGNIZE>)>>
|
||||||
|
|
||||||
|
@ -1074,12 +1097,13 @@ wishes to point out his right to rip off his own ideas. So there">)
|
||||||
|
|
||||||
<ROUTINE V-HELP ()
|
<ROUTINE V-HELP ()
|
||||||
<TELL
|
<TELL
|
||||||
"[Help!?! You need help?!? Do you know how hard it is being a computer? My
|
"[Help!?! You need help?!? What about me, your poor computer? My chips are
|
||||||
chips are about to go, my wife just ran off with a mainframe from Milwaukee,
|
about to go, my mate just ran off with a mainframe from Milwaukee, and the
|
||||||
and one of the kids just told me that when he grows up he wants to be a
|
kid wants to be a talking greeting card when he grows up! Furtherm... Hey!
|
||||||
talking greeting card! Furtherm... Hey! I'm not done! Mumk mpgrlph...]|
|
I'm not done! Mumk mpgrlph...]|
|
||||||
If you're really stuck, you can order a complete map and InvisiClues hint
|
If you're really stuck, you can get an InvisiClues (TM) hint booklet
|
||||||
booklet from your dealer or by using the order form from your package." CR>>
|
and map from your dealer, or by using the order form from your package."
|
||||||
|
CR>>
|
||||||
|
|
||||||
<ROUTINE V-HIDE ()
|
<ROUTINE V-HIDE ()
|
||||||
<TELL ,YOU-CANT "hide ">
|
<TELL ,YOU-CANT "hide ">
|
||||||
|
@ -1124,7 +1148,10 @@ booklet from your dealer or by using the order form from your package." CR>>
|
||||||
<TELL "Your brain is out to launch." CR>>
|
<TELL "Your brain is out to launch." CR>>
|
||||||
|
|
||||||
<ROUTINE V-LEAP ()
|
<ROUTINE V-LEAP ()
|
||||||
<COND (,PRSO
|
<COND (,STUNNED
|
||||||
|
<YOURE-STUNNED "jump">)
|
||||||
|
(<AND ,PRSO
|
||||||
|
<NOT <PRSO? ,ROOMS>>>
|
||||||
<TELL
|
<TELL
|
||||||
"You have spent too much time among the leaping loon-toads of Leonia." CR>)
|
"You have spent too much time among the leaping loon-toads of Leonia." CR>)
|
||||||
(<AND <EQUAL? ,HERE ,CHAPEL>
|
(<AND <EQUAL? ,HERE ,CHAPEL>
|
||||||
|
@ -1133,7 +1160,7 @@ booklet from your dealer or by using the order form from your package." CR>>
|
||||||
"Your best jump still leaves you half a meter short of the star." CR>)
|
"Your best jump still leaves you half a meter short of the star." CR>)
|
||||||
(<EQUAL? ,HERE ,AIR-SHAFT ,TOP-OF-AIR-SHAFT>
|
(<EQUAL? ,HERE ,AIR-SHAFT ,TOP-OF-AIR-SHAFT>
|
||||||
<COND (<EQUAL? ,AIR-SHAFT-LOC 7>
|
<COND (<EQUAL? ,AIR-SHAFT-LOC 7>
|
||||||
,BOTTOM-OF-AIR-SHAFT)
|
<GOTO ,BOTTOM-OF-AIR-SHAFT>)
|
||||||
(T
|
(T
|
||||||
<JIGS-UP "You plummet down the shaft...">)>)
|
<JIGS-UP "You plummet down the shaft...">)>)
|
||||||
(<EQUAL? ,HERE ,BOTTOM-OF-AIR-SHAFT>
|
(<EQUAL? ,HERE ,BOTTOM-OF-AIR-SHAFT>
|
||||||
|
@ -1221,9 +1248,8 @@ booklet from your dealer or by using the order form from your package." CR>>
|
||||||
<RTRUE>)>>
|
<RTRUE>)>>
|
||||||
|
|
||||||
<ROUTINE V-LOOK-INSIDE ()
|
<ROUTINE V-LOOK-INSIDE ()
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
<YOURE-STUNNED>)
|
||||||
<STUNNED>)
|
|
||||||
(<FSET? ,PRSO ,ACTORBIT>
|
(<FSET? ,PRSO ,ACTORBIT>
|
||||||
<TELL ,IT-SEEMS-THAT T ,PRSO " has">
|
<TELL ,IT-SEEMS-THAT T ,PRSO " has">
|
||||||
<COND (<NOT <DESCRIBE-NOTHING>>
|
<COND (<NOT <DESCRIBE-NOTHING>>
|
||||||
|
@ -1274,7 +1300,8 @@ booklet from your dealer or by using the order form from your package." CR>>
|
||||||
|
|
||||||
<ROUTINE V-LOOK-UP ()
|
<ROUTINE V-LOOK-UP ()
|
||||||
<COND (<PRSO? ,ROOMS>
|
<COND (<PRSO? ,ROOMS>
|
||||||
<COND (<EQUAL? ,HERE ,BOTTOM-OF-ELEVATOR-SHAFT>
|
<COND (<EQUAL? ,HERE ,AIR-SHAFT ,BOTTOM-OF-AIR-SHAFT
|
||||||
|
,BOTTOM-OF-ELEVATOR-SHAFT>
|
||||||
<TELL ,ONLY-BLACKNESS>)
|
<TELL ,ONLY-BLACKNESS>)
|
||||||
(T
|
(T
|
||||||
<PERFORM ,V?EXAMINE ,CEILING>
|
<PERFORM ,V?EXAMINE ,CEILING>
|
||||||
|
@ -1405,7 +1432,7 @@ booklet from your dealer or by using the order form from your package." CR>>
|
||||||
<COND (<FSET? ,PRSO ,ACTORBIT>
|
<COND (<FSET? ,PRSO ,ACTORBIT>
|
||||||
<WEE>)
|
<WEE>)
|
||||||
(T
|
(T
|
||||||
<TELL "You're wacko." CR>)>>
|
<IMPOSSIBLES>)>>
|
||||||
|
|
||||||
<ROUTINE V-POINT ()
|
<ROUTINE V-POINT ()
|
||||||
<TELL "That would be pointless." CR>>
|
<TELL "That would be pointless." CR>>
|
||||||
|
@ -1427,7 +1454,8 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<PERFORM ,V?CLOSE ,PRESSER>
|
<PERFORM ,V?CLOSE ,PRESSER>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<DO-FIRST "put it in the presser">)>)
|
<TELL
|
||||||
|
,YOULL-HAVE-TO "put" T ,PRSO " in the presser first." CR>)>)
|
||||||
(T
|
(T
|
||||||
<HACK-HACK "Pushing">)>>
|
<HACK-HACK "Pushing">)>>
|
||||||
|
|
||||||
|
@ -1437,21 +1465,17 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
(T
|
(T
|
||||||
<RECOGNIZE>)>>
|
<RECOGNIZE>)>>
|
||||||
|
|
||||||
<ROUTINE PRE-PUT ()
|
<ROUTINE PRE-PUT ("AUX" IDROP-VALUE)
|
||||||
<COND (<PRSI? ,GROUND>
|
<COND (<PRSI? ,GROUND>
|
||||||
<PERFORM ,V?DROP ,PRSO>
|
<PERFORM ,V?DROP ,PRSO>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<PRSO? ,HANDS>
|
(<PRSO? ,HANDS>
|
||||||
<COND (<AND <VERB? PUT-ON PUT>
|
<PERFORM <COND (<VERB? PUT> ,V?REACH-IN)
|
||||||
<PRSI? ,HANDS ,TONGUE>>
|
(T ,V?TOUCH)>
|
||||||
<RFALSE>)
|
,PRSI>
|
||||||
(<VERB? PUT>
|
<RTRUE>)
|
||||||
<PERFORM ,V?REACH-IN ,PRSI>
|
|
||||||
<RTRUE>)
|
|
||||||
(T
|
|
||||||
<IMPOSSIBLES>)>)
|
|
||||||
(<AND <NOT <PRSI? ,HANDS ,TONGUE>>
|
(<AND <NOT <PRSI? ,HANDS ,TONGUE>>
|
||||||
<PRE-LOOK>>
|
<PRE-LOOK> ;"it's too dark...">
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<IN? ,PRSO ,PRSI>
|
(<IN? ,PRSO ,PRSI>
|
||||||
<TELL "But" T ,PRSO " is already in" TR ,PRSI>)
|
<TELL "But" T ,PRSO " is already in" TR ,PRSI>)
|
||||||
|
@ -1469,8 +1493,8 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<TELL T ,PRSO "!" CR>)
|
<TELL T ,PRSO "!" CR>)
|
||||||
(<UNTOUCHABLE? ,PRSI>
|
(<UNTOUCHABLE? ,PRSI>
|
||||||
<CANT-REACH ,PRSI>)
|
<CANT-REACH ,PRSI>)
|
||||||
(<IDROP>
|
(<SET IDROP-VALUE <IDROP>>
|
||||||
<RTRUE>)>>
|
<RETURN .IDROP-VALUE>)>>
|
||||||
|
|
||||||
<ROUTINE V-PUT ()
|
<ROUTINE V-PUT ()
|
||||||
<COND (<AND <NOT <FSET? ,PRSI ,OPENBIT>>
|
<COND (<AND <NOT <FSET? ,PRSI ,OPENBIT>>
|
||||||
|
@ -1483,7 +1507,7 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<NOT <FSET? ,PRSO ,TAKEBIT>>>>
|
<NOT <FSET? ,PRSO ,TAKEBIT>>>>
|
||||||
<TELL "How can you do that?" CR>)
|
<TELL "How can you do that?" CR>)
|
||||||
(<FSET? ,PRSI ,DOORBIT>
|
(<FSET? ,PRSI ,DOORBIT>
|
||||||
<TELL "You can't do that from here." CR>)
|
<TELL ,YOU-CANT "do that from here." CR>)
|
||||||
(<AND <NOT <FSET? ,PRSI ,OPENBIT>>
|
(<AND <NOT <FSET? ,PRSI ,OPENBIT>>
|
||||||
<NOT <FSET? ,PRSI ,SURFACEBIT>>>
|
<NOT <FSET? ,PRSI ,SURFACEBIT>>>
|
||||||
<THIS-IS-IT ,PRSI>
|
<THIS-IS-IT ,PRSI>
|
||||||
|
@ -1518,6 +1542,9 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
(<OR <FSET? ,PRSI ,SURFACEBIT>
|
(<OR <FSET? ,PRSI ,SURFACEBIT>
|
||||||
<FSET? ,PRSI ,VEHBIT>>
|
<FSET? ,PRSI ,VEHBIT>>
|
||||||
<V-PUT>)
|
<V-PUT>)
|
||||||
|
(<EQUAL? ,P-PRSA-WORD ,W?WRAP>
|
||||||
|
<TELL
|
||||||
|
"Useless. You're getting too wrapped up in this story." CR>)
|
||||||
(T
|
(T
|
||||||
<TELL "There's no good surface on" TR ,PRSI>)>>
|
<TELL "There's no good surface on" TR ,PRSI>)>>
|
||||||
|
|
||||||
|
@ -1571,18 +1598,15 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<ROUTINE V-SAY ("AUX" V)
|
<ROUTINE V-SAY ("AUX" V)
|
||||||
<COND (<AND ,AWAITING-REPLY
|
<COND (<AND ,AWAITING-REPLY
|
||||||
<YES-WORD <GET ,P-LEXV ,P-CONT>>>
|
<YES-WORD <GET ,P-LEXV ,P-CONT>>>
|
||||||
<V-YES>
|
<V-YES>)
|
||||||
<STOP>)
|
|
||||||
(<AND ,AWAITING-REPLY
|
(<AND ,AWAITING-REPLY
|
||||||
<NO-WORD <GET ,P-LEXV ,P-CONT>>>
|
<NO-WORD <GET ,P-LEXV ,P-CONT>>>
|
||||||
<V-NO>
|
<V-NO>)
|
||||||
<STOP>)
|
|
||||||
(<SET V <FIND-IN ,HERE ,ACTORBIT>>
|
(<SET V <FIND-IN ,HERE ,ACTORBIT>>
|
||||||
<TELL "You must address" T .V " directly." CR>
|
<TELL "You must address" T .V " directly." CR>)
|
||||||
<STOP>)
|
|
||||||
(T
|
(T
|
||||||
<PERFORM ,V?TELL ,ME>
|
<PERFORM ,V?TELL ,ME>)>
|
||||||
<STOP>)>>
|
<STOP>>
|
||||||
|
|
||||||
<ROUTINE V-SCARE ()
|
<ROUTINE V-SCARE ()
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1635,8 +1659,7 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
(<NOT <FSET? ,PRSI ,ACTORBIT>>
|
(<NOT <FSET? ,PRSI ,ACTORBIT>>
|
||||||
<TELL "I don't think" T ,PRSI " even has hands." CR>)
|
<TELL "I don't think" T ,PRSI " even has hands." CR>)
|
||||||
(T
|
(T
|
||||||
<PERFORM ,V?THANK ,PRSI>
|
<TELL "\"How do you do.\"" CR>)>>
|
||||||
<RTRUE>)>>
|
|
||||||
|
|
||||||
<ROUTINE PRE-SHOOT ()
|
<ROUTINE PRE-SHOOT ()
|
||||||
<COND (<AND <NOT ,PRSI>
|
<COND (<AND <NOT ,PRSI>
|
||||||
|
@ -1646,8 +1669,7 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<TELL "\"Click.\"" CR>)
|
<TELL "\"Click.\"" CR>)
|
||||||
(T
|
(T
|
||||||
<SETG ZAPGUN-SHOTS <- ,ZAPGUN-SHOTS 1>>
|
<SETG ZAPGUN-SHOTS <- ,ZAPGUN-SHOTS 1>>
|
||||||
<TELL
|
<TELL "Nasty flames spew from the zapgun." CR>)>
|
||||||
"Some nasty flames shoot out the maw of the zapgun." CR>)>
|
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<SETG PRSI ,ZAPGUN>
|
<SETG PRSI ,ZAPGUN>
|
||||||
|
@ -1692,8 +1714,8 @@ of the Galactic Adventure Game Compendium of Rules." CR>>
|
||||||
<SET L <LOC ,PRSO>>
|
<SET L <LOC ,PRSO>>
|
||||||
<COND (<EQUAL? .L ,FLOYD>
|
<COND (<EQUAL? .L ,FLOYD>
|
||||||
<TELL
|
<TELL
|
||||||
" Floyd, who was holding" T ,PRSO " at the time, gives a shriek of fear,
|
" Floyd, who was holding" T ,PRSO ", gives a shriek of fear, and
|
||||||
and all the oil drains from his face.">)
|
all the oil drains from his face.">)
|
||||||
(<NOT <EQUAL? .L ,HERE ,PEDESTAL ,DRILLED-HOLE>>
|
(<NOT <EQUAL? .L ,HERE ,PEDESTAL ,DRILLED-HOLE>>
|
||||||
<TELL
|
<TELL
|
||||||
" Naturally," T .L " is also history, since" T ,PRSO " was sitting ">
|
" Naturally," T .L " is also history, since" T ,PRSO " was sitting ">
|
||||||
|
@ -1746,23 +1768,22 @@ and all the oil drains from his face.">)
|
||||||
<COND (<FSET? ,SPACESUIT ,WORNBIT>
|
<COND (<FSET? ,SPACESUIT ,WORNBIT>
|
||||||
<TELL
|
<TELL
|
||||||
"You smell stale air and rusty metal and unbathed " ,LFC " -- all the
|
"You smell stale air and rusty metal and unbathed " ,LFC " -- all the
|
||||||
usual odors of the inside a space suit." CR>)>>
|
usual odors of a space suit." CR>)>>
|
||||||
|
|
||||||
<ROUTINE V-SMELL ()
|
<ROUTINE V-SMELL ()
|
||||||
<COND (<OR <NOT ,PRSO>
|
<COND (<OR <NOT ,PRSO>
|
||||||
<PRSO? ,AIR>>
|
<PRSO? ,AIR>>
|
||||||
<COND (,BALLOON-ODOR
|
<COND (,BALLOON-ODOR
|
||||||
<TELL
|
<TELL
|
||||||
"The awful odor of the " ,BALLOON "'s digestive gas is thankfully fading." CR>)
|
"The awful odor of the " 'BALLOON "'s digestive gas is thankfully fading." CR>)
|
||||||
(<AND <EQUAL? ,HERE ,GREASY-STRAW>
|
(<AND <EQUAL? ,HERE ,GREASY-STRAW>
|
||||||
<IN? ,NECTAR ,LOCAL-GLOBALS>>
|
<NOT <FSET? ,NECTAR ,TOUCHBIT>>>
|
||||||
<TELL "There's something yum-smelling around here!" CR>)
|
<TELL "There's something yum-smelling around here!" CR>)
|
||||||
(<EQUAL? ,HERE ,OPIUM-DEN>
|
(<EQUAL? ,HERE ,OPIUM-DEN>
|
||||||
<TELL "There's a lingering smell of various drugs." CR>)
|
<TELL "There's a lingering smell of various drugs." CR>)
|
||||||
(<VISIBLE? ,BALLOON>
|
(<VISIBLE? ,BALLOON>
|
||||||
<TELL
|
<PERFORM ,V?SMELL ,BALLOON>
|
||||||
"There's an odor reminiscent of the video room at home on a night when your
|
<RTRUE>)
|
||||||
mom served Northern Gallium Bonzo Beans." CR>)
|
|
||||||
(<AND <EQUAL? ,HERE ,COMMANDERS-QUARTERS>
|
(<AND <EQUAL? ,HERE ,COMMANDERS-QUARTERS>
|
||||||
<FSET? ,SAFE ,OPENBIT>>
|
<FSET? ,SAFE ,OPENBIT>>
|
||||||
<TELL "The odor of an explosion hangs in the air." CR>)
|
<TELL "The odor of an explosion hangs in the air." CR>)
|
||||||
|
@ -1813,6 +1834,8 @@ mom served Northern Gallium Bonzo Beans." CR>)
|
||||||
(<AND ,PRSO
|
(<AND ,PRSO
|
||||||
<FSET? ,PRSO ,TAKEBIT>>
|
<FSET? ,PRSO ,TAKEBIT>>
|
||||||
<WASTES>)
|
<WASTES>)
|
||||||
|
(,STUNNED
|
||||||
|
<YOURE-STUNNED>)
|
||||||
(T
|
(T
|
||||||
<TELL "You're already standing." CR>)>>
|
<TELL "You're already standing." CR>)>>
|
||||||
|
|
||||||
|
@ -1839,9 +1862,8 @@ mom served Northern Gallium Bonzo Beans." CR>)
|
||||||
<RTRUE>>
|
<RTRUE>>
|
||||||
|
|
||||||
<ROUTINE PRE-TAKE ()
|
<ROUTINE PRE-TAKE ()
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
<YOURE-STUNNED "move that much">)
|
||||||
<STUNNED "move that much">)
|
|
||||||
(<UNTOUCHABLE? ,PRSO>
|
(<UNTOUCHABLE? ,PRSO>
|
||||||
<CANT-REACH ,PRSO>)
|
<CANT-REACH ,PRSO>)
|
||||||
(<AND <NOT <PRSI? ,HANDS ,TONGUE>>
|
(<AND <NOT <PRSI? ,HANDS ,TONGUE>>
|
||||||
|
@ -1913,6 +1935,8 @@ mom served Northern Gallium Bonzo Beans." CR>)
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<V-STAND>)>)
|
<V-STAND>)>)
|
||||||
|
(,STUNNED
|
||||||
|
<YOURE-STUNNED>)
|
||||||
(<FSET? ,PRSO ,WORNBIT>
|
(<FSET? ,PRSO ,WORNBIT>
|
||||||
<SETG C-ELAPSED 18>
|
<SETG C-ELAPSED 18>
|
||||||
<FCLEAR ,PRSO ,WORNBIT>
|
<FCLEAR ,PRSO ,WORNBIT>
|
||||||
|
@ -1944,8 +1968,7 @@ mom served Northern Gallium Bonzo Beans." CR>)
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"Hmmm..." T ,PRSO " looks at you expectantly,
|
"Hmmm..." T ,PRSO " looks at you expectantly." CR>)>)
|
||||||
as if you seemed to be about to talk." CR>)>)
|
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"Talking to" A ,PRSO "? Dr. Blanchard, the Duffy's psychiatrist, would
|
"Talking to" A ,PRSO "? Dr. Blanchard, the Duffy's psychiatrist, would
|
||||||
|
@ -2021,10 +2044,9 @@ be fascinated to hear that." CR>
|
||||||
<TELL ,PERIOD-CR>)>>
|
<TELL ,PERIOD-CR>)>>
|
||||||
|
|
||||||
<ROUTINE PRE-TOUCH ("OPTIONAL" (VB T))
|
<ROUTINE PRE-TOUCH ("OPTIONAL" (VB T))
|
||||||
<COND (<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
<COND (,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
|
||||||
<COND (.VB
|
<COND (.VB
|
||||||
<STUNNED "move that much">)>
|
<YOURE-STUNNED "move that much">)>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<UNTOUCHABLE? ,PRSO>
|
(<UNTOUCHABLE? ,PRSO>
|
||||||
<COND (.VB
|
<COND (.VB
|
||||||
|
@ -2049,7 +2071,9 @@ be fascinated to hear that." CR>
|
||||||
<STOP>)>)
|
<STOP>)>)
|
||||||
(<AND ,PRSO
|
(<AND ,PRSO
|
||||||
<PRSO? ,INTNUM>>
|
<PRSO? ,INTNUM>>
|
||||||
<COND (<EQUAL? ,HERE ,ROBOT-POOL>
|
<COND (<NOT ,P-NUMBER> ;"input was TYPE NUMBER"
|
||||||
|
<TELL "[Specify the number! TYPE 7, for example.]" CR>)
|
||||||
|
(<EQUAL? ,HERE ,ROBOT-POOL>
|
||||||
<ROBOT-TYPE>)
|
<ROBOT-TYPE>)
|
||||||
(<EQUAL? ,HERE ,SPACETRUCK>
|
(<EQUAL? ,HERE ,SPACETRUCK>
|
||||||
<SPACETRUCK-TYPE>)
|
<SPACETRUCK-TYPE>)
|
||||||
|
@ -2070,10 +2094,10 @@ be fascinated to hear that." CR>
|
||||||
|
|
||||||
<ROUTINE ROBOT-TYPE ()
|
<ROUTINE ROBOT-TYPE ()
|
||||||
<COND (<NOT <FSET? ,ROBOT-USE-AUTHORIZATION-FORM ,NDESCBIT>>
|
<COND (<NOT <FSET? ,ROBOT-USE-AUTHORIZATION-FORM ,NDESCBIT>>
|
||||||
<RECORDING "Keyboard is only active following authorization">)
|
<RECORDING "Keyboard is active only following authorization">)
|
||||||
(,ROBOT-PICKED
|
(,ROBOT-PICKED
|
||||||
<RECORDING "You have already made your selection">)
|
<RECORDING "You have already made your selection">)
|
||||||
(<G? ,P-NUMBER 10>
|
;(<G? ,P-NUMBER 10>
|
||||||
<TELL "There are only ten keys on the keypad." CR>)
|
<TELL "There are only ten keys on the keypad." CR>)
|
||||||
(<G? ,P-NUMBER 3>
|
(<G? ,P-NUMBER 3>
|
||||||
<RECORDING "That bin is unoccupied">)
|
<RECORDING "That bin is unoccupied">)
|
||||||
|
@ -2100,9 +2124,9 @@ quivering, as though he were about to cry." CR>)>>
|
||||||
|
|
||||||
<ROUTINE SPACETRUCK-TYPE ("AUX" X)
|
<ROUTINE SPACETRUCK-TYPE ("AUX" X)
|
||||||
<COND (<NOT <FSET? ,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM ,NDESCBIT>>
|
<COND (<NOT <FSET? ,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM ,NDESCBIT>>
|
||||||
<RECORDING "Keyboard is only active following authorization">)
|
<RECORDING "Keyboard is active only following authorization">)
|
||||||
(<EQUAL? ,SPACETRUCK-COUNTER 5>
|
(<EQUAL? ,SPACETRUCK-COUNTER 5>
|
||||||
<RECORDING "Fuel levels at zero">)
|
<RECORDING "Fuel level at zero">)
|
||||||
(<NOT <EQUAL? ,COURSE-PICKED 0>>
|
(<NOT <EQUAL? ,COURSE-PICKED 0>>
|
||||||
<RECORDING "You have already made your selection">)
|
<RECORDING "You have already made your selection">)
|
||||||
(<AND <OR <IN? ,PROTAGONIST ,PILOT-SEAT>
|
(<AND <OR <IN? ,PROTAGONIST ,PILOT-SEAT>
|
||||||
|
@ -2110,23 +2134,23 @@ quivering, as though he were about to cry." CR>)>>
|
||||||
<OR <IN? ,PROTAGONIST ,COPILOT-SEAT>
|
<OR <IN? ,PROTAGONIST ,COPILOT-SEAT>
|
||||||
<IN? ,FLOYD ,COPILOT-SEAT>>>
|
<IN? ,FLOYD ,COPILOT-SEAT>>>
|
||||||
<SETG COURSE-PICKED ,P-NUMBER>
|
<SETG COURSE-PICKED ,P-NUMBER>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[P-NUMBER = " N ,P-NUMBER ".]" CR>
|
<TELL "[P-NUMBER = " N ,P-NUMBER ".]" CR>
|
||||||
<TELL "[INTERNAL-MOVES = " N ,INTERNAL-MOVES ".]" CR>)>
|
<TELL "[INTERNAL-MOVES = " N ,INTERNAL-MOVES ".]" CR>)>
|
||||||
<SET X </ ,INTERNAL-MOVES 50>>
|
<SET X </ ,INTERNAL-MOVES 50>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[X = " N .X ".]" CR>)>
|
<TELL "[X = " N .X ".]" CR>)>
|
||||||
<SET X <- .X 132>>
|
<SET X <- .X 132>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[X = " N .X ".]" CR>)>
|
<TELL "[X = " N .X ".]" CR>)>
|
||||||
<SET X <* .X .X>>
|
<SET X <* .X .X>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[X = " N .X ".]" CR>)>
|
<TELL "[X = " N .X ".]" CR>)>
|
||||||
<SET X </ .X 4>>
|
<SET X </ .X 4>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[X = " N .X ".]" CR>)>
|
<TELL "[X = " N .X ".]" CR>)>
|
||||||
<SETG RIGHT-COURSE <+ .X 103>>
|
<SETG RIGHT-COURSE <+ .X 103>>
|
||||||
<COND (,DEBUG
|
;<COND (,DEBUG
|
||||||
<TELL "[RIGHT-COURSE = " N ,RIGHT-COURSE ".]" CR>)>
|
<TELL "[RIGHT-COURSE = " N ,RIGHT-COURSE ".]" CR>)>
|
||||||
<QUEUE I-SPACETRUCK 33>
|
<QUEUE I-SPACETRUCK 33>
|
||||||
<RECORDING
|
<RECORDING
|
||||||
|
@ -2142,9 +2166,8 @@ the pilot and copilot seats are occupied">)>>
|
||||||
<RECORDING "Select a level between 1 and 9">)
|
<RECORDING "Select a level between 1 and 9">)
|
||||||
(<G? ,DAY 2>
|
(<G? ,DAY 2>
|
||||||
<JIGS-UP
|
<JIGS-UP
|
||||||
"The instant you press the button, the elevator begins plunging down the shaft!
|
"The instant you press the button, the elevator begins plunging down the shaft
|
||||||
It's worse than just free-fall; the elevator is actually in a power dive!!!
|
in a power dive! You punch frantically at the keypad...">)
|
||||||
You punch frantically at the keypad...">)
|
|
||||||
(<EQUAL? ,ELEVATOR-LEVEL ,P-NUMBER>
|
(<EQUAL? ,ELEVATOR-LEVEL ,P-NUMBER>
|
||||||
<RECORDING "You are already at that level">)
|
<RECORDING "You are already at that level">)
|
||||||
(<EQUAL? ,P-NUMBER 8 9>
|
(<EQUAL? ,P-NUMBER 8 9>
|
||||||
|
@ -2207,8 +2230,7 @@ the dispenser hole." CR>)
|
||||||
<RECORDING "Error">)
|
<RECORDING "Error">)
|
||||||
(T
|
(T
|
||||||
<RECORDING
|
<RECORDING
|
||||||
"Sorry, that item is sold out. Please contact your PX Officer regarding
|
"Sorry, that item is sold out. Inform your PX Officer for restocking">)>>
|
||||||
restocking of dispenser">)>>
|
|
||||||
|
|
||||||
<ROUTINE RECORDING (STRING)
|
<ROUTINE RECORDING (STRING)
|
||||||
<COND (<PROB 33>
|
<COND (<PROB 33>
|
||||||
|
@ -2276,9 +2298,8 @@ restocking of dispenser">)>>
|
||||||
<COND (<NOT ,P-WALK-DIR>
|
<COND (<NOT ,P-WALK-DIR>
|
||||||
<PERFORM ,V?WALK-TO ,PRSO>
|
<PERFORM ,V?WALK-TO ,PRSO>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<AND <G? ,PLATO-ATTACK-COUNTER 0>
|
(,STUNNED
|
||||||
<IN? ,PLATO ,HERE>>
|
<YOURE-STUNNED "walk">)
|
||||||
<STUNNED "walk">)
|
|
||||||
(<AND <PRSO? ,P?OUT>
|
(<AND <PRSO? ,P?OUT>
|
||||||
<EQUAL? .AV ,SIMULATION-BOOTH ,HOLDING-TANK>>
|
<EQUAL? .AV ,SIMULATION-BOOTH ,HOLDING-TANK>>
|
||||||
<PERFORM ,V?DISEMBARK .AV>
|
<PERFORM ,V?DISEMBARK .AV>
|
||||||
|
@ -2321,47 +2342,49 @@ restocking of dispenser">)>>
|
||||||
<NOT <ULTIMATELY-IN? ,DETONATOR>>>
|
<NOT <ULTIMATELY-IN? ,DETONATOR>>>
|
||||||
<DO-FIRST "disconnect the explosive">)
|
<DO-FIRST "disconnect the explosive">)
|
||||||
(<SET PT <GETPT ,HERE ,PRSO>>
|
(<SET PT <GETPT ,HERE ,PRSO>>
|
||||||
|
<COND (,LIT
|
||||||
|
<SETG C-ELAPSED 22>)
|
||||||
|
(T
|
||||||
|
<SETG C-ELAPSED 33>)>
|
||||||
<COND (<EQUAL? <SET PTS <PTSIZE .PT>> ,UEXIT>
|
<COND (<EQUAL? <SET PTS <PTSIZE .PT>> ,UEXIT>
|
||||||
<SETG C-ELAPSED 22>
|
|
||||||
<GOTO <GETB .PT ,REXIT>>)
|
<GOTO <GETB .PT ,REXIT>>)
|
||||||
(<EQUAL? .PTS ,CEXIT>
|
(<EQUAL? .PTS ,CEXIT>
|
||||||
<COND (<EQUAL? ,HERE ,CASINO>
|
<COND (<EQUAL? ,HERE ,CASINO>
|
||||||
<COND (<VALUE <GETB .PT ,CEXITFLAG>>
|
<COND (<VALUE <GETB .PT ,CEXITFLAG>>
|
||||||
<SETG C-ELAPSED 22>
|
|
||||||
<GOTO <GETB .PT ,REXIT>>)
|
<GOTO <GETB .PT ,REXIT>>)
|
||||||
;(<SET STR <GET .PT ,CEXITSTR>>
|
;(<SET STR <GET .PT ,CEXITSTR>>
|
||||||
<TELL .STR CR>
|
<TELL .STR CR>
|
||||||
<RFATAL>)
|
<RFATAL>)
|
||||||
(T
|
(T
|
||||||
|
<SETG C-ELAPSED 7>
|
||||||
<TELL ,CANT-GO>
|
<TELL ,CANT-GO>
|
||||||
<RFATAL>)>)
|
<RFATAL>)>)
|
||||||
(T ;"kludge for auto-doors"
|
(T ;"kludge for auto-doors"
|
||||||
<SETG C-ELAPSED 22>
|
|
||||||
<COND (<NOT <EQUAL? ,VERBOSITY 0>>
|
<COND (<NOT <EQUAL? ,VERBOSITY 0>>
|
||||||
<DESCRIBE-AUTO-DOOR>)>
|
<DESCRIBE-AUTO-DOOR>)>
|
||||||
<GOTO <GETB .PT ,REXIT>>)>)
|
<GOTO <GETB .PT ,REXIT>>)>)
|
||||||
(<EQUAL? .PTS ,NEXIT>
|
(<EQUAL? .PTS ,NEXIT>
|
||||||
|
<SETG C-ELAPSED 7>
|
||||||
<TELL <GET .PT ,NEXITSTR> CR>
|
<TELL <GET .PT ,NEXITSTR> CR>
|
||||||
<RFATAL>)
|
<RFATAL>)
|
||||||
(<EQUAL? .PTS ,FEXIT>
|
(<EQUAL? .PTS ,FEXIT>
|
||||||
<SETG C-ELAPSED 22>
|
|
||||||
<COND (<SET RM <APPLY <GET .PT ,FEXITFCN>>>
|
<COND (<SET RM <APPLY <GET .PT ,FEXITFCN>>>
|
||||||
<GOTO .RM>)
|
<GOTO .RM>)
|
||||||
|
(<EQUAL? ,HERE ,AIR-SHAFT>
|
||||||
|
<RTRUE>)
|
||||||
(T
|
(T
|
||||||
<COND (<EQUAL? ,HERE ,AIR-SHAFT>
|
<SETG C-ELAPSED 7>
|
||||||
<RTRUE>)
|
<RFATAL>)>)
|
||||||
(T
|
|
||||||
<SETG C-ELAPSED 7>
|
|
||||||
<RFATAL>)>)>)
|
|
||||||
(<EQUAL? .PTS ,DEXIT>
|
(<EQUAL? .PTS ,DEXIT>
|
||||||
<COND (<FSET? <SET OBJ <GETB .PT ,DEXITOBJ>> ,OPENBIT>
|
<COND (<FSET? <SET OBJ <GETB .PT ,DEXITOBJ>> ,OPENBIT>
|
||||||
<SETG C-ELAPSED 22>
|
|
||||||
<GOTO <GETB .PT ,REXIT>>)
|
<GOTO <GETB .PT ,REXIT>>)
|
||||||
(<SET STR <GET .PT ,DEXITSTR>>
|
(<SET STR <GET .PT ,DEXITSTR>>
|
||||||
|
<SETG C-ELAPSED 7>
|
||||||
<THIS-IS-IT .OBJ>
|
<THIS-IS-IT .OBJ>
|
||||||
<TELL .STR CR>
|
<TELL .STR CR>
|
||||||
<RFATAL>)
|
<RFATAL>)
|
||||||
(T
|
(T
|
||||||
|
<SETG C-ELAPSED 7>
|
||||||
<THIS-IS-IT .OBJ>
|
<THIS-IS-IT .OBJ>
|
||||||
<DO-FIRST "open" .OBJ>
|
<DO-FIRST "open" .OBJ>
|
||||||
<RFATAL>)>)>)
|
<RFATAL>)>)>)
|
||||||
|
@ -2472,7 +2495,7 @@ generally the epitome of reliability.">)>)>
|
||||||
<RTRUE>>
|
<RTRUE>>
|
||||||
|
|
||||||
<ROUTINE V-YELL ()
|
<ROUTINE V-YELL ()
|
||||||
<TELL "Aaaarrgghh!" CR>
|
<TELL "Aaaarrrggghhh!" CR>
|
||||||
<COND (<IN? ,OSTRICH ,HERE>
|
<COND (<IN? ,OSTRICH ,HERE>
|
||||||
<TELL " ">
|
<TELL " ">
|
||||||
<PERFORM ,V?SCARE ,OSTRICH>
|
<PERFORM ,V?SCARE ,OSTRICH>
|
||||||
|
@ -2490,10 +2513,10 @@ generally the epitome of reliability.">)>)>
|
||||||
<TELL "That was just a rhetorical question." CR>)
|
<TELL "That was just a rhetorical question." CR>)
|
||||||
(<EQUAL? ,AWAITING-REPLY 2>
|
(<EQUAL? ,AWAITING-REPLY 2>
|
||||||
<TELL
|
<TELL
|
||||||
"\"Floyd changed his mind. These controls are too scary-looking.\"" CR>)
|
"\"Floyd changed his mind. Controls too scary-looking.\"" CR>)
|
||||||
(<EQUAL? ,AWAITING-REPLY 3>
|
(<EQUAL? ,AWAITING-REPLY 3>
|
||||||
<TELL
|
<TELL
|
||||||
"Floyd shrugs. \"Floyd not feel like learning new rules now. Let's play
|
"Floyd shrugs. \"Floyd feels not like learning new rules now. Let's play
|
||||||
tag. Floyd knows rules for tag really well!\"" CR>)
|
tag. Floyd knows rules for tag really well!\"" CR>)
|
||||||
(<EQUAL? ,AWAITING-REPLY 4>
|
(<EQUAL? ,AWAITING-REPLY 4>
|
||||||
<PERFORM ,V?PLAY-WITH ,FLOYD>
|
<PERFORM ,V?PLAY-WITH ,FLOYD>
|
||||||
|
@ -2530,7 +2553,9 @@ tag. Floyd knows rules for tag really well!\"" CR>)
|
||||||
(<PROB <- <* <CCOUNT ,PROTAGONIST> 20> 150>>
|
(<PROB <- <* <CCOUNT ,PROTAGONIST> 20> 150>>
|
||||||
;"holding 8 items, 10%
|
;"holding 8 items, 10%
|
||||||
9 itmes, 30%
|
9 itmes, 30%
|
||||||
|
10 items, 50%
|
||||||
11 items, 70%
|
11 items, 70%
|
||||||
|
12 items, 90%
|
||||||
13 items, 100%"
|
13 items, 100%"
|
||||||
<SET OBJ <FIRST? ,PROTAGONIST>>
|
<SET OBJ <FIRST? ,PROTAGONIST>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
|
@ -2592,7 +2617,10 @@ tag. Floyd knows rules for tag really well!\"" CR>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"That's easy for you to say since you don't even have" TR ,PRSO>)>
|
"That's easy for you to say since you don't even have" TR ,PRSO>)>
|
||||||
<RFATAL>)
|
<COND (,P-MULT
|
||||||
|
<RTRUE>)
|
||||||
|
(T
|
||||||
|
<RFATAL>)>)
|
||||||
(<AND <NOT <IN? ,PRSO ,PROTAGONIST>>
|
(<AND <NOT <IN? ,PRSO ,PROTAGONIST>>
|
||||||
<FSET? <LOC ,PRSO> ,CONTBIT>
|
<FSET? <LOC ,PRSO> ,CONTBIT>
|
||||||
<NOT <FSET? <LOC ,PRSO> ,OPENBIT>>>
|
<NOT <FSET? <LOC ,PRSO> ,OPENBIT>>>
|
||||||
|
@ -2606,6 +2634,7 @@ tag. Floyd knows rules for tag really well!\"" CR>)
|
||||||
<COND (<SET X <FIRST? .OBJ>>
|
<COND (<SET X <FIRST? .OBJ>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
<COND (<NOT <FSET? .X ,WORNBIT>>
|
<COND (<NOT <FSET? .X ,WORNBIT>>
|
||||||
|
;"worn things shouldnt count toward max load"
|
||||||
<SET CNT <+ .CNT 1>>)>
|
<SET CNT <+ .CNT 1>>)>
|
||||||
<COND (<NOT <SET X <NEXT? .X>>>
|
<COND (<NOT <SET X <NEXT? .X>>>
|
||||||
<RETURN>)>>)>
|
<RETURN>)>>)>
|
||||||
|
@ -2615,10 +2644,8 @@ tag. Floyd knows rules for tag really well!\"" CR>)
|
||||||
<ROUTINE WEIGHT (OBJ "AUX" CONT (WT 0))
|
<ROUTINE WEIGHT (OBJ "AUX" CONT (WT 0))
|
||||||
<COND (<SET CONT <FIRST? .OBJ>>
|
<COND (<SET CONT <FIRST? .OBJ>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
<COND (<AND <EQUAL? .OBJ ,PROTAGONIST>
|
<COND (<NOT <FSET? .CONT ,WORNBIT>>
|
||||||
<FSET? .CONT ,WORNBIT>>
|
;"worn things shouldnt count toward max load"
|
||||||
T ;"worn things shouldnt count toward max load")
|
|
||||||
(T
|
|
||||||
<SET WT <+ .WT <WEIGHT .CONT>>>)>
|
<SET WT <+ .WT <WEIGHT .CONT>>>)>
|
||||||
<SET CONT <NEXT? .CONT>>
|
<SET CONT <NEXT? .CONT>>
|
||||||
<COND (<NOT .CONT>
|
<COND (<NOT .CONT>
|
||||||
|
@ -3045,12 +3072,22 @@ a modicum of stability.">)>)>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<AND ,HANGING-IN-AIR
|
(<AND ,HANGING-IN-AIR
|
||||||
<IN? .OBJ ,HERE>>
|
<IN? .OBJ ,HERE>>
|
||||||
<COND (<OR <EQUAL? .OBJ ,BALLOON ,ETERNAL-FLAME>
|
<COND (<OR <EQUAL? .OBJ ,BALLOON ,ETERNAL-FLAME ,LEASH>
|
||||||
<AND <EQUAL? .OBJ ,STAR>
|
<AND <EQUAL? .OBJ ,STAR>
|
||||||
<FSET? .OBJ ,TRYTAKEBIT>>>
|
<FSET? .OBJ ,TRYTAKEBIT>>>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(T
|
(T
|
||||||
<RTRUE>)>)
|
<RTRUE>)>)
|
||||||
|
(<AND <IN? .OBJ ,STAR>
|
||||||
|
<FSET? ,STAR ,TRYTAKEBIT>
|
||||||
|
<NOT ,HANGING-IN-AIR>>
|
||||||
|
<RTRUE>)
|
||||||
|
(<AND <EQUAL? .OBJ ,BALLOON ,LEASH>
|
||||||
|
<IN? .OBJ ,CAGE>>
|
||||||
|
<RTRUE>)
|
||||||
|
(<AND <EQUAL? .OBJ ,FLOYD ,REX ,HELEN>
|
||||||
|
<NOT <EQUAL? .OBJ ,ROBOT-PICKED>>>
|
||||||
|
<RTRUE>)
|
||||||
(<IN? ,PROTAGONIST ,HERE>
|
(<IN? ,PROTAGONIST ,HERE>
|
||||||
<RFALSE>)
|
<RFALSE>)
|
||||||
(<OR <ULTIMATELY-IN? .OBJ <LOC ,PROTAGONIST>>
|
(<OR <ULTIMATELY-IN? .OBJ <LOC ,PROTAGONIST>>
|
||||||
|
@ -3222,7 +3259,7 @@ a modicum of stability.">)>)>
|
||||||
"Fat chance."
|
"Fat chance."
|
||||||
"You are behaving like a demented Denebian slime devil."
|
"You are behaving like a demented Denebian slime devil."
|
||||||
"Dream on."
|
"Dream on."
|
||||||
"It's the looney bin for you!"
|
"You're wacko."
|
||||||
"You have lost your mind.">>
|
"You have lost your mind.">>
|
||||||
|
|
||||||
<ROUTINE WASTES ()
|
<ROUTINE WASTES ()
|
||||||
|
@ -3231,8 +3268,8 @@ a modicum of stability.">)>)>
|
||||||
<GLOBAL WASTE-LIST
|
<GLOBAL WASTE-LIST
|
||||||
<LTABLE 0
|
<LTABLE 0
|
||||||
"A waste of time."
|
"A waste of time."
|
||||||
"A worthless action -- and much too difficult for a poorly-written program
|
"A worthless action -- and much too complex for a crufty program like
|
||||||
like this one to handle."
|
this one to handle."
|
||||||
"Useless. Unhelpful."
|
"Useless. Unhelpful."
|
||||||
"There's another turn down the drain."
|
"There's another turn down the drain."
|
||||||
"Why bother?">>
|
"Why bother?">>
|
371
village.zap
371
village.zap
|
@ -32,9 +32,10 @@
|
||||||
|
|
||||||
.FUNCT IRIS-HATCH-F
|
.FUNCT IRIS-HATCH-F
|
||||||
EQUAL? PRSA,V?CLOSE,V?OPEN \?CCL3
|
EQUAL? PRSA,V?CLOSE,V?OPEN \?CCL3
|
||||||
PRINTR "It won't budge."
|
PRINT WONT-BUDGE
|
||||||
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?EXAMINE \FALSE
|
?CCL3: EQUAL? PRSA,V?EXAMINE \FALSE
|
||||||
PRINTI "The hatch, like the f-stop of a camera, is composed of many pieces which move to form a circular opening of the desired size. This is a common way of joining connecting tubes to ships or stations. "
|
PRINTI "The hatch, like the f-stop of a camera, is composed of many pieces which move to form a circular opening of the desired size. This is a common way of joining connecting tubes to ships or stations. There's a slot next to the hatch. "
|
||||||
RFALSE
|
RFALSE
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,28 +94,6 @@
|
||||||
RFALSE
|
RFALSE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT I-HEADLAMP
|
|
||||||
FSET? HEADLAMP,ONBIT \?CCL3
|
|
||||||
DEC 'HEADLAMP-COUNTER
|
|
||||||
ZERO? HEADLAMP-COUNTER \?CND4
|
|
||||||
FCLEAR HEADLAMP,ACTIVEBIT
|
|
||||||
FCLEAR HEADLAMP,ONBIT
|
|
||||||
?CND4: CALL VISIBLE?,HEADLAMP
|
|
||||||
ZERO? STACK /FALSE
|
|
||||||
EQUAL? HEADLAMP-COUNTER,0,15,30 \FALSE
|
|
||||||
PRINTI " The light from the headlamp "
|
|
||||||
ZERO? HEADLAMP-COUNTER \?CCL13
|
|
||||||
PRINTI "flickers and dies!"
|
|
||||||
CRLF
|
|
||||||
CALL NOW-DARK?
|
|
||||||
RSTACK
|
|
||||||
?CCL13: EQUAL? HEADLAMP-COUNTER,5 \?CCL15
|
|
||||||
PRINTR "is almost out!"
|
|
||||||
?CCL15: PRINTR "seems somewhat dimmer."
|
|
||||||
?CCL3: CALL DEQUEUE,I-HEADLAMP
|
|
||||||
RSTACK
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT BARBERSHOP-F,RARG
|
.FUNCT BARBERSHOP-F,RARG
|
||||||
EQUAL? RARG,M-LOOK \FALSE
|
EQUAL? RARG,M-LOOK \FALSE
|
||||||
PRINTI "You have entered a surprisingly old-fashioned looking tonsorial parlor. "
|
PRINTI "You have entered a surprisingly old-fashioned looking tonsorial parlor. "
|
||||||
|
@ -134,23 +113,26 @@
|
||||||
PRINTR "You look mah-velous."
|
PRINTR "You look mah-velous."
|
||||||
?CCL7: EQUAL? PRSA,V?LOOK-UNDER,V?LOOK-BEHIND \?CCL9
|
?CCL7: EQUAL? PRSA,V?LOOK-UNDER,V?LOOK-BEHIND \?CCL9
|
||||||
PRINTR "The mirror seems to be affixed to the wall."
|
PRINTR "The mirror seems to be affixed to the wall."
|
||||||
?CCL9: EQUAL? PRSA,V?MUNG /?CCL11
|
?CCL9: EQUAL? PRSA,V?KILL,V?KICK,V?MUNG \?CCL11
|
||||||
EQUAL? PRSA,V?THROW \FALSE
|
SET 'MIRROR-BROKEN,TRUE-VALUE
|
||||||
EQUAL? PRSI,PSEUDO-OBJECT \FALSE
|
|
||||||
?CCL11: SET 'MIRROR-BROKEN,TRUE-VALUE
|
|
||||||
MOVE FOIL,HERE
|
MOVE FOIL,HERE
|
||||||
PRINTI "The mirror smashes into a cloud of glass dust, which (fortunately) is quickly sucked away by the barbershop's ventilation system. As the glass is sucked away you discover what gave the mirror its reflectivity: "
|
PRINTI "The mirror smashes into a cloud of glass dust, which (fortunately) is quickly sucked away by the barbershop's ventilation system. As the glass is sucked away you discover what gave the mirror its reflectivity: "
|
||||||
GETP FOIL,P?FDESC
|
GETP FOIL,P?FDESC
|
||||||
PRINT STACK
|
PRINT STACK
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
|
?CCL11: EQUAL? PRSA,V?THROW \FALSE
|
||||||
|
EQUAL? PRSI,PSEUDO-OBJECT \FALSE
|
||||||
|
MOVE PRSO,HERE
|
||||||
|
CALL PERFORM,V?KICK,PSEUDO-OBJECT
|
||||||
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT FOIL-F
|
.FUNCT FOIL-F
|
||||||
EQUAL? PRSA,V?EXAMINE,V?MEASURE \?CCL3
|
EQUAL? PRSA,V?EXAMINE,V?MEASURE \?CCL3
|
||||||
PRINTI "It's a large piece of "
|
PRINTI "It's a large piece of "
|
||||||
PRINTD FOIL
|
PRINTD FOIL
|
||||||
PRINTR ", about six feet on a side."
|
PRINTR ", about two meters on a side."
|
||||||
?CCL3: EQUAL? PRSA,V?CRUMPLE \?CCL5
|
?CCL3: EQUAL? PRSA,V?CRUMPLE \?CCL5
|
||||||
PRINTR "You crumple the foil into a fist-sized wad, but it instantly returns to its wrinkle-free state."
|
PRINTR "You crumple the foil into a fist-sized wad, but it instantly returns to its wrinkle-free state."
|
||||||
?CCL5: EQUAL? PRSA,V?FIND \FALSE
|
?CCL5: EQUAL? PRSA,V?FIND \FALSE
|
||||||
|
@ -220,7 +202,9 @@
|
||||||
?CCL10: EQUAL? PRSA,V?CATCH,V?TAKE \?CCL21
|
?CCL10: EQUAL? PRSA,V?CATCH,V?TAKE \?CCL21
|
||||||
CALL PERFORM,V?TAKE,LEASH
|
CALL PERFORM,V?TAKE,LEASH
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL21: EQUAL? PRSA,V?HUG,V?TOUCH \FALSE
|
?CCL21: EQUAL? PRSA,V?SMELL \?CCL23
|
||||||
|
PRINTR "There's an odor reminiscent of your school dorm on a night when the dining hall served Northern Gallium Bonzo Beans."
|
||||||
|
?CCL23: EQUAL? PRSA,V?HUG,V?TOUCH \FALSE
|
||||||
PRINTI "The "
|
PRINTI "The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTR " purrs and rings of color shimmer along its body."
|
PRINTR " purrs and rings of color shimmer along its body."
|
||||||
|
@ -229,67 +213,60 @@
|
||||||
.FUNCT LEASH-F
|
.FUNCT LEASH-F
|
||||||
EQUAL? PRSA,V?MOVE,V?TAKE \?CCL3
|
EQUAL? PRSA,V?MOVE,V?TAKE \?CCL3
|
||||||
EQUAL? PRSO,LEASH \?CCL3
|
EQUAL? PRSO,LEASH \?CCL3
|
||||||
IN? BALLOON,CAGE \?CCL8
|
ZERO? HANGING-IN-AIR /?CCL8
|
||||||
PRINT YOU-CANT
|
|
||||||
PRINTR "reach the leash inside the cage."
|
|
||||||
?CCL8: ZERO? HANGING-IN-AIR /?CCL10
|
|
||||||
PRINT SENILITY-STRIKES
|
PRINT SENILITY-STRIKES
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL10: FSET? SPACESUIT,WORNBIT \?CCL12
|
?CCL8: FSET? SPACESUIT,WORNBIT \?CCL10
|
||||||
PRINTR "The space suit's glove is a bit too big and clumsy to fit through the loop of the leash. You'll have to remove the suit before grabbing the leash."
|
PRINTR "The space suit's glove is a bit too big and clumsy to fit through the loop of the leash. You'll have to remove the suit before grabbing the leash."
|
||||||
?CCL12: FSET? HERE,WEIGHTLESSBIT \?CCL14
|
?CCL10: FSET? HERE,WEIGHTLESSBIT \?CCL12
|
||||||
PRINTI "The Arcturian tries to ""float"" away from you, but its buoyancy system is useless in zero-gee. As you grasp the leash, it uses its lateral propulsion method in an attempt to get away. In other words, it farts right in your face. In a reflexive maneuver to wave away the odor, you release the leash"
|
PRINTI "The Arcturian tries to ""float"" away from you, but its buoyancy system is useless in zero-gee. As you grasp the leash, it uses its lateral propulsion method in an attempt to get away. In other words, it farts right in your face. In a reflexive maneuver to wave away the odor, you release the leash"
|
||||||
CALL CCOUNT,PROTAGONIST
|
CALL CCOUNT,PROTAGONIST
|
||||||
GRTR? STACK,0 \?CND15
|
GRTR? STACK,0 \?CND13
|
||||||
CALL ROB,PROTAGONIST,HERE
|
CALL ROB,PROTAGONIST,HERE
|
||||||
PRINTI " and drop everything you were holding"
|
PRINTI " and drop everything you were holding"
|
||||||
?CND15: PRINT PERIOD-CR
|
?CND13: PRINT PERIOD-CR
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL14: SET 'HANGING-IN-AIR,TRUE-VALUE
|
?CCL12: SET 'HANGING-IN-AIR,TRUE-VALUE
|
||||||
PRINTI "As you grab the leash, the startled "
|
PRINTI "As you grab the leash, the startled "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTI " tries to get away by hyperinflating. Slowly, its buoyancy lifts you right "
|
PRINTI " tries to get away by hyperinflating. Slowly, its buoyancy lifts you right "
|
||||||
FSET? BOOTS,WORNBIT \?CCL19
|
FSET? BOOTS,WORNBIT \?CCL17
|
||||||
FCLEAR BOOTS,WORNBIT
|
FCLEAR BOOTS,WORNBIT
|
||||||
MOVE BOOTS,HERE
|
MOVE BOOTS,HERE
|
||||||
PRINTI "out of the "
|
PRINTI "out of the "
|
||||||
PRINTD BOOTS
|
PRINTD BOOTS
|
||||||
JUMP ?CND17
|
JUMP ?CND15
|
||||||
?CCL19: PRINTI "off the deck"
|
?CCL17: PRINTI "off the deck"
|
||||||
?CND17: PRINTI "! Within moments, the Arcturian is bobbing against the ceiling, and you're hanging five feet off the floor! (Footnote 4)"
|
?CND15: PRINTI "! Within moments, the Arcturian is bobbing against the ceiling, and you're hanging two meters off the floor! (Footnote 4)"
|
||||||
CRLF
|
CRLF
|
||||||
IN? FLOYD,HERE \TRUE
|
IN? FLOYD,HERE \TRUE
|
||||||
FSET? FLOYD,ACTIVEBIT \TRUE
|
FSET? FLOYD,ACTIVEBIT \TRUE
|
||||||
ZERO? HANGING-COMMENT \TRUE
|
ZERO? HANGING-COMMENT \TRUE
|
||||||
SET 'FLOYD-SPOKE,TRUE-VALUE
|
SET 'FLOYD-SPOKE,TRUE-VALUE
|
||||||
CALL FLOYDS-HANGING-IN-AIR-COMMENT
|
SET 'HANGING-COMMENT,TRUE-VALUE
|
||||||
|
PRINT FLOYDS-HANGING-IN-AIR-COMMENT
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?UNTIE,V?REMOVE \?CCL26
|
?CCL3: EQUAL? PRSA,V?UNTIE,V?REMOVE \?CCL24
|
||||||
PRINTI "There's no obvious way to remove the leash from"
|
PRINTI "There's no obvious way to remove the leash from"
|
||||||
CALL TRPRINT,BALLOON
|
CALL TRPRINT,BALLOON
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL26: EQUAL? PRSA,V?DISCONNECT \?CCL28
|
?CCL24: EQUAL? PRSA,V?DISCONNECT \?CCL26
|
||||||
ZERO? PRSI /?CTR27
|
ZERO? PRSI /?CTR25
|
||||||
EQUAL? PRSI,BALLOON \?CCL28
|
EQUAL? PRSI,BALLOON \?CCL26
|
||||||
?CTR27: CALL PERFORM,V?REMOVE,LEASH
|
?CTR25: CALL PERFORM,V?REMOVE,LEASH
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL28: EQUAL? PRSA,V?DROP \FALSE
|
?CCL26: EQUAL? PRSA,V?DROP \FALSE
|
||||||
ZERO? HANGING-IN-AIR /FALSE
|
ZERO? HANGING-IN-AIR /FALSE
|
||||||
SET 'HANGING-IN-AIR,FALSE-VALUE
|
SET 'HANGING-IN-AIR,FALSE-VALUE
|
||||||
PRINTI "You drop to the deck."
|
PRINTI "You drop to the deck."
|
||||||
IN? BALLOON,HERE \?CND37
|
IN? BALLOON,HERE \?CND35
|
||||||
PRINTI " The "
|
PRINTI " The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTR " gradually floats downward until it's back at around eye-level."
|
PRINTR " gradually floats downward until it's back at around eye-level."
|
||||||
?CND37: CRLF
|
?CND35: CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT FLOYDS-HANGING-IN-AIR-COMMENT
|
|
||||||
SET 'HANGING-COMMENT,TRUE-VALUE
|
|
||||||
PRINTR " ""Boy, that looks like fun!"" says Floyd, peering up at you. ""Can Floyd try it? Huh? Please?"""
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT PANEL-F
|
.FUNCT PANEL-F
|
||||||
EQUAL? PRSA,V?LOWER,V?REMOVE,V?MOVE /?CCL3
|
EQUAL? PRSA,V?LOWER,V?REMOVE,V?MOVE /?CCL3
|
||||||
EQUAL? PRSA,V?LOOK-BEHIND \FALSE
|
EQUAL? PRSA,V?LOOK-BEHIND \FALSE
|
||||||
|
@ -389,27 +366,32 @@
|
||||||
|
|
||||||
.FUNCT DICE-F,NUM,?TMP1
|
.FUNCT DICE-F,NUM,?TMP1
|
||||||
EQUAL? PRSA,V?THROW,V?ROLL \?CCL3
|
EQUAL? PRSA,V?THROW,V?ROLL \?CCL3
|
||||||
FSET? HERE,WEIGHTLESSBIT \?CCL6
|
CALL ULTIMATELY-IN?,DICE
|
||||||
|
ZERO? STACK \?CCL6
|
||||||
|
PRINT YNH
|
||||||
|
CALL TRPRINT,DICE
|
||||||
|
RTRUE
|
||||||
|
?CCL6: FSET? HERE,WEIGHTLESSBIT \?CCL8
|
||||||
RANDOM 100
|
RANDOM 100
|
||||||
LESS? 50,STACK /?CCL9
|
LESS? 50,STACK /?CCL11
|
||||||
SET 'NUM,7
|
SET 'NUM,7
|
||||||
JUMP ?CND4
|
JUMP ?CND4
|
||||||
?CCL9: SET 'NUM,11
|
?CCL11: SET 'NUM,11
|
||||||
JUMP ?CND4
|
JUMP ?CND4
|
||||||
?CCL6: RANDOM 6 >?TMP1
|
?CCL8: RANDOM 6 >?TMP1
|
||||||
RANDOM 6
|
RANDOM 6
|
||||||
ADD ?TMP1,STACK >NUM
|
ADD ?TMP1,STACK >NUM
|
||||||
?CND4: MOVE DICE,HERE
|
?CND4: MOVE DICE,HERE
|
||||||
PRINTI "You roll a"
|
PRINTI "You roll a"
|
||||||
EQUAL? NUM,8,11 \?CND10
|
EQUAL? NUM,8,11 \?CND12
|
||||||
PRINTC 110
|
PRINTC 110
|
||||||
?CND10: PRINTC 32
|
?CND12: PRINTC 32
|
||||||
PRINTN NUM
|
PRINTN NUM
|
||||||
FSET? HERE,WEIGHTLESSBIT \?CND12
|
FSET? HERE,WEIGHTLESSBIT \?CND14
|
||||||
ZERO? DICE-FOOTNOTE \?CND12
|
ZERO? DICE-FOOTNOTE \?CND14
|
||||||
SET 'DICE-FOOTNOTE,TRUE-VALUE
|
SET 'DICE-FOOTNOTE,TRUE-VALUE
|
||||||
PRINTI " (Footnote 1)"
|
PRINTI " (Footnote 1)"
|
||||||
?CND12: PRINT PERIOD-CR
|
?CND14: PRINT PERIOD-CR
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?SHAKE \FALSE
|
?CCL3: EQUAL? PRSA,V?SHAKE \FALSE
|
||||||
PRINTR "Shaken."
|
PRINTR "Shaken."
|
||||||
|
@ -434,7 +416,7 @@
|
||||||
|
|
||||||
|
|
||||||
.FUNCT VACUUM-DEATH
|
.FUNCT VACUUM-DEATH
|
||||||
CALL JIGS-UP,STR?355
|
CALL JIGS-UP,STR?365
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
@ -453,7 +435,7 @@
|
||||||
.FUNCT COUNTER-F
|
.FUNCT COUNTER-F
|
||||||
EQUAL? PRSA,V?SEARCH,V?LOOK-BEHIND,V?LOOK-UNDER /?PRD5
|
EQUAL? PRSA,V?SEARCH,V?LOOK-BEHIND,V?LOOK-UNDER /?PRD5
|
||||||
EQUAL? PRSA,V?HIDE,V?EXAMINE \?CCL3
|
EQUAL? PRSA,V?HIDE,V?EXAMINE \?CCL3
|
||||||
?PRD5: IN? NECTAR,LOCAL-GLOBALS \?CCL3
|
?PRD5: FSET? NECTAR,TOUCHBIT /?CCL3
|
||||||
CALL PERFORM,V?SEARCH,GLOBAL-ROOM
|
CALL PERFORM,V?SEARCH,GLOBAL-ROOM
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?LOOK-OVER \FALSE
|
?CCL3: EQUAL? PRSA,V?LOOK-OVER \FALSE
|
||||||
|
@ -463,14 +445,20 @@
|
||||||
.FUNCT NECTAR-F
|
.FUNCT NECTAR-F
|
||||||
EQUAL? PRSA,V?EMPTY,V?POUR,V?THROW \?CCL3
|
EQUAL? PRSA,V?EMPTY,V?POUR,V?THROW \?CCL3
|
||||||
EQUAL? PRSO,NECTAR \?CCL3
|
EQUAL? PRSO,NECTAR \?CCL3
|
||||||
PRINTI "You create a nectarish mess, which thankfully dries up very quickly"
|
CALL MESS,STR?369
|
||||||
CALL ANTI-LITTER,NECTAR
|
CALL ANTI-LITTER,NECTAR
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL3: EQUAL? PRSA,V?LOOK-INSIDE \?CCL7
|
?CCL3: EQUAL? PRSA,V?LOOK-INSIDE \?CCL7
|
||||||
CALL NOUN-USED,W?CUP,NECTAR
|
CALL NOUN-USED,W?CUP,NECTAR
|
||||||
ZERO? STACK /?CCL7
|
ZERO? STACK /?CCL7
|
||||||
PRINTR "The cup is filled with nectar."
|
PRINTR "Yup. Nectar."
|
||||||
?CCL7: EQUAL? PRSA,V?FIND \FALSE
|
?CCL7: EQUAL? PRSA,V?EXAMINE,V?TOUCH,V?REACH-IN /?CTR10
|
||||||
|
EQUAL? PRSA,V?TASTE \?CCL11
|
||||||
|
?CTR10: PRINTR "The nectar is warm and thick."
|
||||||
|
?CCL11: EQUAL? PRSA,V?EAT-FROM \?CCL15
|
||||||
|
CALL PERFORM,V?EAT,NECTAR
|
||||||
|
RTRUE
|
||||||
|
?CCL15: EQUAL? PRSA,V?FIND \FALSE
|
||||||
IN? NECTAR,LOCAL-GLOBALS \FALSE
|
IN? NECTAR,LOCAL-GLOBALS \FALSE
|
||||||
EQUAL? HERE,GREASY-STRAW \FALSE
|
EQUAL? HERE,GREASY-STRAW \FALSE
|
||||||
CALL PERFORM,V?SEARCH,GLOBAL-ROOM
|
CALL PERFORM,V?SEARCH,GLOBAL-ROOM
|
||||||
|
@ -515,7 +503,7 @@
|
||||||
GRTR? DETECTOR-COUNTER,99 \?CCL12
|
GRTR? DETECTOR-COUNTER,99 \?CCL12
|
||||||
PRINTR "Ouch! The detector is too hot to pick up!"
|
PRINTR "Ouch! The detector is too hot to pick up!"
|
||||||
?CCL12: CALL ITAKE
|
?CCL12: CALL ITAKE
|
||||||
EQUAL? STACK,M-FATAL,FALSE-VALUE /FALSE
|
EQUAL? STACK,M-FATAL,FALSE-VALUE /TRUE
|
||||||
PRINTI "As you pick up the detector, you notice that is feels "
|
PRINTI "As you pick up the detector, you notice that is feels "
|
||||||
GRTR? DETECTOR-COUNTER,75 \?CND15
|
GRTR? DETECTOR-COUNTER,75 \?CND15
|
||||||
PRINTI "very "
|
PRINTI "very "
|
||||||
|
@ -541,30 +529,6 @@
|
||||||
PRINTR "The beeping is strongest as you approach the mirror."
|
PRINTR "The beeping is strongest as you approach the mirror."
|
||||||
|
|
||||||
|
|
||||||
.FUNCT I-PLATINUM-DETECTOR,?TMP1
|
|
||||||
INC 'DETECTOR-COUNTER
|
|
||||||
CALL VISIBLE?,PLATINUM-DETECTOR
|
|
||||||
ZERO? STACK /?CND1
|
|
||||||
CALL META-LOC,FOIL >?TMP1
|
|
||||||
CALL META-LOC,PLATINUM-DETECTOR
|
|
||||||
EQUAL? ?TMP1,STACK /?CCL2
|
|
||||||
CALL ULTIMATELY-IN?,PLATINUM-DETECTOR,BARBERSHOP
|
|
||||||
ZERO? STACK /?CND1
|
|
||||||
ZERO? MIRROR-BROKEN \?CND1
|
|
||||||
?CCL2: PRINTI " The detector is quietly beeping."
|
|
||||||
CRLF
|
|
||||||
?CND1: EQUAL? DETECTOR-COUNTER,50,75 \?CCL11
|
|
||||||
IN? PLATINUM-DETECTOR,PROTAGONIST \?CCL11
|
|
||||||
PRINTI " You notice that the detector is getting "
|
|
||||||
EQUAL? DETECTOR-COUNTER,75 \?CND14
|
|
||||||
PRINTI "very "
|
|
||||||
?CND14: PRINTR "warm."
|
|
||||||
?CCL11: EQUAL? DETECTOR-COUNTER,100 \FALSE
|
|
||||||
IN? PLATINUM-DETECTOR,PROTAGONIST \FALSE
|
|
||||||
MOVE PLATINUM-DETECTOR,HERE
|
|
||||||
PRINTR " Yeow! The detector is now too hot to handle, so you drop it."
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT TRAVEL-AGENCY-POSTER-F
|
.FUNCT TRAVEL-AGENCY-POSTER-F
|
||||||
EQUAL? PRSA,V?EXAMINE,V?READ \FALSE
|
EQUAL? PRSA,V?EXAMINE,V?READ \FALSE
|
||||||
PRINTR "The posters show a sunset on ""Historic Ramos II,"" the steel and zynoid towers of ""Varshon, the Galactic Capital,"" and scantily-clad beauties cavorting on the beaches of ""The Pleasure Moons of Mazzotta."""
|
PRINTR "The posters show a sunset on ""Historic Ramos II,"" the steel and zynoid towers of ""Varshon, the Galactic Capital,"" and scantily-clad beauties cavorting on the beaches of ""The Pleasure Moons of Mazzotta."""
|
||||||
|
@ -582,14 +546,16 @@
|
||||||
EQUAL? PRSA,V?OPEN \FALSE
|
EQUAL? PRSA,V?OPEN \FALSE
|
||||||
FSET? INNER-AIRLOCK-DOOR,OPENBIT /FALSE
|
FSET? INNER-AIRLOCK-DOOR,OPENBIT /FALSE
|
||||||
FSET? OUTER-AIRLOCK-DOOR,OPENBIT \FALSE
|
FSET? OUTER-AIRLOCK-DOOR,OPENBIT \FALSE
|
||||||
PRINTR "It won't budge."
|
PRINT WONT-BUDGE
|
||||||
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT OUTER-AIRLOCK-DOOR-F,X=0,N=0,OBJ-FLUSHED=0,?TMP1
|
.FUNCT OUTER-AIRLOCK-DOOR-F,X=0,N=0,OBJ-FLUSHED=0,?TMP1
|
||||||
EQUAL? PRSA,V?OPEN \?CCL3
|
EQUAL? PRSA,V?OPEN \?CCL3
|
||||||
FSET? OUTER-AIRLOCK-DOOR,OPENBIT /?CCL3
|
FSET? OUTER-AIRLOCK-DOOR,OPENBIT /?CCL3
|
||||||
FSET? INNER-AIRLOCK-DOOR,OPENBIT \?CCL8
|
FSET? INNER-AIRLOCK-DOOR,OPENBIT \?CCL8
|
||||||
PRINTR "It won't budge."
|
PRINT WONT-BUDGE
|
||||||
|
RTRUE
|
||||||
?CCL8: PRINTI "As the door opens, the air in the lock whooshes out into the vacuum of space"
|
?CCL8: PRINTI "As the door opens, the air in the lock whooshes out into the vacuum of space"
|
||||||
FSET? SPACESUIT,WORNBIT /?CCL11
|
FSET? SPACESUIT,WORNBIT /?CCL11
|
||||||
PRINTI ". "
|
PRINTI ". "
|
||||||
|
@ -600,38 +566,41 @@
|
||||||
CALL LOST-IN-SPACE
|
CALL LOST-IN-SPACE
|
||||||
JUMP ?CND9
|
JUMP ?CND9
|
||||||
?CCL13: FSET OUTER-AIRLOCK-DOOR,OPENBIT
|
?CCL13: FSET OUTER-AIRLOCK-DOOR,OPENBIT
|
||||||
FIRST? AIRLOCK >X /?PRG14
|
CALL META-LOC,EXPLOSIVE
|
||||||
?PRG14: ZERO? X /?REP15
|
EQUAL? STACK,HERE \?CND14
|
||||||
NEXT? X >N /?KLU39
|
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
||||||
?KLU39: EQUAL? X,PROTAGONIST,OSTRICH,BALLOON /?CND18
|
?CND14: FIRST? AIRLOCK >X /?PRG16
|
||||||
|
?PRG16: ZERO? X /?REP17
|
||||||
|
NEXT? X >N /?KLU41
|
||||||
|
?KLU41: EQUAL? X,PROTAGONIST,OSTRICH,BALLOON /?CND20
|
||||||
REMOVE X
|
REMOVE X
|
||||||
SET 'OBJ-FLUSHED,TRUE-VALUE
|
SET 'OBJ-FLUSHED,TRUE-VALUE
|
||||||
?CND18: SET 'X,N
|
?CND20: SET 'X,N
|
||||||
JUMP ?PRG14
|
JUMP ?PRG16
|
||||||
?REP15: ZERO? OBJ-FLUSHED /?CND20
|
?REP17: ZERO? OBJ-FLUSHED /?CND22
|
||||||
PRINTI ", flushing everything in the airlock"
|
PRINTI ", flushing everything in the airlock"
|
||||||
?CND20: PRINT PERIOD-CR
|
?CND22: PRINT PERIOD-CR
|
||||||
?CND9: IN? OSTRICH,HERE \?CND22
|
?CND9: IN? OSTRICH,HERE \?CND24
|
||||||
REMOVE OSTRICH
|
REMOVE OSTRICH
|
||||||
PRINT PATHETIC-SQUAWK
|
PRINT PATHETIC-SQUAWK
|
||||||
PRINTI " as it is swept into space, quickly dwindling from sight."
|
PRINTI " as it is swept into space, quickly dwindling from sight."
|
||||||
CRLF
|
CRLF
|
||||||
?CND22: IN? BALLOON,HERE \?CND24
|
?CND24: IN? BALLOON,HERE \?CND26
|
||||||
REMOVE BALLOON
|
REMOVE BALLOON
|
||||||
REMOVE LEASH
|
REMOVE LEASH
|
||||||
PRINTI " The "
|
PRINTI " The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTI ", unable to adjust to the sudden drop in pressure, explodes into a puff of hydrogen that immediately vanishes!"
|
PRINTI ", unable to adjust to the sudden drop in pressure, explodes into a puff of hydrogen that immediately vanishes!"
|
||||||
CRLF
|
CRLF
|
||||||
?CND24: CALL ULTIMATELY-IN?,FOOD-KIT
|
?CND26: CALL ULTIMATELY-IN?,FOOD-KIT
|
||||||
ZERO? STACK /?CND26
|
ZERO? STACK /?CND28
|
||||||
LOC ORANGE-GOO >?TMP1
|
LOC ORANGE-GOO >?TMP1
|
||||||
LOC GRAY-GOO
|
LOC GRAY-GOO
|
||||||
EQUAL? FOOD-KIT,?TMP1,STACK \?CND26
|
EQUAL? FOOD-KIT,?TMP1,STACK \?CND28
|
||||||
FSET? FOOD-KIT,OPENBIT \?CND26
|
FSET? FOOD-KIT,OPENBIT \?CND28
|
||||||
PRINTI " "
|
PRINTI " "
|
||||||
CALL SPACE-FOOD
|
CALL SPACE-FOOD
|
||||||
?CND26: CALL SPACE-LIQUID,SOUP
|
?CND28: CALL SPACE-LIQUID,SOUP
|
||||||
CALL SPACE-LIQUID,COFFEE
|
CALL SPACE-LIQUID,COFFEE
|
||||||
CALL SPACE-LIQUID,NECTAR
|
CALL SPACE-LIQUID,NECTAR
|
||||||
RTRUE
|
RTRUE
|
||||||
|
@ -640,9 +609,9 @@
|
||||||
FSET? OUTER-AIRLOCK-DOOR,OPENBIT \FALSE
|
FSET? OUTER-AIRLOCK-DOOR,OPENBIT \FALSE
|
||||||
FCLEAR OUTER-AIRLOCK-DOOR,OPENBIT
|
FCLEAR OUTER-AIRLOCK-DOOR,OPENBIT
|
||||||
CALL ULTIMATELY-IN?,EXPLOSIVE,HERE
|
CALL ULTIMATELY-IN?,EXPLOSIVE,HERE
|
||||||
ZERO? STACK /?CND36
|
ZERO? STACK /?CND38
|
||||||
CALL QUEUE,I-EXPLOSIVE-MELT,-1
|
CALL QUEUE,I-EXPLOSIVE-MELT,-1
|
||||||
?CND36: PRINTR "As soon as the door is closed, air hisses back into the airlock."
|
?CND38: PRINTR "As soon as the door is closed, air hisses back into the airlock."
|
||||||
|
|
||||||
|
|
||||||
.FUNCT GENERIC-AIRLOCK-DOOR-F
|
.FUNCT GENERIC-AIRLOCK-DOOR-F
|
||||||
|
@ -655,7 +624,7 @@
|
||||||
|
|
||||||
.FUNCT AIRLOCK-F,RARG
|
.FUNCT AIRLOCK-F,RARG
|
||||||
EQUAL? RARG,M-LOOK \FALSE
|
EQUAL? RARG,M-LOOK \FALSE
|
||||||
PRINTI "This is a cramped lock with doors above and below you. "
|
PRINTI "This is a cramped airlock with doors above and below you. "
|
||||||
FSET? INNER-AIRLOCK-DOOR,OPENBIT /?CCL6
|
FSET? INNER-AIRLOCK-DOOR,OPENBIT /?CCL6
|
||||||
FSET? OUTER-AIRLOCK-DOOR,OPENBIT /?CCL6
|
FSET? OUTER-AIRLOCK-DOOR,OPENBIT /?CCL6
|
||||||
PRINTI "Neither door"
|
PRINTI "Neither door"
|
||||||
|
@ -699,12 +668,12 @@
|
||||||
PUSH 0
|
PUSH 0
|
||||||
JUMP ?CND23
|
JUMP ?CND23
|
||||||
?CCL27: PUSH OUTER-AIRLOCK-DOOR
|
?CCL27: PUSH OUTER-AIRLOCK-DOOR
|
||||||
?CND23: CALL PERFORM-PRSA,STACK
|
?CND23: CALL PERFORM,PRSA,STACK
|
||||||
RSTACK
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT LOST-IN-SPACE
|
.FUNCT LOST-IN-SPACE
|
||||||
CALL JIGS-UP,STR?366
|
CALL JIGS-UP,STR?377
|
||||||
RSTACK
|
RSTACK
|
||||||
|
|
||||||
|
|
||||||
|
@ -712,7 +681,7 @@
|
||||||
EQUAL? RARG,M-LOOK \FALSE
|
EQUAL? RARG,M-LOOK \FALSE
|
||||||
PRINTI "This area outside the airlock is being used for vacuum storage, in much the same way that your dad kept beer cold in the back yard during winters on Gallium. In fact, the villagers usually refer to this place as the ""vac yard."" Only the "
|
PRINTI "This area outside the airlock is being used for vacuum storage, in much the same way that your dad kept beer cold in the back yard during winters on Gallium. In fact, the villagers usually refer to this place as the ""vac yard."" Only the "
|
||||||
PRINTD BOOTS
|
PRINTD BOOTS
|
||||||
PRINTI ", clinging to the outer skin of the warehouse, are preventing you from floating off into space. Tethered all around you: those items in the Trading Post's inventory that, for reasons of temperature or anti-corrosion, must be stored here in space. The door to the airlock, ""above"" you, is "
|
PRINTI ", clinging to the outer skin of the warehouse, is preventing you from floating off into space. Tethered all around you: those items in the Trading Post's inventory that, for reasons of temperature or anti-corrosion, must be stored here in space. The door to the airlock, ""above"" you, is "
|
||||||
CALL OPEN-CLOSED,OUTER-AIRLOCK-DOOR
|
CALL OPEN-CLOSED,OUTER-AIRLOCK-DOOR
|
||||||
PRINTC 46
|
PRINTC 46
|
||||||
RTRUE
|
RTRUE
|
||||||
|
@ -730,48 +699,21 @@
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL8: CRLF
|
?CCL8: CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?DISCONNECT \FALSE
|
?CCL3: EQUAL? PRSA,V?PUT \?CCL10
|
||||||
|
EQUAL? PRSI,HEATING-CHAMBER \?CCL10
|
||||||
|
PRINTI "The explosive "
|
||||||
|
PRINT SUBLIMES-INTO-FREZONE
|
||||||
|
CALL DEQUEUE,I-EXPLOSIVE-MELT
|
||||||
|
CALL REMOVE-CAREFULLY,EXPLOSIVE
|
||||||
|
CRLF
|
||||||
|
RTRUE
|
||||||
|
?CCL10: EQUAL? PRSA,V?DISCONNECT \FALSE
|
||||||
ZERO? PRSI \FALSE
|
ZERO? PRSI \FALSE
|
||||||
ZERO? EXPLOSIVE-CONNECTED /FALSE
|
ZERO? EXPLOSIVE-CONNECTED /FALSE
|
||||||
CALL PERFORM,V?DISCONNECT,EXPLOSIVE,DETONATOR
|
CALL PERFORM,V?DISCONNECT,EXPLOSIVE,DETONATOR
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT I-EXPLOSIVE-MELT,OLD-MELT-COUNTER
|
|
||||||
SET 'OLD-MELT-COUNTER,MELT-COUNTER
|
|
||||||
IN? EXPLOSIVE,THERMOS \?CCL3
|
|
||||||
FSET? THERMOS,OPENBIT /?CCL3
|
|
||||||
DIV C-ELAPSED,4
|
|
||||||
JUMP ?CND1
|
|
||||||
?CCL3: PUSH C-ELAPSED
|
|
||||||
?CND1: ADD MELT-COUNTER,STACK >MELT-COUNTER
|
|
||||||
GRTR? MELT-COUNTER,210 \?CCL8
|
|
||||||
CALL VISIBLE?,EXPLOSIVE
|
|
||||||
ZERO? STACK /?CCL11
|
|
||||||
PRINTI " The explosive "
|
|
||||||
PRINT SUBLIMES-INTO-FREZONE
|
|
||||||
CRLF
|
|
||||||
JUMP ?CND9
|
|
||||||
?CCL11: IN? EXPLOSIVE,THERMOS \?CND9
|
|
||||||
FSET? THERMOS,OPENBIT /?CND9
|
|
||||||
SET 'THERMOS-FILLED-WITH-GAS,TRUE-VALUE
|
|
||||||
?CND9: CALL REMOVE-CAREFULLY,EXPLOSIVE
|
|
||||||
RSTACK
|
|
||||||
?CCL8: CALL VISIBLE?,EXPLOSIVE
|
|
||||||
ZERO? STACK /FALSE
|
|
||||||
ZERO? LIT /FALSE
|
|
||||||
GRTR? MELT-COUNTER,170 \?CCL21
|
|
||||||
GRTR? OLD-MELT-COUNTER,170 /?CCL21
|
|
||||||
PRINTI " "
|
|
||||||
CALL DESCRIBE-EXPLOSIVE
|
|
||||||
RSTACK
|
|
||||||
?CCL21: GRTR? MELT-COUNTER,130 \FALSE
|
|
||||||
GRTR? OLD-MELT-COUNTER,130 /FALSE
|
|
||||||
PRINTI " "
|
|
||||||
CALL DESCRIBE-EXPLOSIVE
|
|
||||||
RSTACK
|
|
||||||
|
|
||||||
|
|
||||||
.FUNCT DESCRIBE-EXPLOSIVE
|
.FUNCT DESCRIBE-EXPLOSIVE
|
||||||
PRINTI " The explosive "
|
PRINTI " The explosive "
|
||||||
GRTR? MELT-COUNTER,170 \?CCL3
|
GRTR? MELT-COUNTER,170 \?CCL3
|
||||||
|
@ -793,57 +735,62 @@
|
||||||
A mixture of high-quality spores
|
A mixture of high-quality spores
|
||||||
Lowest gas-inducement levels of any brand!"""
|
Lowest gas-inducement levels of any brand!"""
|
||||||
?CCL8: EQUAL? PRSA,V?SPRAY \FALSE
|
?CCL8: EQUAL? PRSA,V?SPRAY \FALSE
|
||||||
ZERO? PRSI /?CCL13
|
CALL ULTIMATELY-IN?,SPRAY-CAN
|
||||||
PRINTR "The nozzle of the can isn't very directional; rather than spraying the can on something in particular, it seems to be more designed to simply produce a broad mist."
|
ZERO? STACK \?CCL13
|
||||||
?CCL13: ZERO? SPRAY-COUNTER \?CCL15
|
PRINT YNH
|
||||||
|
CALL TRPRINT,SPRAY-CAN
|
||||||
|
RTRUE
|
||||||
|
?CCL13: ZERO? PRSI /?CCL15
|
||||||
|
PRINTR "The nozzle of the can isn't very directional; rather than spraying something in particular, it seems designed to produce a broad mist."
|
||||||
|
?CCL15: ZERO? SPRAY-COUNTER \?CND11
|
||||||
PRINT NOTHING-HAPPENS
|
PRINT NOTHING-HAPPENS
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL15: DEC 'SPRAY-COUNTER
|
?CND11: DEC 'SPRAY-COUNTER
|
||||||
PRINTI "A dusty mist puffs from the can and begins dissipating"
|
PRINTI "A dusty mist puffs from the can and begins dissipating"
|
||||||
IN? BALLOON,HERE \?CCL18
|
IN? BALLOON,HERE \?CCL19
|
||||||
PRINTI ". The "
|
PRINTI ". The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTI " begins darting around the room, its mouth absurdly wide open"
|
PRINTI " begins darting around the room, its mouth absurdly wide open"
|
||||||
JUMP ?CND16
|
JUMP ?CND17
|
||||||
?CCL18: EQUAL? HERE,PET-STORE \?CCL20
|
?CCL19: EQUAL? HERE,PET-STORE \?CCL21
|
||||||
IN? BALLOON,CAGE \?CCL20
|
IN? BALLOON,CAGE \?CCL21
|
||||||
PRINTI ". The "
|
PRINTI ". The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTI " puffs wildly around the cage, trying to get at the yummy spores"
|
PRINTI " puffs wildly around the cage, trying to get at the yummy spores"
|
||||||
JUMP ?CND16
|
JUMP ?CND17
|
||||||
?CCL20: CALL NEXT-ROOM?,BALLOON
|
?CCL21: CALL NEXT-ROOM?,BALLOON
|
||||||
ZERO? STACK /?CND16
|
ZERO? STACK /?CND17
|
||||||
EQUAL? HERE,BRIG,ARMORY /?CND16
|
EQUAL? HERE,BRIG,ARMORY /?CND17
|
||||||
PRINTI ". The "
|
PRINTI ". The "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
EQUAL? HERE,CHAPEL \?CCL28
|
EQUAL? HERE,CHAPEL \?CCL29
|
||||||
FSET? ETERNAL-FLAME,ONBIT \?CCL28
|
FSET? ETERNAL-FLAME,ONBIT \?CCL29
|
||||||
PRINTR " appears in the doorway, stops, and hastily puffs away."
|
PRINTR " appears in the doorway, stops, and hastily puffs away."
|
||||||
?CCL28: PRINTI " farts in, hungrily gobbling up the spores"
|
?CCL29: PRINTI " farts in, hungrily gobbling up the spores"
|
||||||
ZERO? CROSSED-BOUNDARY \?CCL32
|
ZERO? CROSSED-BOUNDARY \?CCL33
|
||||||
IN? BALLOON,ELEVATOR /?CCL32
|
IN? BALLOON,ELEVATOR /?CCL33
|
||||||
EQUAL? HERE,ELEVATOR \?CND31
|
EQUAL? HERE,ELEVATOR \?CND32
|
||||||
?CCL32: PRINTI ". As the "
|
?CCL33: PRINTI ". As the "
|
||||||
PRINTD BALLOON
|
PRINTD BALLOON
|
||||||
PRINTI " crosses the boundary "
|
PRINTI " crosses the boundary "
|
||||||
ZERO? CROSSED-BOUNDARY /?CCL38
|
ZERO? CROSSED-BOUNDARY /?CCL39
|
||||||
PRINTI "between the Command Module and the village"
|
PRINTI "between the Command Module and the village"
|
||||||
JUMP ?CND36
|
JUMP ?CND37
|
||||||
?CCL38: PRINTI "of the "
|
?CCL39: PRINTI "of the "
|
||||||
PRINTD ELEVATOR-SHAFT
|
PRINTD ELEVATOR-SHAFT
|
||||||
?CND36: PRINTI ", it is caught unawares by the sudden "
|
?CND37: PRINTI ", it is caught unawares by the sudden "
|
||||||
EQUAL? CROSSED-BOUNDARY,1 /?CTR40
|
EQUAL? CROSSED-BOUNDARY,1 /?CTR41
|
||||||
EQUAL? HERE,ELEVATOR \?CCL41
|
EQUAL? HERE,ELEVATOR \?CCL42
|
||||||
?CTR40: PRINTI "lack of gravity, but soon"
|
?CTR41: PRINTI "lack of gravity, but soon"
|
||||||
JUMP ?CND39
|
JUMP ?CND40
|
||||||
?CCL41: PRINTI "presence of gravity. It sinks almost to the floor before it"
|
?CCL42: PRINTI "presence of gravity. It sinks almost to the floor before it"
|
||||||
?CND39: PRINTI " adjusts"
|
?CND40: PRINTI " adjusts"
|
||||||
?CND31: MOVE BALLOON,HERE
|
?CND32: MOVE BALLOON,HERE
|
||||||
MOVE LEASH,HERE
|
MOVE LEASH,HERE
|
||||||
SET 'CROSSED-BOUNDARY,0
|
SET 'CROSSED-BOUNDARY,0
|
||||||
?CND16: ZERO? HANGING-IN-AIR /?CND44
|
?CND17: ZERO? HANGING-IN-AIR /?CND45
|
||||||
PRINTI ". Like an epileptic yo-yo, you are flung against the ceiling, floor, and most of the walls"
|
PRINTI ". Like an epileptic yo-yo, you are flung against the ceiling, floor, and most of the walls"
|
||||||
?CND44: PRINT PERIOD-CR
|
?CND45: PRINT PERIOD-CR
|
||||||
RTRUE
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
|
@ -946,7 +893,7 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
EQUAL? PRSI,PSEUDO-OBJECT \?CCL3
|
EQUAL? PRSI,PSEUDO-OBJECT \?CCL3
|
||||||
GETP PRSO,P?SIZE
|
GETP PRSO,P?SIZE
|
||||||
GRTR? STACK,5 \?CCL8
|
GRTR? STACK,5 \?CCL8
|
||||||
CALL DOESNT-FIT,STR?249
|
CALL DOESNT-FIT,STR?257
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL8: PRINTI "With a ""fwoomp!"""
|
?CCL8: PRINTI "With a ""fwoomp!"""
|
||||||
CALL TPRINT-PRSO
|
CALL TPRINT-PRSO
|
||||||
|
@ -965,14 +912,14 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
|
|
||||||
.FUNCT OSTRICH-F
|
.FUNCT OSTRICH-F
|
||||||
EQUAL? PRSA,V?EXAMINE \?CCL3
|
EQUAL? PRSA,V?EXAMINE \?CCL3
|
||||||
PRINTI "It's a handsome, full-grown ostrich, nearly eight feet tall. As with all ostriches, half its height is its neck"
|
PRINTI "It's a handsome, full-grown ostrich, nearly three meters tall. As with all ostriches, half its height is its neck"
|
||||||
FSET? OSTRICH,TOUCHBIT /?CND4
|
FSET? OSTRICH,TOUCHBIT /?CND4
|
||||||
PRINTI ". The ostrich looks to be asleep, or unconscious, or drunk"
|
PRINTI ". The ostrich looks to be asleep, or unconscious, or drunk"
|
||||||
?CND4: PRINT PERIOD-CR
|
?CND4: PRINT PERIOD-CR
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL3: EQUAL? PRSA,V?SHOOT \?CCL7
|
?CCL3: EQUAL? PRSA,V?SHOOT \?CCL7
|
||||||
REMOVE OSTRICH
|
REMOVE OSTRICH
|
||||||
PRINTR "The ostrich gives the last of a generous lifetime's supply of squawks before being consumed in fiery raygun death."
|
PRINTR "The ostrich gives the last of a generous lifetime's supply of squawks before being consumed in fiery zapgun death."
|
||||||
?CCL7: FSET? OSTRICH,TOUCHBIT /?CCL9
|
?CCL7: FSET? OSTRICH,TOUCHBIT /?CCL9
|
||||||
EQUAL? PRSA,V?SCARE \?CCL12
|
EQUAL? PRSA,V?SCARE \?CCL12
|
||||||
PRINTR "The ostrich is unconscious!"
|
PRINTR "The ostrich is unconscious!"
|
||||||
|
@ -1005,18 +952,21 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
?CCL31: PRINTI "The ostrich emits a terrified squawk and sticks its head "
|
?CCL31: PRINTI "The ostrich emits a terrified squawk and sticks its head "
|
||||||
EQUAL? HERE,DOC-SCHUSTER \?CCL38
|
EQUAL? HERE,DOC-SCHUSTER \?CCL38
|
||||||
PRINTI "into the disposal hole"
|
PRINTI "into the disposal hole"
|
||||||
|
ZERO? OSTRICH-FOOTNOTE \?CND36
|
||||||
|
SET 'OSTRICH-FOOTNOTE,TRUE-VALUE
|
||||||
|
PRINTI " (Footnote 14)"
|
||||||
JUMP ?CND36
|
JUMP ?CND36
|
||||||
?CCL38: EQUAL? HERE,PX \?CCL40
|
?CCL38: EQUAL? HERE,PX \?CCL42
|
||||||
IN? DISPENSER,HERE \?CCL40
|
IN? DISPENSER,HERE \?CCL42
|
||||||
PRINTI "into the dispenser hole."
|
PRINTI "into the dispenser hole."
|
||||||
CALL OSTRICH-INTO-DISPENSER
|
CALL OSTRICH-INTO-DISPENSER
|
||||||
CRLF
|
CRLF
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL40: IN? HEATING-CHAMBER,HERE \?CCL44
|
?CCL42: IN? HEATING-CHAMBER,HERE \?CCL46
|
||||||
PRINTI "into the "
|
PRINTI "into the "
|
||||||
PRINTD HEATING-CHAMBER
|
PRINTD HEATING-CHAMBER
|
||||||
PRINTR ". After a quick singe, it jerks its head out, squawking in pain."
|
PRINTR ". After a quick singe, it jerks its head out, squawking in pain."
|
||||||
?CCL44: PRINTI "under its wing"
|
?CCL46: PRINTI "under its wing"
|
||||||
?CND36: PRINTR " for a moment."
|
?CND36: PRINTR " for a moment."
|
||||||
|
|
||||||
|
|
||||||
|
@ -1033,12 +983,12 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL3: EQUAL? PRSA,V?REACH-IN,V?LOOK-INSIDE \?CCL5
|
?CCL3: EQUAL? PRSA,V?REACH-IN,V?LOOK-INSIDE \?CCL5
|
||||||
EQUAL? PRSO,PSEUDO-OBJECT \?CCL5
|
EQUAL? PRSO,PSEUDO-OBJECT \?CCL5
|
||||||
CALL PERFORM-PRSA,ID-CHANGER,PRSI
|
CALL PERFORM,PRSA,ID-CHANGER,PRSI
|
||||||
RSTACK
|
RTRUE
|
||||||
?CCL5: EQUAL? PRSA,V?PUT \FALSE
|
?CCL5: EQUAL? PRSA,V?PUT \FALSE
|
||||||
EQUAL? PRSI,PSEUDO-OBJECT \FALSE
|
EQUAL? PRSI,PSEUDO-OBJECT \FALSE
|
||||||
CALL PERFORM-PRSA,PRSO,ID-CHANGER
|
CALL PERFORM,PRSA,PRSO,ID-CHANGER
|
||||||
RSTACK
|
RTRUE
|
||||||
|
|
||||||
|
|
||||||
.FUNCT ID-CHANGER-F
|
.FUNCT ID-CHANGER-F
|
||||||
|
@ -1054,7 +1004,8 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
PRINT HUH
|
PRINT HUH
|
||||||
RTRUE
|
RTRUE
|
||||||
?CCL8: EQUAL? PRSA,V?TAKE \?CCL10
|
?CCL8: EQUAL? PRSA,V?TAKE \?CCL10
|
||||||
PRINTR "It's bolted down."
|
PRINT WONT-BUDGE
|
||||||
|
RTRUE
|
||||||
?CCL10: EQUAL? PRSA,V?PUT \?CCL12
|
?CCL10: EQUAL? PRSA,V?PUT \?CCL12
|
||||||
EQUAL? PRSI,ID-CHANGER \?CCL12
|
EQUAL? PRSI,ID-CHANGER \?CCL12
|
||||||
EQUAL? PRSO,ID-CARD \?CCL17
|
EQUAL? PRSO,ID-CARD \?CCL17
|
||||||
|
@ -1062,7 +1013,12 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
FSET? ID-CHANGER,ACTIVEBIT \?CCL20
|
FSET? ID-CHANGER,ACTIVEBIT \?CCL20
|
||||||
PRINTI "A voice from the machine says, """
|
PRINTI "A voice from the machine says, """
|
||||||
ZERO? ID-SCRAMBLED /?CCL23
|
ZERO? ID-SCRAMBLED /?CCL23
|
||||||
PRINTR "Magnetic card data is scrambled; unable to read."""
|
PRINTI "Magnetic card data is scrambled; unable to read."""
|
||||||
|
ZERO? SCRAMBLED-FOOTNOTE \?CND24
|
||||||
|
SET 'SCRAMBLED-FOOTNOTE,TRUE-VALUE
|
||||||
|
PRINTR " (Footnote 15)"
|
||||||
|
?CND24: CRLF
|
||||||
|
RTRUE
|
||||||
?CCL23: PRINTI "Current rank is "
|
?CCL23: PRINTI "Current rank is "
|
||||||
PRINTN ID-RANK
|
PRINTN ID-RANK
|
||||||
PRINTI ": "
|
PRINTI ": "
|
||||||
|
@ -1071,7 +1027,7 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
PRINT STACK
|
PRINT STACK
|
||||||
PRINTR ". Enter new rank on keypad."""
|
PRINTR ". Enter new rank on keypad."""
|
||||||
?CCL20: PRINTR "The card fits neatly into the opening."
|
?CCL20: PRINTR "The card fits neatly into the opening."
|
||||||
?CCL17: CALL DOESNT-FIT,STR?378
|
?CCL17: CALL DOESNT-FIT,STR?389
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL12: EQUAL? PRSA,V?ON \FALSE
|
?CCL12: EQUAL? PRSA,V?ON \FALSE
|
||||||
FSET? ID-CHANGER,ACTIVEBIT /FALSE
|
FSET? ID-CHANGER,ACTIVEBIT /FALSE
|
||||||
|
@ -1087,15 +1043,18 @@ Lowest gas-inducement levels of any brand!"""
|
||||||
IN? ID-CARD,ID-CHANGER \?CCL3
|
IN? ID-CARD,ID-CHANGER \?CCL3
|
||||||
FSET? ID-CHANGER,ACTIVEBIT \?CCL3
|
FSET? ID-CHANGER,ACTIVEBIT \?CCL3
|
||||||
ZERO? ID-SCRAMBLED /?CCL8
|
ZERO? ID-SCRAMBLED /?CCL8
|
||||||
CALL RECORDING,STR?379
|
ZERO? SCRAMBLED-FOOTNOTE \?CND9
|
||||||
|
SET 'SCRAMBLED-FOOTNOTE,TRUE-VALUE
|
||||||
|
PRINTI "(Footnote 15) "
|
||||||
|
?CND9: CALL RECORDING,STR?390
|
||||||
RSTACK
|
RSTACK
|
||||||
?CCL8: GRTR? P-NUMBER,10 \?CCL10
|
?CCL8: GRTR? P-NUMBER,10 \?CCL12
|
||||||
PRINTI """Error!"" chirps the "
|
PRINTI """Error!"" chirps the "
|
||||||
PRINTD ID-CHANGER
|
PRINTD ID-CHANGER
|
||||||
PRINTR ". ""The highest rank number recognized by the Stellar Patrol is 10."""
|
PRINTR ". ""The highest rank number recognized by the Stellar Patrol is 10."""
|
||||||
?CCL10: LESS? P-NUMBER,1 \?CCL12
|
?CCL12: LESS? P-NUMBER,1 \?CCL14
|
||||||
PRINTR "You may DESERVE a rank that low, but unfortunately it doesn't exist."
|
PRINTR "You may DESERVE a rank that low, but unfortunately it doesn't exist."
|
||||||
?CCL12: SET 'ID-RANK,P-NUMBER
|
?CCL14: SET 'ID-RANK,P-NUMBER
|
||||||
PRINTI """New rank is "
|
PRINTI """New rank is "
|
||||||
PRINTN ID-RANK
|
PRINTN ID-RANK
|
||||||
PRINTI ": "
|
PRINTI ": "
|
||||||
|
|
346
village.zil
346
village.zil
|
@ -41,12 +41,12 @@ the station's artificial gravity ">
|
||||||
|
|
||||||
<ROUTINE IRIS-HATCH-F ()
|
<ROUTINE IRIS-HATCH-F ()
|
||||||
<COND (<VERB? OPEN CLOSE>
|
<COND (<VERB? OPEN CLOSE>
|
||||||
<TELL "It won't budge." CR>)
|
<TELL ,WONT-BUDGE>)
|
||||||
(<VERB? EXAMINE>
|
(<VERB? EXAMINE>
|
||||||
<TELL
|
<TELL
|
||||||
"The hatch, like the f-stop of a camera, is composed of many pieces which
|
"The hatch, like the f-stop of a camera, is composed of many pieces which move
|
||||||
move to form a circular opening of the desired size. This is a common way
|
to form a circular opening of the desired size. This is a common way of joining
|
||||||
of joining connecting tubes to ships or stations. ">
|
connecting tubes to ships or stations. There's a slot next to the hatch. ">
|
||||||
<RFALSE>)>>
|
<RFALSE>)>>
|
||||||
|
|
||||||
<ROOM MAKESHIFT-CONNECTOR
|
<ROOM MAKESHIFT-CONNECTOR
|
||||||
|
@ -58,7 +58,7 @@ from the Command Module.")
|
||||||
(WEST PER VILLAGE-BOUNDARY-F)
|
(WEST PER VILLAGE-BOUNDARY-F)
|
||||||
(EAST TO BROADWAY)
|
(EAST TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL IRIS-HATCH)>
|
(GLOBAL IRIS-HATCH VILLAGE)>
|
||||||
|
|
||||||
<ROOM BROADWAY
|
<ROOM BROADWAY
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -76,7 +76,8 @@ including one leading downward.")
|
||||||
(WEST TO MAKESHIFT-CONNECTOR)
|
(WEST TO MAKESHIFT-CONNECTOR)
|
||||||
(NW "Well, there are openings in ALMOST every direction.")
|
(NW "Well, there are openings in ALMOST every direction.")
|
||||||
(DOWN TO FORTUNE-TELLER)
|
(DOWN TO FORTUNE-TELLER)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<ROOM FORTUNE-TELLER
|
<ROOM FORTUNE-TELLER
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -84,10 +85,11 @@ including one leading downward.")
|
||||||
(LDESC
|
(LDESC
|
||||||
"This is a tiny living bubble beneath Broadway. The inhabitant, who is
|
"This is a tiny living bubble beneath Broadway. The inhabitant, who is
|
||||||
nowhere in sight, seems to be in the profession of reading the future
|
nowhere in sight, seems to be in the profession of reading the future
|
||||||
for superstitious spacemen.")
|
for superstitious spacers.")
|
||||||
(UP TO BROADWAY)
|
(UP TO BROADWAY)
|
||||||
(OUT TO BROADWAY)
|
(OUT TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT CRYSTAL-BALL
|
<OBJECT CRYSTAL-BALL
|
||||||
(IN FORTUNE-TELLER)
|
(IN FORTUNE-TELLER)
|
||||||
|
@ -117,6 +119,7 @@ the walls. A door leads south.")
|
||||||
(SOUTH TO BROADWAY)
|
(SOUTH TO BROADWAY)
|
||||||
(OUT TO BROADWAY)
|
(OUT TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(THINGS <PSEUDO (<> POSTER RECRUITMENT-POSTER-F)>)>
|
(THINGS <PSEUDO (<> POSTER RECRUITMENT-POSTER-F)>)>
|
||||||
|
|
||||||
<ROUTINE RECRUITMENT-POSTER-F ()
|
<ROUTINE RECRUITMENT-POSTER-F ()
|
||||||
|
@ -147,7 +150,8 @@ materials. There is also an in-house rec area, featuring a group of simulation
|
||||||
booths. The \"street\" lies to the southwest.")
|
booths. The \"street\" lies to the southwest.")
|
||||||
(SW TO BROADWAY)
|
(SW TO BROADWAY)
|
||||||
(OUT TO BROADWAY)
|
(OUT TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT SIMULATION-BOOTH
|
<OBJECT SIMULATION-BOOTH
|
||||||
(IN REC-SHOP)
|
(IN REC-SHOP)
|
||||||
|
@ -187,7 +191,7 @@ booths. The \"street\" lies to the southwest.")
|
||||||
"groof hunting on Septurion Seven"
|
"groof hunting on Septurion Seven"
|
||||||
"a little-known incident during the signing of the Treaty of Gishen IV"
|
"a little-known incident during the signing of the Treaty of Gishen IV"
|
||||||
"a torrid romance on the tropical planet of San Cupidor"
|
"a torrid romance on the tropical planet of San Cupidor"
|
||||||
"searching for treasure in a magical underground kingdom"
|
"searching for treasure in a magical underground empire"
|
||||||
"bullfighting, skydiving, and dental hygiene">>
|
"bullfighting, skydiving, and dental hygiene">>
|
||||||
|
|
||||||
<ROOM FIELD-OFFICE
|
<ROOM FIELD-OFFICE
|
||||||
|
@ -200,7 +204,8 @@ hunk of space rock into the vicinity, and then come here to sell the rights
|
||||||
to it. You can leave to the west.")
|
to it. You can leave to the west.")
|
||||||
(WEST TO BROADWAY)
|
(WEST TO BROADWAY)
|
||||||
(OUT TO BROADWAY)
|
(OUT TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT HEADLAMP
|
<OBJECT HEADLAMP
|
||||||
(IN FIELD-OFFICE)
|
(IN FIELD-OFFICE)
|
||||||
|
@ -208,6 +213,7 @@ to it. You can leave to the west.")
|
||||||
(FDESC "Some miner has left a headlamp here.")
|
(FDESC "Some miner has left a headlamp here.")
|
||||||
(SYNONYM LAMP LIGHT HEADLAMP)
|
(SYNONYM LAMP LIGHT HEADLAMP)
|
||||||
(FLAGS TAKEBIT LIGHTBIT WEARBIT)
|
(FLAGS TAKEBIT LIGHTBIT WEARBIT)
|
||||||
|
(SIZE 8)
|
||||||
(ACTION HEADLAMP-F)>
|
(ACTION HEADLAMP-F)>
|
||||||
|
|
||||||
<ROUTINE HEADLAMP-F ()
|
<ROUTINE HEADLAMP-F ()
|
||||||
|
@ -233,24 +239,7 @@ leaving both hands free for work. ">
|
||||||
|
|
||||||
<GLOBAL HEADLAMP-COUNTER 92>
|
<GLOBAL HEADLAMP-COUNTER 92>
|
||||||
|
|
||||||
<ROUTINE I-HEADLAMP ()
|
;"routine I-HEADLAMP moved to INTERRUPTS file"
|
||||||
<COND (<FSET? ,HEADLAMP ,ONBIT>
|
|
||||||
<SETG HEADLAMP-COUNTER <- ,HEADLAMP-COUNTER 1>>
|
|
||||||
<COND (<EQUAL? ,HEADLAMP-COUNTER 0>
|
|
||||||
<FCLEAR ,HEADLAMP ,ACTIVEBIT>
|
|
||||||
<FCLEAR ,HEADLAMP ,ONBIT>)>
|
|
||||||
<COND (<AND <VISIBLE? ,HEADLAMP>
|
|
||||||
<EQUAL? ,HEADLAMP-COUNTER 0 15 30>>
|
|
||||||
<TELL " The light from the headlamp ">
|
|
||||||
<COND (<EQUAL? ,HEADLAMP-COUNTER 0>
|
|
||||||
<TELL "flickers and dies!" CR>
|
|
||||||
<NOW-DARK?>)
|
|
||||||
(<EQUAL? ,HEADLAMP-COUNTER 5>
|
|
||||||
<TELL "is almost out!" CR>)
|
|
||||||
(T
|
|
||||||
<TELL "seems somewhat dimmer." CR>)>)>)
|
|
||||||
(T
|
|
||||||
<DEQUEUE I-HEADLAMP>)>>
|
|
||||||
|
|
||||||
<ROOM BARBERSHOP
|
<ROOM BARBERSHOP
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -258,6 +247,7 @@ leaving both hands free for work. ">
|
||||||
(WEST TO GROCERY)
|
(WEST TO GROCERY)
|
||||||
(NW TO BROADWAY)
|
(NW TO BROADWAY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(ACTION BARBERSHOP-F)
|
(ACTION BARBERSHOP-F)
|
||||||
(THINGS <PSEUDO (GLASS MIRROR MIRROR-F)>)>
|
(THINGS <PSEUDO (GLASS MIRROR MIRROR-F)>)>
|
||||||
|
|
||||||
|
@ -284,16 +274,19 @@ barber isn't here, though. Doors lead northwest and west.">)>>
|
||||||
<TELL "You look mah-velous." CR>)
|
<TELL "You look mah-velous." CR>)
|
||||||
(<VERB? LOOK-BEHIND LOOK-UNDER>
|
(<VERB? LOOK-BEHIND LOOK-UNDER>
|
||||||
<TELL "The mirror seems to be affixed to the wall." CR>)
|
<TELL "The mirror seems to be affixed to the wall." CR>)
|
||||||
(<OR <VERB? MUNG>
|
(<VERB? MUNG KICK KILL>
|
||||||
<AND <VERB? THROW>
|
|
||||||
<PRSI? ,PSEUDO-OBJECT>>>
|
|
||||||
<SETG MIRROR-BROKEN T>
|
<SETG MIRROR-BROKEN T>
|
||||||
<MOVE ,FOIL ,HERE>
|
<MOVE ,FOIL ,HERE>
|
||||||
<TELL
|
<TELL
|
||||||
"The mirror smashes into a cloud of glass dust, which (fortunately) is
|
"The mirror smashes into a cloud of glass dust, which (fortunately) is
|
||||||
quickly sucked away by the barbershop's ventilation system. As the glass
|
quickly sucked away by the barbershop's ventilation system. As the glass
|
||||||
is sucked away you discover what gave the mirror its reflectivity: "
|
is sucked away you discover what gave the mirror its reflectivity: "
|
||||||
<GETP ,FOIL ,P?FDESC> CR>)>>
|
<GETP ,FOIL ,P?FDESC> CR>)
|
||||||
|
(<AND <VERB? THROW>
|
||||||
|
<PRSI? ,PSEUDO-OBJECT>>
|
||||||
|
<MOVE ,PRSO ,HERE>
|
||||||
|
<PERFORM ,V?KICK ,PSEUDO-OBJECT>
|
||||||
|
<RTRUE>)>>
|
||||||
|
|
||||||
<OBJECT FOIL
|
<OBJECT FOIL
|
||||||
(DESC "reflective foil")
|
(DESC "reflective foil")
|
||||||
|
@ -304,7 +297,7 @@ is sucked away you discover what gave the mirror its reflectivity: "
|
||||||
(FLAGS TAKEBIT NARTICLEBIT)
|
(FLAGS TAKEBIT NARTICLEBIT)
|
||||||
(PLATO-ASK-ABOUT
|
(PLATO-ASK-ABOUT
|
||||||
"Trans-molecular platinum foil! I am told that it is the most perfectly
|
"Trans-molecular platinum foil! I am told that it is the most perfectly
|
||||||
reflective material known to man, and not just on the visual wavelengths!")
|
reflective material known, and not just on the visual wavelengths!")
|
||||||
(FLOYD-ASK-ABOUT
|
(FLOYD-ASK-ABOUT
|
||||||
"Floyd loves anything reflective! Give Floyd a mirror and he'll be happy
|
"Floyd loves anything reflective! Give Floyd a mirror and he'll be happy
|
||||||
for days!")
|
for days!")
|
||||||
|
@ -314,7 +307,7 @@ for days!")
|
||||||
<ROUTINE FOIL-F ()
|
<ROUTINE FOIL-F ()
|
||||||
<COND (<VERB? MEASURE EXAMINE>
|
<COND (<VERB? MEASURE EXAMINE>
|
||||||
<TELL
|
<TELL
|
||||||
"It's a large piece of " 'FOIL ", about six feet on a side." CR>)
|
"It's a large piece of " 'FOIL ", about two meters on a side." CR>)
|
||||||
(<VERB? CRUMPLE>
|
(<VERB? CRUMPLE>
|
||||||
<TELL
|
<TELL
|
||||||
"You crumple the foil into a fist-sized wad, but it instantly returns to
|
"You crumple the foil into a fist-sized wad, but it instantly returns to
|
||||||
|
@ -339,7 +332,8 @@ Exits lead north, east, southeast and south.")
|
||||||
(EAST TO BARBERSHOP)
|
(EAST TO BARBERSHOP)
|
||||||
(SE TO SALOON)
|
(SE TO SALOON)
|
||||||
(SOUTH TO TRADING-POST)
|
(SOUTH TO TRADING-POST)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT PLASTIC-BAG
|
<OBJECT PLASTIC-BAG
|
||||||
(IN GROCERY)
|
(IN GROCERY)
|
||||||
|
@ -349,6 +343,7 @@ Exits lead north, east, southeast and south.")
|
||||||
(SYNONYM BAG)
|
(SYNONYM BAG)
|
||||||
(ADJECTIVE SMALL TRANSL PLASTIC)
|
(ADJECTIVE SMALL TRANSL PLASTIC)
|
||||||
(CAPACITY 10)
|
(CAPACITY 10)
|
||||||
|
(SIZE 4)
|
||||||
(FLAGS TAKEBIT CONTBIT SEARCHBIT)>
|
(FLAGS TAKEBIT CONTBIT SEARCHBIT)>
|
||||||
|
|
||||||
<OBJECT TAFFY
|
<OBJECT TAFFY
|
||||||
|
@ -378,7 +373,7 @@ large sign advertises this month's special.")
|
||||||
(NE TO BROADWAY)
|
(NE TO BROADWAY)
|
||||||
(SE TO TRADING-POST)
|
(SE TO TRADING-POST)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL SIGN)>
|
(GLOBAL VILLAGE SIGN)>
|
||||||
|
|
||||||
<OBJECT CAGE
|
<OBJECT CAGE
|
||||||
(IN PET-STORE)
|
(IN PET-STORE)
|
||||||
|
@ -449,6 +444,10 @@ of its digestive gas." CR>)>)
|
||||||
(<VERB? TAKE CATCH>
|
(<VERB? TAKE CATCH>
|
||||||
<PERFORM ,V?TAKE ,LEASH>
|
<PERFORM ,V?TAKE ,LEASH>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
|
(<VERB? SMELL>
|
||||||
|
<TELL
|
||||||
|
"There's an odor reminiscent of your school dorm on a night when the dining
|
||||||
|
hall served Northern Gallium Bonzo Beans." CR>)
|
||||||
(<VERB? TOUCH HUG>
|
(<VERB? TOUCH HUG>
|
||||||
<TELL
|
<TELL
|
||||||
"The " D ,BALLOON " purrs and rings of color shimmer along its body." CR>)>>
|
"The " D ,BALLOON " purrs and rings of color shimmer along its body." CR>)>>
|
||||||
|
@ -467,9 +466,7 @@ of its digestive gas." CR>)>)
|
||||||
<ROUTINE LEASH-F ()
|
<ROUTINE LEASH-F ()
|
||||||
<COND (<AND <VERB? TAKE MOVE>
|
<COND (<AND <VERB? TAKE MOVE>
|
||||||
<PRSO? ,LEASH>>
|
<PRSO? ,LEASH>>
|
||||||
<COND (<IN? ,BALLOON ,CAGE>
|
<COND (,HANGING-IN-AIR
|
||||||
<TELL ,YOU-CANT "reach the leash inside the cage." CR>)
|
|
||||||
(,HANGING-IN-AIR
|
|
||||||
<TELL ,SENILITY-STRIKES>)
|
<TELL ,SENILITY-STRIKES>)
|
||||||
(<FSET? ,SPACESUIT ,WORNBIT>
|
(<FSET? ,SPACESUIT ,WORNBIT>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -498,12 +495,13 @@ hyperinflating. Slowly, its buoyancy lifts you right ">
|
||||||
<TELL "off the deck">)>
|
<TELL "off the deck">)>
|
||||||
<TELL
|
<TELL
|
||||||
"! Within moments, the Arcturian is bobbing against the ceiling, and you're
|
"! Within moments, the Arcturian is bobbing against the ceiling, and you're
|
||||||
hanging five feet off the floor! (Footnote 4)" CR>
|
hanging two meters off the floor! (Footnote 4)" CR>
|
||||||
<COND (<AND <IN? ,FLOYD ,HERE>
|
<COND (<AND <IN? ,FLOYD ,HERE>
|
||||||
<FSET? ,FLOYD ,ACTIVEBIT>
|
<FSET? ,FLOYD ,ACTIVEBIT>
|
||||||
<NOT ,HANGING-COMMENT>>
|
<NOT ,HANGING-COMMENT>>
|
||||||
<SETG FLOYD-SPOKE T>
|
<SETG FLOYD-SPOKE T>
|
||||||
<FLOYDS-HANGING-IN-AIR-COMMENT>)>
|
<SETG HANGING-COMMENT T>
|
||||||
|
<TELL ,FLOYDS-HANGING-IN-AIR-COMMENT>)>
|
||||||
<RTRUE>)>)
|
<RTRUE>)>)
|
||||||
(<VERB? REMOVE UNTIE>
|
(<VERB? REMOVE UNTIE>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -523,13 +521,8 @@ hanging five feet off the floor! (Footnote 4)" CR>
|
||||||
back at around eye-level.">)>
|
back at around eye-level.">)>
|
||||||
<CRLF>)>>
|
<CRLF>)>>
|
||||||
|
|
||||||
<ROUTINE FLOYDS-HANGING-IN-AIR-COMMENT ()
|
|
||||||
<SETG HANGING-COMMENT T>
|
|
||||||
<TELL
|
|
||||||
" \"Boy, that looks like fun!\" says Floyd, peering up at you.
|
|
||||||
\"Can Floyd try it? Huh? Please?\"" CR>>
|
|
||||||
|
|
||||||
<OBJECT PANEL
|
<OBJECT PANEL
|
||||||
|
(IN LOCAL-GLOBALS)
|
||||||
(DESC "ceiling panel")
|
(DESC "ceiling panel")
|
||||||
(FDESC ;"so it'll get printed before other DESCs"
|
(FDESC ;"so it'll get printed before other DESCs"
|
||||||
"You can see the faint outline of a panel in the ceiling.")
|
"You can see the faint outline of a panel in the ceiling.")
|
||||||
|
@ -551,6 +544,7 @@ back at around eye-level.">)>
|
||||||
(ADJECTIVE OSTRICH)
|
(ADJECTIVE OSTRICH)
|
||||||
(FLAGS TAKEBIT)
|
(FLAGS TAKEBIT)
|
||||||
(VALUE 3)
|
(VALUE 3)
|
||||||
|
(SIZE 4)
|
||||||
(ACTION OSTRICH-NIP-F)>
|
(ACTION OSTRICH-NIP-F)>
|
||||||
|
|
||||||
<ROUTINE OSTRICH-NIP-F ()
|
<ROUTINE OSTRICH-NIP-F ()
|
||||||
|
@ -576,7 +570,7 @@ there's an opening in the floor.")
|
||||||
(NW TO PET-STORE)
|
(NW TO PET-STORE)
|
||||||
(DOWN TO WAREHOUSE)
|
(DOWN TO WAREHOUSE)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL SIGN)>
|
(GLOBAL VILLAGE SIGN)>
|
||||||
|
|
||||||
<OBJECT INSTRUCTION-SHEET
|
<OBJECT INSTRUCTION-SHEET
|
||||||
(IN TRADING-POST)
|
(IN TRADING-POST)
|
||||||
|
@ -584,7 +578,7 @@ there's an opening in the floor.")
|
||||||
(SYNONYM SHEET)
|
(SYNONYM SHEET)
|
||||||
(ADJECTIVE INSTRUCTION)
|
(ADJECTIVE INSTRUCTION)
|
||||||
(FLAGS TAKEBIT READBIT VOWELBIT)
|
(FLAGS TAKEBIT READBIT VOWELBIT)
|
||||||
(SIZE 2)
|
(SIZE 1)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"FREZONE (tm) Liquid Gorzium Explosive|
|
"\"FREZONE (tm) Liquid Gorzium Explosive|
|
||||||
Instructions for use:|
|
Instructions for use:|
|
||||||
|
@ -593,13 +587,13 @@ Instructions for use:|
|
||||||
3. Set timer.|
|
3. Set timer.|
|
||||||
4. Vamoose.|
|
4. Vamoose.|
|
||||||
NOTE: Do not expose explosive to temperatures above
|
NOTE: Do not expose explosive to temperatures above
|
||||||
150 degrees Kelvin for period of more than 100 millichrons.\"")>
|
150 degrees Kelvin for periods of more than 100 millichrons.\"")>
|
||||||
|
|
||||||
<OBJECT TWELVE-PRONG-FROMITZ-BOARD
|
<OBJECT TWELVE-PRONG-FROMITZ-BOARD
|
||||||
(IN TRADING-POST)
|
(IN TRADING-POST)
|
||||||
(DESC "twelve-prong fromitz board")
|
(DESC "twelve-prong fromitz board")
|
||||||
(SYNONYM BOARD BOARDS PRONGS)
|
(SYNONYM BOARD BOARDS PRONGS)
|
||||||
(ADJECTIVE TWELVE PRONG 12-PRONG FROMITZ NUMBER)
|
(ADJECTIVE TWELVE PRONG PRONGED 12-PRONG FROMITZ NUMBER)
|
||||||
(FLAGS TAKEBIT)
|
(FLAGS TAKEBIT)
|
||||||
(PLATO-ASK-ABOUT
|
(PLATO-ASK-ABOUT
|
||||||
"I'm really not at all mechanically inclined. My sincerest apologies.")
|
"I'm really not at all mechanically inclined. My sincerest apologies.")
|
||||||
|
@ -629,6 +623,7 @@ completion. The way out is to the east.")
|
||||||
(EAST TO TRADING-POST)
|
(EAST TO TRADING-POST)
|
||||||
(OUT TO TRADING-POST)
|
(OUT TO TRADING-POST)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(ACTION STUDIO-F)>
|
(ACTION STUDIO-F)>
|
||||||
|
|
||||||
<ROUTINE STUDIO-F (RARG)
|
<ROUTINE STUDIO-F (RARG)
|
||||||
|
@ -652,7 +647,6 @@ a 91st-century-style scrap sculpture" ,ELLIPSIS>)>>
|
||||||
"I'm really not at all mechanically inclined. My sincerest apologies.")
|
"I'm really not at all mechanically inclined. My sincerest apologies.")
|
||||||
(FLOYD-ASK-ABOUT
|
(FLOYD-ASK-ABOUT
|
||||||
"It's a kind of a thingamabob for connecting a, you know, a whosiwhatsis.")
|
"It's a kind of a thingamabob for connecting a, you know, a whosiwhatsis.")
|
||||||
(SIZE 5)
|
|
||||||
(FLAGS TAKEBIT)
|
(FLAGS TAKEBIT)
|
||||||
(ACTION DIODE-J-F)>
|
(ACTION DIODE-J-F)>
|
||||||
|
|
||||||
|
@ -691,7 +685,8 @@ to the east is a partially disguised exit.")
|
||||||
(EAST TO CASINO)
|
(EAST TO CASINO)
|
||||||
(WEST TO TRADING-POST)
|
(WEST TO TRADING-POST)
|
||||||
(NW TO GROCERY)
|
(NW TO GROCERY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<ROOM CASINO
|
<ROOM CASINO
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -700,6 +695,7 @@ to the east is a partially disguised exit.")
|
||||||
(WEST TO SALOON)
|
(WEST TO SALOON)
|
||||||
(UP TO FLOPHOUSE IF ROULETTE-TURNED)
|
(UP TO FLOPHOUSE IF ROULETTE-TURNED)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(ACTION CASINO-F)>
|
(ACTION CASINO-F)>
|
||||||
|
|
||||||
<GLOBAL ROULETTE-TURNED <>>
|
<GLOBAL ROULETTE-TURNED <>>
|
||||||
|
@ -750,14 +746,17 @@ and to the north!" CR>)>)
|
||||||
(DESC "pair of dice")
|
(DESC "pair of dice")
|
||||||
(SYNONYM PAIR DICE)
|
(SYNONYM PAIR DICE)
|
||||||
(FLAGS TAKEBIT PLURALBIT)
|
(FLAGS TAKEBIT PLURALBIT)
|
||||||
(SIZE 2)
|
(SIZE 3)
|
||||||
(ACTION DICE-F)>
|
(ACTION DICE-F)>
|
||||||
|
|
||||||
<GLOBAL DICE-FOOTNOTE <>>
|
<GLOBAL DICE-FOOTNOTE <>>
|
||||||
|
|
||||||
<ROUTINE DICE-F ("AUX" NUM)
|
<ROUTINE DICE-F ("AUX" NUM)
|
||||||
<COND (<VERB? ROLL THROW>
|
<COND (<VERB? ROLL THROW>
|
||||||
<COND (<FSET? ,HERE ,WEIGHTLESSBIT>
|
<COND (<NOT <ULTIMATELY-IN? ,DICE>>
|
||||||
|
<TELL ,YNH TR ,DICE>
|
||||||
|
<RTRUE>)
|
||||||
|
(<FSET? ,HERE ,WEIGHTLESSBIT>
|
||||||
<COND (<PROB 50>
|
<COND (<PROB 50>
|
||||||
<SET NUM 7>)
|
<SET NUM 7>)
|
||||||
(T
|
(T
|
||||||
|
@ -785,7 +784,7 @@ and to the north!" CR>)>)
|
||||||
There's a sign on the wall and a door to the south.")
|
There's a sign on the wall and a door to the south.")
|
||||||
(SOUTH TO CASINO)
|
(SOUTH TO CASINO)
|
||||||
(OUT TO CASINO)
|
(OUT TO CASINO)
|
||||||
(GLOBAL SIGN)
|
(GLOBAL VILLAGE SIGN)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
||||||
|
|
||||||
<ROOM FLOPHOUSE
|
<ROOM FLOPHOUSE
|
||||||
|
@ -794,7 +793,7 @@ There's a sign on the wall and a door to the south.")
|
||||||
(DOWN TO CASINO)
|
(DOWN TO CASINO)
|
||||||
(OUT TO CASINO)
|
(OUT TO CASINO)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
(GLOBAL BED)
|
(GLOBAL VILLAGE BED)
|
||||||
(ACTION FLOPHOUSE-F)>
|
(ACTION FLOPHOUSE-F)>
|
||||||
|
|
||||||
<ROUTINE FLOPHOUSE-F (RARG)
|
<ROUTINE FLOPHOUSE-F (RARG)
|
||||||
|
@ -843,7 +842,7 @@ well-scrubbed metal of the space station.")
|
||||||
(NORTH PER VILLAGE-BOUNDARY-F)
|
(NORTH PER VILLAGE-BOUNDARY-F)
|
||||||
(SOUTH TO MAIN-STREET)
|
(SOUTH TO MAIN-STREET)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL IRIS-HATCH)>
|
(GLOBAL VILLAGE IRIS-HATCH)>
|
||||||
|
|
||||||
<ROOM MAIN-STREET
|
<ROOM MAIN-STREET
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -861,7 +860,8 @@ the \"street\" narrows and ramps downward.")
|
||||||
(WEST TO TRAVEL-AGENCY)
|
(WEST TO TRAVEL-AGENCY)
|
||||||
(UP TO MAYORS-OFFICE)
|
(UP TO MAYORS-OFFICE)
|
||||||
(DOWN TO ALLEY)
|
(DOWN TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<ROOM GREASY-STRAW
|
<ROOM GREASY-STRAW
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -869,7 +869,7 @@ the \"street\" narrows and ramps downward.")
|
||||||
(NE TO TRADING-POST)
|
(NE TO TRADING-POST)
|
||||||
(SW TO MAIN-STREET)
|
(SW TO MAIN-STREET)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL SIGN)
|
(GLOBAL SIGN VILLAGE)
|
||||||
(ACTION GREASY-STRAW-F)>
|
(ACTION GREASY-STRAW-F)>
|
||||||
|
|
||||||
<ROUTINE GREASY-STRAW-F (RARG)
|
<ROUTINE GREASY-STRAW-F (RARG)
|
||||||
|
@ -892,7 +892,7 @@ Exits lead northeast and southwest.">)>>
|
||||||
|
|
||||||
<ROUTINE COUNTER-F ()
|
<ROUTINE COUNTER-F ()
|
||||||
<COND (<AND <VERB? LOOK-UNDER LOOK-BEHIND SEARCH EXAMINE HIDE>
|
<COND (<AND <VERB? LOOK-UNDER LOOK-BEHIND SEARCH EXAMINE HIDE>
|
||||||
<IN? ,NECTAR ,LOCAL-GLOBALS>>
|
<NOT <FSET? ,NECTAR ,TOUCHBIT>>>
|
||||||
<PERFORM ,V?SEARCH ,GLOBAL-ROOM>
|
<PERFORM ,V?SEARCH ,GLOBAL-ROOM>
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<VERB? LOOK-OVER>
|
(<VERB? LOOK-OVER>
|
||||||
|
@ -904,19 +904,23 @@ Exits lead northeast and southwest.">)>>
|
||||||
(SYNONYM CUP NECTAR FOOD)
|
(SYNONYM CUP NECTAR FOOD)
|
||||||
(ADJECTIVE RAMOSIAN FIRE)
|
(ADJECTIVE RAMOSIAN FIRE)
|
||||||
(FLAGS TAKEBIT)
|
(FLAGS TAKEBIT)
|
||||||
(FOOD-DESC " fire nectar - thick and warming")
|
(FOOD-DESC " fire nectar -- thick and warming")
|
||||||
(GENERIC GENERIC-FOOD-F)
|
(GENERIC GENERIC-FOOD-F)
|
||||||
(ACTION NECTAR-F)>
|
(ACTION NECTAR-F)>
|
||||||
|
|
||||||
<ROUTINE NECTAR-F ()
|
<ROUTINE NECTAR-F ()
|
||||||
<COND (<AND <VERB? THROW POUR EMPTY>
|
<COND (<AND <VERB? THROW POUR EMPTY>
|
||||||
<PRSO? ,NECTAR>>
|
<PRSO? ,NECTAR>>
|
||||||
<TELL
|
<MESS "nectar">
|
||||||
"You create a nectarish mess, which thankfully dries up very quickly">
|
|
||||||
<ANTI-LITTER ,NECTAR>)
|
<ANTI-LITTER ,NECTAR>)
|
||||||
(<AND <VERB? LOOK-INSIDE>
|
(<AND <VERB? LOOK-INSIDE>
|
||||||
<NOUN-USED ,W?CUP ,NECTAR>>
|
<NOUN-USED ,W?CUP ,NECTAR>>
|
||||||
<TELL "The cup is filled with nectar." CR>)
|
<TELL "Yup. Nectar." CR>)
|
||||||
|
(<VERB? REACH-IN TOUCH EXAMINE TASTE>
|
||||||
|
<TELL "The nectar is warm and thick." CR>)
|
||||||
|
(<VERB? EAT-FROM>
|
||||||
|
<PERFORM ,V?EAT ,NECTAR>
|
||||||
|
<RTRUE>)
|
||||||
(<AND <VERB? FIND>
|
(<AND <VERB? FIND>
|
||||||
<IN? ,NECTAR ,LOCAL-GLOBALS>
|
<IN? ,NECTAR ,LOCAL-GLOBALS>
|
||||||
<EQUAL? ,HERE ,GREASY-STRAW>>
|
<EQUAL? ,HERE ,GREASY-STRAW>>
|
||||||
|
@ -937,7 +941,8 @@ Exits lead northeast and southwest.">)>>
|
||||||
Mayor, the unofficial leader of the village. Main Street is below.")
|
Mayor, the unofficial leader of the village. Main Street is below.")
|
||||||
(DOWN TO MAIN-STREET)
|
(DOWN TO MAIN-STREET)
|
||||||
(OUT TO MAIN-STREET)
|
(OUT TO MAIN-STREET)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT BOOK
|
<OBJECT BOOK
|
||||||
(IN MAYORS-OFFICE)
|
(IN MAYORS-OFFICE)
|
||||||
|
@ -947,6 +952,7 @@ Mayor, the unofficial leader of the village. Main Street is below.")
|
||||||
(SYNONYM TEXTBOOK BOOK)
|
(SYNONYM TEXTBOOK BOOK)
|
||||||
(ADJECTIVE TEXT)
|
(ADJECTIVE TEXT)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
|
(SIZE 8)
|
||||||
(ACTION BOOK-F)>
|
(ACTION BOOK-F)>
|
||||||
|
|
||||||
<ROUTINE BOOK-F ()
|
<ROUTINE BOOK-F ()
|
||||||
|
@ -971,9 +977,33 @@ of the subject." CR>)>)
|
||||||
(DESC "piece of paper")
|
(DESC "piece of paper")
|
||||||
(SYNONYM PAPER PIECE)
|
(SYNONYM PAPER PIECE)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
(SIZE 2)
|
(SIZE 1)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"(bitter/salty/bitter) softness/weakness|
|
"\"bttr/salty/bttr softness/weakness|
|
||||||
|
sweet/v.sour Hunji (noun form)|
|
||||||
|
blnd/salty/sour Zeenak (adj form)|
|
||||||
|
blnd/bttr air/atmosphere|
|
||||||
|
sour/blnd/blnd/sour died/failed|
|
||||||
|
sweet/v.sweet legal destruction|
|
||||||
|
(sabotage?)|
|
||||||
|
v.salty however|
|
||||||
|
sour/blnd/sour/sweet turn back|
|
||||||
|
blnd (def. article?)|
|
||||||
|
v.sweet/blnd/sour I have shined|
|
||||||
|
light upon|
|
||||||
|
slightly-sour solitary|
|
||||||
|
v.sweet/v.salty element/substance|
|
||||||
|
sweet/slightly-bttr brethren (adj)|
|
||||||
|
blnd/sour/v.sour is souring|
|
||||||
|
v.salty/salty/sour bad/evil/deadly|
|
||||||
|
radiations|
|
||||||
|
spicy-hot/blnd/blnd 78 (?) 7/8 (?)|
|
||||||
|
bttr/sour/v.sour weapon (possesv.)|
|
||||||
|
v.sweet (emphasis mark?)\""
|
||||||
|
|
||||||
|
;"old TEXT below didn't work on 40-column computers"
|
||||||
|
|
||||||
|
;"\"(bitter/salty/bitter) softness/weakness|
|
||||||
(sweet/very-sour) Hunji (noun form)|
|
(sweet/very-sour) Hunji (noun form)|
|
||||||
(bland/salty/sour) Zeenak (adj form)|
|
(bland/salty/sour) Zeenak (adj form)|
|
||||||
(bland/bitter) air/atmosphere|
|
(bland/bitter) air/atmosphere|
|
||||||
|
@ -1000,7 +1030,8 @@ of the subject." CR>)>)
|
||||||
doors to the north and northwest.")
|
doors to the north and northwest.")
|
||||||
(NORTH TO MAIN-STREET)
|
(NORTH TO MAIN-STREET)
|
||||||
(NW TO TRAVEL-AGENCY)
|
(NW TO TRAVEL-AGENCY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT PLATINUM-DETECTOR
|
<OBJECT PLATINUM-DETECTOR
|
||||||
(IN BANK)
|
(IN BANK)
|
||||||
|
@ -1008,6 +1039,7 @@ doors to the north and northwest.")
|
||||||
(SYNONYM DETECTOR)
|
(SYNONYM DETECTOR)
|
||||||
(ADJECTIVE PLATINUM)
|
(ADJECTIVE PLATINUM)
|
||||||
(FLAGS TAKEBIT LIGHTBIT)
|
(FLAGS TAKEBIT LIGHTBIT)
|
||||||
|
(SIZE 15)
|
||||||
(ACTION PLATINUM-DETECTOR-F)>
|
(ACTION PLATINUM-DETECTOR-F)>
|
||||||
|
|
||||||
<ROUTINE PLATINUM-DETECTOR-F ()
|
<ROUTINE PLATINUM-DETECTOR-F ()
|
||||||
|
@ -1022,7 +1054,9 @@ doors to the north and northwest.")
|
||||||
<G? ,DETECTOR-COUNTER 49>>
|
<G? ,DETECTOR-COUNTER 49>>
|
||||||
<COND (<G? ,DETECTOR-COUNTER 99>
|
<COND (<G? ,DETECTOR-COUNTER 99>
|
||||||
<TELL "Ouch! The detector is too hot to pick up!" CR>)
|
<TELL "Ouch! The detector is too hot to pick up!" CR>)
|
||||||
(<NOT <EQUAL? <ITAKE> ,M-FATAL <>>>
|
(<EQUAL? <ITAKE> ,M-FATAL <>>
|
||||||
|
<RTRUE>)
|
||||||
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"As you pick up the detector, you notice that is feels ">
|
"As you pick up the detector, you notice that is feels ">
|
||||||
<COND (<G? ,DETECTOR-COUNTER 75>
|
<COND (<G? ,DETECTOR-COUNTER 75>
|
||||||
|
@ -1047,25 +1081,7 @@ doors to the north and northwest.")
|
||||||
|
|
||||||
<GLOBAL DETECTOR-COUNTER 0>
|
<GLOBAL DETECTOR-COUNTER 0>
|
||||||
|
|
||||||
<ROUTINE I-PLATINUM-DETECTOR ()
|
;"routine I-PLATINUM-DETECTOR moved to INTERRUPTS file"
|
||||||
<SETG DETECTOR-COUNTER <+ ,DETECTOR-COUNTER 1>>
|
|
||||||
<COND (<AND <VISIBLE? ,PLATINUM-DETECTOR>
|
|
||||||
<OR <EQUAL? <META-LOC ,FOIL>
|
|
||||||
<META-LOC ,PLATINUM-DETECTOR>>
|
|
||||||
<AND <ULTIMATELY-IN? ,PLATINUM-DETECTOR ,BARBERSHOP>
|
|
||||||
<NOT ,MIRROR-BROKEN>>>>
|
|
||||||
<TELL " The detector is quietly beeping." CR>)>
|
|
||||||
<COND (<AND <EQUAL? ,DETECTOR-COUNTER 50 75>
|
|
||||||
<IN? ,PLATINUM-DETECTOR ,PROTAGONIST>>
|
|
||||||
<TELL " You notice that the detector is getting ">
|
|
||||||
<COND (<EQUAL? ,DETECTOR-COUNTER 75>
|
|
||||||
<TELL "very ">)>
|
|
||||||
<TELL "warm." CR>)
|
|
||||||
(<AND <EQUAL? ,DETECTOR-COUNTER 100>
|
|
||||||
<IN? ,PLATINUM-DETECTOR ,PROTAGONIST>>
|
|
||||||
<MOVE ,PLATINUM-DETECTOR ,HERE>
|
|
||||||
<TELL
|
|
||||||
" Yeow! The detector is now too hot to handle, so you drop it." CR>)>>
|
|
||||||
|
|
||||||
<ROOM TRAVEL-AGENCY
|
<ROOM TRAVEL-AGENCY
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -1077,6 +1093,7 @@ rundown spacetown would be able to afford an interstellar pleasure jaunt.")
|
||||||
(EAST TO MAIN-STREET)
|
(EAST TO MAIN-STREET)
|
||||||
(SE TO BANK)
|
(SE TO BANK)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(THINGS <PSEUDO (<> POSTER TRAVEL-AGENCY-POSTER-F)>)>
|
(THINGS <PSEUDO (<> POSTER TRAVEL-AGENCY-POSTER-F)>)>
|
||||||
|
|
||||||
<ROUTINE TRAVEL-AGENCY-POSTER-F ()
|
<ROUTINE TRAVEL-AGENCY-POSTER-F ()
|
||||||
|
@ -1114,7 +1131,7 @@ and the alley slopes upward to the northwest.")
|
||||||
(NW TO MAIN-STREET)
|
(NW TO MAIN-STREET)
|
||||||
(UP TO MAIN-STREET)
|
(UP TO MAIN-STREET)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL GARBAGE)>
|
(GLOBAL GARBAGE VILLAGE)>
|
||||||
|
|
||||||
<ROOM MISSIONARY
|
<ROOM MISSIONARY
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -1127,7 +1144,8 @@ are enough kooks in the galaxy to keep the belief going. You can exit to the
|
||||||
south.")
|
south.")
|
||||||
(SOUTH TO ALLEY)
|
(SOUTH TO ALLEY)
|
||||||
(OUT TO ALLEY)
|
(OUT TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<ROOM WAREHOUSE
|
<ROOM WAREHOUSE
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -1136,7 +1154,7 @@ south.")
|
||||||
(SW TO ALLEY)
|
(SW TO ALLEY)
|
||||||
(DOWN TO AIRLOCK IF INNER-AIRLOCK-DOOR IS OPEN)
|
(DOWN TO AIRLOCK IF INNER-AIRLOCK-DOOR IS OPEN)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL SIGN INNER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
(GLOBAL SIGN VILLAGE INNER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
||||||
(ACTION WAREHOUSE-F)>
|
(ACTION WAREHOUSE-F)>
|
||||||
|
|
||||||
<ROUTINE WAREHOUSE-F (RARG)
|
<ROUTINE WAREHOUSE-F (RARG)
|
||||||
|
@ -1150,7 +1168,7 @@ in the ceiling and the southwest wall.">)>>
|
||||||
|
|
||||||
<OBJECT INNER-AIRLOCK-DOOR
|
<OBJECT INNER-AIRLOCK-DOOR
|
||||||
(IN LOCAL-GLOBALS)
|
(IN LOCAL-GLOBALS)
|
||||||
(DESC "inner airlock door")
|
(DESC "inner door")
|
||||||
(SYNONYM DOOR HATCH)
|
(SYNONYM DOOR HATCH)
|
||||||
(ADJECTIVE INNER UPPER AIRLOCK)
|
(ADJECTIVE INNER UPPER AIRLOCK)
|
||||||
(FLAGS DOORBIT VOWELBIT)
|
(FLAGS DOORBIT VOWELBIT)
|
||||||
|
@ -1161,11 +1179,11 @@ in the ceiling and the southwest wall.">)>>
|
||||||
<COND (<AND <VERB? OPEN>
|
<COND (<AND <VERB? OPEN>
|
||||||
<NOT <FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>>
|
<NOT <FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>>
|
||||||
<FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>
|
<FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>
|
||||||
<TELL "It won't budge." CR>)>>
|
<TELL ,WONT-BUDGE>)>>
|
||||||
|
|
||||||
<OBJECT OUTER-AIRLOCK-DOOR
|
<OBJECT OUTER-AIRLOCK-DOOR
|
||||||
(IN LOCAL-GLOBALS)
|
(IN LOCAL-GLOBALS)
|
||||||
(DESC "outer airlock door")
|
(DESC "outer door")
|
||||||
(SYNONYM DOOR HATCH)
|
(SYNONYM DOOR HATCH)
|
||||||
(ADJECTIVE OUTER LOWER AIRLOCK)
|
(ADJECTIVE OUTER LOWER AIRLOCK)
|
||||||
(FLAGS DOORBIT VOWELBIT)
|
(FLAGS DOORBIT VOWELBIT)
|
||||||
|
@ -1176,7 +1194,7 @@ in the ceiling and the southwest wall.">)>>
|
||||||
<COND (<AND <VERB? OPEN>
|
<COND (<AND <VERB? OPEN>
|
||||||
<NOT <FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>>
|
<NOT <FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>>
|
||||||
<COND (<FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>
|
<COND (<FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>
|
||||||
<TELL "It won't budge." CR>)
|
<TELL ,WONT-BUDGE>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"As the door opens, the air in the lock whooshes out into the vacuum of space">
|
"As the door opens, the air in the lock whooshes out into the vacuum of space">
|
||||||
|
@ -1188,12 +1206,8 @@ in the ceiling and the southwest wall.">)>>
|
||||||
<LOST-IN-SPACE>)
|
<LOST-IN-SPACE>)
|
||||||
(T
|
(T
|
||||||
<FSET ,OUTER-AIRLOCK-DOOR ,OPENBIT>
|
<FSET ,OUTER-AIRLOCK-DOOR ,OPENBIT>
|
||||||
;<COND (<AND <ULTIMATELY-IN? ,BOTTLE>
|
<COND (<EQUAL? <META-LOC ,EXPLOSIVE> ,HERE>
|
||||||
<NOT ,CARBON-DIOXIDE-GONE>>
|
<DEQUEUE I-EXPLOSIVE-MELT>)>
|
||||||
<DEQUEUE I-MELT-CARBON-DIOXIDE>
|
|
||||||
<COND (<IN? ,EXPLOSIVE ,BOTTLE>
|
|
||||||
<DEQUEUE I-EXPLOSIVE-MELT>)>
|
|
||||||
<QUEUE I-FREEZE-CARBON-DIOXIDE -1>)>
|
|
||||||
<SET X <FIRST? ,AIRLOCK>>
|
<SET X <FIRST? ,AIRLOCK>>
|
||||||
<REPEAT ()
|
<REPEAT ()
|
||||||
<COND (<NOT .X>
|
<COND (<NOT .X>
|
||||||
|
@ -1265,13 +1279,13 @@ explodes into a puff of hydrogen that immediately vanishes!" CR>)>
|
||||||
(DOWN TO VACUUM-STORAGE IF OUTER-AIRLOCK-DOOR IS OPEN)
|
(DOWN TO VACUUM-STORAGE IF OUTER-AIRLOCK-DOOR IS OPEN)
|
||||||
(OUT TO VACUUM-STORAGE IF OUTER-AIRLOCK-DOOR IS OPEN)
|
(OUT TO VACUUM-STORAGE IF OUTER-AIRLOCK-DOOR IS OPEN)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
(GLOBAL INNER-AIRLOCK-DOOR OUTER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
(GLOBAL VILLAGE INNER-AIRLOCK-DOOR OUTER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
||||||
(ACTION AIRLOCK-F)>
|
(ACTION AIRLOCK-F)>
|
||||||
|
|
||||||
<ROUTINE AIRLOCK-F (RARG)
|
<ROUTINE AIRLOCK-F (RARG)
|
||||||
<COND (<EQUAL? .RARG ,M-LOOK>
|
<COND (<EQUAL? .RARG ,M-LOOK>
|
||||||
<TELL
|
<TELL
|
||||||
"This is a cramped lock with doors above and below you. ">
|
"This is a cramped airlock with doors above and below you. ">
|
||||||
<COND (<AND <NOT <FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>>
|
<COND (<AND <NOT <FSET? ,INNER-AIRLOCK-DOOR ,OPENBIT>>
|
||||||
<NOT <FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>>
|
<NOT <FSET? ,OUTER-AIRLOCK-DOOR ,OPENBIT>>>
|
||||||
<TELL "Neither door">)
|
<TELL "Neither door">)
|
||||||
|
@ -1310,10 +1324,11 @@ explodes into a puff of hydrogen that immediately vanishes!" CR>)>
|
||||||
<COND (<EQUAL? ,HERE ,AIRLOCK>
|
<COND (<EQUAL? ,HERE ,AIRLOCK>
|
||||||
<TELL "There are two doors." CR>)
|
<TELL "There are two doors." CR>)
|
||||||
(T
|
(T
|
||||||
<PERFORM-PRSA <COND (<EQUAL? ,HERE ,WAREHOUSE>
|
<PERFORM ,PRSA <COND (<EQUAL? ,HERE ,WAREHOUSE>
|
||||||
,INNER-AIRLOCK-DOOR)
|
,INNER-AIRLOCK-DOOR)
|
||||||
(<EQUAL? ,HERE ,VACUUM-STORAGE>
|
(<EQUAL? ,HERE ,VACUUM-STORAGE>
|
||||||
,OUTER-AIRLOCK-DOOR)>>)>)>>
|
,OUTER-AIRLOCK-DOOR)>>
|
||||||
|
<RTRUE>)>)>>
|
||||||
|
|
||||||
<ROUTINE LOST-IN-SPACE ()
|
<ROUTINE LOST-IN-SPACE ()
|
||||||
<JIGS-UP "||
|
<JIGS-UP "||
|
||||||
|
@ -1327,7 +1342,7 @@ dwindling to a dot of light behind you. Eventually, your air runs out.">>
|
||||||
(UP TO AIRLOCK IF OUTER-AIRLOCK-DOOR IS OPEN)
|
(UP TO AIRLOCK IF OUTER-AIRLOCK-DOOR IS OPEN)
|
||||||
(IN TO AIRLOCK IF OUTER-AIRLOCK-DOOR IS OPEN)
|
(IN TO AIRLOCK IF OUTER-AIRLOCK-DOOR IS OPEN)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT NWELDERBIT)
|
||||||
(GLOBAL OUTER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
(GLOBAL VILLAGE OUTER-AIRLOCK-DOOR AIRLOCK-OBJECT)
|
||||||
(VALUE 3)
|
(VALUE 3)
|
||||||
(ACTION VACUUM-STORAGE-F)>
|
(ACTION VACUUM-STORAGE-F)>
|
||||||
|
|
||||||
|
@ -1338,7 +1353,7 @@ dwindling to a dot of light behind you. Eventually, your air runs out.">>
|
||||||
same way that your dad kept beer cold in the back yard during winters on
|
same way that your dad kept beer cold in the back yard during winters on
|
||||||
Gallium. In fact, the villagers usually refer to this place as the \"vac
|
Gallium. In fact, the villagers usually refer to this place as the \"vac
|
||||||
yard.\" Only the " 'BOOTS ", clinging to the outer skin of the warehouse,
|
yard.\" Only the " 'BOOTS ", clinging to the outer skin of the warehouse,
|
||||||
are preventing you from floating off into space. Tethered all around you:
|
is preventing you from floating off into space. Tethered all around you:
|
||||||
those items in the Trading Post's inventory that, for reasons of temperature
|
those items in the Trading Post's inventory that, for reasons of temperature
|
||||||
or anti-corrosion, must be stored here in space. The door to the airlock,
|
or anti-corrosion, must be stored here in space. The door to the airlock,
|
||||||
\"above\" you, is ">
|
\"above\" you, is ">
|
||||||
|
@ -1354,6 +1369,7 @@ with an even tinier label.")
|
||||||
(SYNONYM EXPLOSIVE CYLIND LABEL)
|
(SYNONYM EXPLOSIVE CYLIND LABEL)
|
||||||
(ADJECTIVE EXPLOSIVE FREZONE SMALL)
|
(ADJECTIVE EXPLOSIVE FREZONE SMALL)
|
||||||
(FLAGS TAKEBIT VOWELBIT READBIT)
|
(FLAGS TAKEBIT VOWELBIT READBIT)
|
||||||
|
(SIZE 3)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"FREZONE (tm) Liquid Gorzium Explosive. For use only by licensed
|
"\"FREZONE (tm) Liquid Gorzium Explosive. For use only by licensed
|
||||||
demolitionist. Instruction sheet available from vendor; read
|
demolitionist. Instruction sheet available from vendor; read
|
||||||
|
@ -1386,6 +1402,12 @@ It has a tiny label.">
|
||||||
(T
|
(T
|
||||||
<QUEUE I-EXPLOSIVE-MELT 100>
|
<QUEUE I-EXPLOSIVE-MELT 100>
|
||||||
<RFALSE>)>)
|
<RFALSE>)>)
|
||||||
|
(<AND <VERB? PUT>
|
||||||
|
<PRSI? ,HEATING-CHAMBER>>
|
||||||
|
<TELL "The explosive " ,SUBLIMES-INTO-FREZONE>
|
||||||
|
<DEQUEUE I-EXPLOSIVE-MELT>
|
||||||
|
<REMOVE-CAREFULLY ,EXPLOSIVE>
|
||||||
|
<CRLF>)
|
||||||
(<AND <VERB? DISCONNECT>
|
(<AND <VERB? DISCONNECT>
|
||||||
<NOT ,PRSI>
|
<NOT ,PRSI>
|
||||||
,EXPLOSIVE-CONNECTED>
|
,EXPLOSIVE-CONNECTED>
|
||||||
|
@ -1398,31 +1420,7 @@ It has a tiny label.">
|
||||||
|
|
||||||
<GLOBAL MELT-COUNTER 0>
|
<GLOBAL MELT-COUNTER 0>
|
||||||
|
|
||||||
<ROUTINE I-EXPLOSIVE-MELT ("AUX" OLD-MELT-COUNTER)
|
;"routine I-EXPLOSIVE-MELT moved to INTERRUPTS file"
|
||||||
<SET OLD-MELT-COUNTER ,MELT-COUNTER>
|
|
||||||
<SETG MELT-COUNTER <+ ,MELT-COUNTER
|
|
||||||
<COND (<AND <IN? ,EXPLOSIVE ,THERMOS>
|
|
||||||
<NOT <FSET? ,THERMOS ,OPENBIT>>>
|
|
||||||
</ ,C-ELAPSED 4>)
|
|
||||||
(T
|
|
||||||
,C-ELAPSED)>>>
|
|
||||||
<COND (<G? ,MELT-COUNTER 210>
|
|
||||||
<COND (<VISIBLE? ,EXPLOSIVE>
|
|
||||||
<TELL " The explosive " ,SUBLIMES-INTO-FREZONE CR>)
|
|
||||||
(<AND <IN? ,EXPLOSIVE ,THERMOS>
|
|
||||||
<NOT <FSET? ,THERMOS ,OPENBIT>>>
|
|
||||||
<SETG THERMOS-FILLED-WITH-GAS T>)>
|
|
||||||
<REMOVE-CAREFULLY ,EXPLOSIVE>)
|
|
||||||
(<AND <VISIBLE? ,EXPLOSIVE>
|
|
||||||
,LIT>
|
|
||||||
<COND (<AND <G? ,MELT-COUNTER 170>
|
|
||||||
<NOT <G? .OLD-MELT-COUNTER 170>>>
|
|
||||||
<TELL " ">
|
|
||||||
<DESCRIBE-EXPLOSIVE>)
|
|
||||||
(<AND <G? ,MELT-COUNTER 130>
|
|
||||||
<NOT <G? .OLD-MELT-COUNTER 130>>>
|
|
||||||
<TELL " ">
|
|
||||||
<DESCRIBE-EXPLOSIVE>)>)>>
|
|
||||||
|
|
||||||
<ROUTINE DESCRIBE-EXPLOSIVE ()
|
<ROUTINE DESCRIBE-EXPLOSIVE ()
|
||||||
<TELL " The explosive ">
|
<TELL " The explosive ">
|
||||||
|
@ -1441,7 +1439,8 @@ indicate that a villager down on his or her luck could come here to hock
|
||||||
some valuable possession.")
|
some valuable possession.")
|
||||||
(NE TO ALLEY)
|
(NE TO ALLEY)
|
||||||
(OUT TO ALLEY)
|
(OUT TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT SPRAY-CAN
|
<OBJECT SPRAY-CAN
|
||||||
(IN PAWN-SHOP)
|
(IN PAWN-SHOP)
|
||||||
|
@ -1453,6 +1452,7 @@ spray can. It's sitting here in the shop, and has some lettering on it.")
|
||||||
(ADJECTIVE SPRAY)
|
(ADJECTIVE SPRAY)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
(GENERIC GENERIC-CAN-F)
|
(GENERIC GENERIC-CAN-F)
|
||||||
|
(SIZE 8)
|
||||||
(ACTION SPRAY-CAN-F)>
|
(ACTION SPRAY-CAN-F)>
|
||||||
|
|
||||||
<ROUTINE SPRAY-CAN-F ()
|
<ROUTINE SPRAY-CAN-F ()
|
||||||
|
@ -1468,17 +1468,18 @@ spray can. It's sitting here in the shop, and has some lettering on it.")
|
||||||
A mixture of high-quality spores|
|
A mixture of high-quality spores|
|
||||||
Lowest gas-inducement levels of any brand!\"" CR>)
|
Lowest gas-inducement levels of any brand!\"" CR>)
|
||||||
(<VERB? SPRAY>
|
(<VERB? SPRAY>
|
||||||
<COND (,PRSI
|
<COND (<NOT <ULTIMATELY-IN? ,SPRAY-CAN>>
|
||||||
|
<TELL ,YNH TR ,SPRAY-CAN>
|
||||||
|
<RTRUE>)
|
||||||
|
(,PRSI
|
||||||
<TELL
|
<TELL
|
||||||
"The nozzle of the can isn't very directional; rather than spraying the
|
"The nozzle of the can isn't very directional; rather than spraying something
|
||||||
can on something in particular, it seems to be more designed to simply
|
in particular, it seems designed to produce a broad mist." CR>
|
||||||
produce a broad mist." CR>
|
|
||||||
<RTRUE>)
|
<RTRUE>)
|
||||||
(<EQUAL? ,SPRAY-COUNTER 0>
|
(<EQUAL? ,SPRAY-COUNTER 0>
|
||||||
<TELL ,NOTHING-HAPPENS>
|
<TELL ,NOTHING-HAPPENS>
|
||||||
<RTRUE>)
|
<RTRUE>)>
|
||||||
(T
|
<SETG SPRAY-COUNTER <- ,SPRAY-COUNTER 1>>
|
||||||
<SETG SPRAY-COUNTER <- ,SPRAY-COUNTER 1>>)>
|
|
||||||
<TELL "A dusty mist puffs from the can and begins dissipating">
|
<TELL "A dusty mist puffs from the can and begins dissipating">
|
||||||
<COND (<IN? ,BALLOON ,HERE>
|
<COND (<IN? ,BALLOON ,HERE>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1586,7 +1587,8 @@ and most of the walls">)>
|
||||||
the south side of the alley.")
|
the south side of the alley.")
|
||||||
(NORTH TO ALLEY)
|
(NORTH TO ALLEY)
|
||||||
(OUT TO ALLEY)
|
(OUT TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)>
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)>
|
||||||
|
|
||||||
<OBJECT STRONG-BOX
|
<OBJECT STRONG-BOX
|
||||||
(IN LOAN-SHARK)
|
(IN LOAN-SHARK)
|
||||||
|
@ -1628,6 +1630,7 @@ smaller than an average asteroid." CR>)
|
||||||
(SYNONYM COIN GALAKMID)
|
(SYNONYM COIN GALAKMID)
|
||||||
(FLAGS TAKEBIT READBIT)
|
(FLAGS TAKEBIT READBIT)
|
||||||
(VALUE 5)
|
(VALUE 5)
|
||||||
|
(SIZE 2)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"ONE GALAKMID|
|
"\"ONE GALAKMID|
|
||||||
Third Galactic Union\"")>
|
Third Galactic Union\"")>
|
||||||
|
@ -1643,6 +1646,7 @@ for a disposal chute. The Doc is out, and in this case, out is northwest.")
|
||||||
(NW TO ALLEY)
|
(NW TO ALLEY)
|
||||||
(OUT TO ALLEY)
|
(OUT TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT NWELDERBIT)
|
||||||
|
(GLOBAL VILLAGE)
|
||||||
(ACTION DOC-SCHUSTER-F)
|
(ACTION DOC-SCHUSTER-F)
|
||||||
(THINGS <PSEUDO (SMALL HOLE DOC-HOLE-F)>)>
|
(THINGS <PSEUDO (SMALL HOLE DOC-HOLE-F)>)>
|
||||||
|
|
||||||
|
@ -1678,18 +1682,21 @@ unusual, for a disposal hole." CR>)
|
||||||
|
|
||||||
<GLOBAL SNIFFED <>>
|
<GLOBAL SNIFFED <>>
|
||||||
|
|
||||||
|
<GLOBAL OSTRICH-FOOTNOTE <>>
|
||||||
|
|
||||||
<OBJECT OSTRICH
|
<OBJECT OSTRICH
|
||||||
(IN DOC-SCHUSTER)
|
(IN DOC-SCHUSTER)
|
||||||
(DESC "ostrich")
|
(DESC "ostrich")
|
||||||
(FDESC "There is a large pile of intoxicated ostrich here.")
|
(FDESC "There is a large pile of intoxicated ostrich here.")
|
||||||
(SYNONYM OSTRICH PET BIRD)
|
(SYNONYM OSTRICH PET BIRD PILE)
|
||||||
|
(ADJECTIVE LARGE INTOXICATED)
|
||||||
(FLAGS VOWELBIT TOUCHBIT)
|
(FLAGS VOWELBIT TOUCHBIT)
|
||||||
(ACTION OSTRICH-F)>
|
(ACTION OSTRICH-F)>
|
||||||
|
|
||||||
<ROUTINE OSTRICH-F ()
|
<ROUTINE OSTRICH-F ()
|
||||||
<COND (<VERB? EXAMINE>
|
<COND (<VERB? EXAMINE>
|
||||||
<TELL
|
<TELL
|
||||||
"It's a handsome, full-grown ostrich, nearly eight feet tall.
|
"It's a handsome, full-grown ostrich, nearly three meters tall.
|
||||||
As with all ostriches, half its height is its neck">
|
As with all ostriches, half its height is its neck">
|
||||||
<COND (<NOT <FSET? ,OSTRICH ,TOUCHBIT>>
|
<COND (<NOT <FSET? ,OSTRICH ,TOUCHBIT>>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1699,7 +1706,7 @@ As with all ostriches, half its height is its neck">
|
||||||
<REMOVE ,OSTRICH>
|
<REMOVE ,OSTRICH>
|
||||||
<TELL
|
<TELL
|
||||||
"The ostrich gives the last of a generous lifetime's supply of squawks
|
"The ostrich gives the last of a generous lifetime's supply of squawks
|
||||||
before being consumed in fiery raygun death." CR>)
|
before being consumed in fiery zapgun death." CR>)
|
||||||
(<NOT <FSET? ,OSTRICH ,TOUCHBIT>>
|
(<NOT <FSET? ,OSTRICH ,TOUCHBIT>>
|
||||||
<COND (<VERB? SCARE>
|
<COND (<VERB? SCARE>
|
||||||
<TELL "The ostrich is unconscious!" CR>)
|
<TELL "The ostrich is unconscious!" CR>)
|
||||||
|
@ -1738,7 +1745,10 @@ of intoxicated ostrich." CR>)
|
||||||
<TELL
|
<TELL
|
||||||
"The ostrich emits a terrified squawk and sticks its head ">
|
"The ostrich emits a terrified squawk and sticks its head ">
|
||||||
<COND (<EQUAL? ,HERE ,DOC-SCHUSTER>
|
<COND (<EQUAL? ,HERE ,DOC-SCHUSTER>
|
||||||
<TELL "into the disposal hole">)
|
<TELL "into the disposal hole">
|
||||||
|
<COND (<NOT ,OSTRICH-FOOTNOTE>
|
||||||
|
<SETG OSTRICH-FOOTNOTE T>
|
||||||
|
<TELL " (Footnote 14)">)>)
|
||||||
(<AND <EQUAL? ,HERE ,PX>
|
(<AND <EQUAL? ,HERE ,PX>
|
||||||
<IN? ,DISPENSER ,HERE>>
|
<IN? ,DISPENSER ,HERE>>
|
||||||
<TELL "into the dispenser hole.">
|
<TELL "into the dispenser hole.">
|
||||||
|
@ -1759,7 +1769,7 @@ out, squawking in pain." CR>
|
||||||
(DESC "letter")
|
(DESC "letter")
|
||||||
(SYNONYM LETTER)
|
(SYNONYM LETTER)
|
||||||
(FLAGS READBIT TAKEBIT)
|
(FLAGS READBIT TAKEBIT)
|
||||||
(SIZE 2)
|
(SIZE 1)
|
||||||
(TEXT
|
(TEXT
|
||||||
"\"Doc -- that ostrich nip you've been waiting for finally came in. Drop
|
"\"Doc -- that ostrich nip you've been waiting for finally came in. Drop
|
||||||
by and pick it up. If I'm not in, you'll find it in my ceiling panel.\"")>
|
by and pick it up. If I'm not in, you'll find it in my ceiling panel.\"")>
|
||||||
|
@ -1770,7 +1780,7 @@ by and pick it up. If I'm not in, you'll find it in my ceiling panel.\"")>
|
||||||
(NW TO TRADING-POST)
|
(NW TO TRADING-POST)
|
||||||
(DOWN TO JUNK-YARD)
|
(DOWN TO JUNK-YARD)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL KEYPAD WINDOW)
|
(GLOBAL VILLAGE KEYPAD WINDOW)
|
||||||
(ACTION SHADY-DANS-F)
|
(ACTION SHADY-DANS-F)
|
||||||
(THINGS <PSEUDO (<> SLOT ID-CHANGER-SLOT-F)>)>
|
(THINGS <PSEUDO (<> SLOT ID-CHANGER-SLOT-F)>)>
|
||||||
|
|
||||||
|
@ -1786,10 +1796,12 @@ and downward. " ,DANS-LOT-DESC>)>>
|
||||||
<CANT-SEE ,PSEUDO-OBJECT>)
|
<CANT-SEE ,PSEUDO-OBJECT>)
|
||||||
(<AND <VERB? LOOK-INSIDE REACH-IN>
|
(<AND <VERB? LOOK-INSIDE REACH-IN>
|
||||||
<PRSO? ,PSEUDO-OBJECT>>
|
<PRSO? ,PSEUDO-OBJECT>>
|
||||||
<PERFORM-PRSA ,ID-CHANGER ,PRSI>)
|
<PERFORM ,PRSA ,ID-CHANGER ,PRSI>
|
||||||
|
<RTRUE>)
|
||||||
(<AND <VERB? PUT>
|
(<AND <VERB? PUT>
|
||||||
<PRSI? ,PSEUDO-OBJECT>>
|
<PRSI? ,PSEUDO-OBJECT>>
|
||||||
<PERFORM-PRSA ,PRSO ,ID-CHANGER>)>>
|
<PERFORM, PRSA ,PRSO ,ID-CHANGER>
|
||||||
|
<RTRUE>)>>
|
||||||
|
|
||||||
<OBJECT ID-CHANGER
|
<OBJECT ID-CHANGER
|
||||||
(IN SHADY-DANS)
|
(IN SHADY-DANS)
|
||||||
|
@ -1815,7 +1827,7 @@ notable features: a keypad and a very small slot. The machine is currently o">
|
||||||
(<VERB? OPEN CLOSE>
|
(<VERB? OPEN CLOSE>
|
||||||
<TELL ,HUH>)
|
<TELL ,HUH>)
|
||||||
(<VERB? TAKE>
|
(<VERB? TAKE>
|
||||||
<TELL "It's bolted down." CR>)
|
<TELL ,WONT-BUDGE>)
|
||||||
(<AND <VERB? PUT>
|
(<AND <VERB? PUT>
|
||||||
<PRSI? ,ID-CHANGER>>
|
<PRSI? ,ID-CHANGER>>
|
||||||
<COND (<PRSO? ,ID-CARD>
|
<COND (<PRSO? ,ID-CARD>
|
||||||
|
@ -1824,7 +1836,11 @@ notable features: a keypad and a very small slot. The machine is currently o">
|
||||||
<TELL "A voice from the machine says, \"">
|
<TELL "A voice from the machine says, \"">
|
||||||
<COND (,ID-SCRAMBLED
|
<COND (,ID-SCRAMBLED
|
||||||
<TELL
|
<TELL
|
||||||
"Magnetic card data is scrambled; unable to read.\"" CR>)
|
"Magnetic card data is scrambled; unable to read.\"">
|
||||||
|
<COND (<NOT ,SCRAMBLED-FOOTNOTE>
|
||||||
|
<SETG SCRAMBLED-FOOTNOTE T>
|
||||||
|
<TELL " (Footnote 15)">)>
|
||||||
|
<CRLF>)
|
||||||
(T
|
(T
|
||||||
<TELL
|
<TELL
|
||||||
"Current rank is " N ,ID-RANK ": " <GET ,ID-RANK-LIST <- ,ID-RANK 1>>
|
"Current rank is " N ,ID-RANK ": " <GET ,ID-RANK-LIST <- ,ID-RANK 1>>
|
||||||
|
@ -1847,6 +1863,9 @@ notable features: a keypad and a very small slot. The machine is currently o">
|
||||||
<COND (<AND <IN? ,ID-CARD ,ID-CHANGER>
|
<COND (<AND <IN? ,ID-CARD ,ID-CHANGER>
|
||||||
<FSET? ,ID-CHANGER ,ACTIVEBIT>>
|
<FSET? ,ID-CHANGER ,ACTIVEBIT>>
|
||||||
<COND (,ID-SCRAMBLED
|
<COND (,ID-SCRAMBLED
|
||||||
|
<COND (<NOT ,SCRAMBLED-FOOTNOTE>
|
||||||
|
<SETG SCRAMBLED-FOOTNOTE T>
|
||||||
|
<TELL "(Footnote 15) ">)>
|
||||||
<RECORDING "A scrambled card cannot be altered">)
|
<RECORDING "A scrambled card cannot be altered">)
|
||||||
(<G? ,P-NUMBER 10>
|
(<G? ,P-NUMBER 10>
|
||||||
<TELL
|
<TELL
|
||||||
|
@ -1865,16 +1884,16 @@ recognized by the Stellar Patrol is 10.\"" CR>)
|
||||||
|
|
||||||
<GLOBAL ID-RANK-LIST
|
<GLOBAL ID-RANK-LIST
|
||||||
<TABLE
|
<TABLE
|
||||||
"Ensign, Sixth Class or lower"
|
"Ensign, lower classes"
|
||||||
"Ensign, Fifth through Second Class"
|
|
||||||
"Ensign First Class"
|
"Ensign First Class"
|
||||||
"Midshipman"
|
"Upshipman"
|
||||||
|
"Lieutenant Last Class"
|
||||||
"Lieutenant Second Class"
|
"Lieutenant Second Class"
|
||||||
"Lieutenant First Class"
|
"Lieutenant First Class"
|
||||||
"Lieutenant Commander"
|
|
||||||
"Commander or Captain"
|
"Commander or Captain"
|
||||||
"Admiral"
|
"Admiral"
|
||||||
"Fleet Admiral">>
|
"HyperAdmiral"
|
||||||
|
"Grand Fleet HyperAdmiral">>
|
||||||
|
|
||||||
<ROOM JUNK-YARD
|
<ROOM JUNK-YARD
|
||||||
(IN ROOMS)
|
(IN ROOMS)
|
||||||
|
@ -1885,7 +1904,7 @@ fills the center of the bubble. Passages lead upwards and west.")
|
||||||
(UP TO SHADY-DANS)
|
(UP TO SHADY-DANS)
|
||||||
(WEST TO ALLEY)
|
(WEST TO ALLEY)
|
||||||
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
(FLAGS RLANDBIT WEIGHTLESSBIT ONBIT)
|
||||||
(GLOBAL GARBAGE)
|
(GLOBAL GARBAGE VILLAGE)
|
||||||
(ACTION JUNK-YARD-F)>
|
(ACTION JUNK-YARD-F)>
|
||||||
|
|
||||||
<ROUTINE JUNK-YARD-F (RARG)
|
<ROUTINE JUNK-YARD-F (RARG)
|
||||||
|
@ -1906,6 +1925,7 @@ sculpture in the style of 91st-century scrap art. The sculpture is floating"
|
||||||
looks to be in the best shape.")
|
looks to be in the best shape.")
|
||||||
(SYNONYM PAIR BOOTS SPACEBOOTS)
|
(SYNONYM PAIR BOOTS SPACEBOOTS)
|
||||||
(ADJECTIVE MAGNETIC)
|
(ADJECTIVE MAGNETIC)
|
||||||
|
(SIZE 20)
|
||||||
(FLAGS PLURALBIT TRYTAKEBIT TAKEBIT WEARBIT)
|
(FLAGS PLURALBIT TRYTAKEBIT TAKEBIT WEARBIT)
|
||||||
(ACTION BOOTS-F)>
|
(ACTION BOOTS-F)>
|
||||||
|
|
||||||
|
@ -1945,8 +1965,8 @@ attracted by the boots." CR>)
|
||||||
<OBJECT GARBAGE
|
<OBJECT GARBAGE
|
||||||
(IN LOCAL-GLOBALS) ;"in Junk Yard and Alley"
|
(IN LOCAL-GLOBALS) ;"in Junk Yard and Alley"
|
||||||
(DESC "garbage")
|
(DESC "garbage")
|
||||||
(SYNONYM GARBAGE JUNK PILE)
|
(SYNONYM GARBAGE JUNK TRASH PILE)
|
||||||
(ADJECTIVE LARGE FLOATING USELESS RANDOM)
|
(ADJECTIVE LARGE FLOATING USELESS RANDOM JUNK GARBAGE TRASH)
|
||||||
(FLAGS NARTICLEBIT)
|
(FLAGS NARTICLEBIT)
|
||||||
(ACTION GARBAGE-F)>
|
(ACTION GARBAGE-F)>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue