stationfall/globals.zap

1219 lines
32 KiB
Plaintext
Raw Normal View History

2019-04-14 23:09:16 +03:00
2019-04-14 23:09:56 +03:00
.FUNCT INTDIR-F
EQUAL? PRSA,V?SET \FALSE
PRINTR "Okay, you're now facing in that direction, but you don't see anything you didn't see before."
2019-04-14 23:09:16 +03:00
.FUNCT INTNUM-F
2019-04-14 23:11:30 +03:00
CALL ADJ-USED,A?BIN,INTNUM
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CCL3
2019-04-14 23:11:30 +03:00
EQUAL? HERE,ROBOT-POOL /?CCL6
PRINT YOU-CANT
PRINTR "see any bin here!]"
?CCL6: GRTR? P-NUMBER,3 \?CCL8
PRINTR "There are only three bins!"
?CCL8: PRINT REFER-TO-BIN
RTRUE
?CCL3: GET P-NAMW,0
EQUAL? STACK,W?ONE,W?TWO,W?THREE \?CCL10
CALL GLOBAL-IN?,KEYPAD,HERE
ZERO? STACK /?CCL10
EQUAL? PRSA,V?TYPE,V?PUSH \?CCL10
2019-04-14 23:09:56 +03:00
PRINTR "[Use numerals: for example, TYPE 5 rather than TYPE FIVE.]"
2019-04-14 23:11:30 +03:00
?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
2019-04-14 23:09:16 +03:00
CALL GLOBAL-IN?,KEYPAD,HERE
2019-04-14 23:11:30 +03:00
ZERO? STACK \?CTR24
?PRD27: EQUAL? PRSA,V?PUSH \?CCL25
2019-04-14 23:09:16 +03:00
CALL GLOBAL-IN?,KEYPAD,HERE
2019-04-14 23:11:30 +03:00
ZERO? STACK /?CCL25
?CTR24: CALL PERFORM,V?TYPE,INTNUM
2019-04-14 23:09:16 +03:00
RTRUE
2019-04-14 23:11:30 +03:00
?CCL25: EQUAL? PRSA,V?SET \?CCL34
ZERO? PRSI \?CCL34
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL34
EQUAL? P-NUMBER,DIAL-SETTING \?CCL40
2019-04-14 23:09:16 +03:00
PRINT SENILITY-STRIKES
RTRUE
2019-04-14 23:11:30 +03:00
?CCL40: GRTR? P-NUMBER,8000 \?CCL42
PRINTR "The dial goes up to only 8000."
?CCL42: SET 'DIAL-SETTING,P-NUMBER
2019-04-14 23:09:16 +03:00
PRINTR """Click."""
2019-04-14 23:11:30 +03:00
?CCL34: EQUAL? PRSA,V?WAIT-FOR \?CCL44
GRTR? P-NUMBER,40 \?CCL47
2019-04-14 23:09:56 +03:00
PRINT TOO-LONG-TO-WAIT
RTRUE
2019-04-14 23:11:30 +03:00
?CCL47: CALL V-WAIT
2019-04-14 23:09:56 +03:00
RSTACK
2019-04-14 23:11:30 +03:00
?CCL44: EQUAL? PRSA,V?WAIT-UNTIL \?CCL49
GRTR? P-NUMBER,INTERNAL-MOVES \?CCL52
2019-04-14 23:09:56 +03:00
SUB P-NUMBER,INTERNAL-MOVES
2019-04-14 23:11:30 +03:00
LESS? STACK,41 \?CCL52
2019-04-14 23:09:56 +03:00
CALL V-WAIT
RSTACK
2019-04-14 23:11:30 +03:00
?CCL52: PRINT TOO-LONG-TO-WAIT
2019-04-14 23:09:56 +03:00
RTRUE
2019-04-14 23:11:30 +03:00
?CCL49: CALL TOUCHING?,INTNUM
ZERO? STACK \?CCL56
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?SHOOT \FALSE
2019-04-14 23:11:30 +03:00
?CCL56: PRINT HUH
2019-04-14 23:09:16 +03:00
RTRUE
.FUNCT NOT-HERE-OBJECT-F,TBL,PRSO?=1,OBJ,X=0
2019-04-14 23:09:56 +03:00
EQUAL? PRSO,NOT-HERE-OBJECT \?CCL3
EQUAL? PRSI,NOT-HERE-OBJECT \?CCL3
2019-04-14 23:09:16 +03:00
PRINTR "Those things aren't here!"
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSO,NOT-HERE-OBJECT \?CCL7
2019-04-14 23:09:16 +03:00
SET 'TBL,P-PRSO
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL7: SET 'TBL,P-PRSI
2019-04-14 23:09:16 +03:00
SET 'PRSO?,FALSE-VALUE
2019-04-14 23:09:56 +03:00
?CND1: ZERO? PRSO? /?CCL10
2019-04-14 23:09:16 +03:00
CALL PRSO-MOBY-VERB?
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CCL10
2019-04-14 23:09:16 +03:00
SET 'X,TRUE-VALUE
2019-04-14 23:09:56 +03:00
JUMP ?CND8
?CCL10: ZERO? PRSO? \?CND8
2019-04-14 23:09:16 +03:00
CALL PRSI-MOBY-VERB?
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CND8
2019-04-14 23:09:16 +03:00
SET 'X,TRUE-VALUE
2019-04-14 23:09:56 +03:00
?CND8: ZERO? X /?CCL18
2019-04-14 23:09:16 +03:00
CALL FIND-NOT-HERE,TBL,PRSO? >OBJ
ZERO? OBJ /FALSE
EQUAL? OBJ,NOT-HERE-OBJECT \TRUE
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?FOLLOW,V?WALK-TO \?CCL26
2019-04-14 23:09:16 +03:00
CALL V-WALK-AROUND
2019-04-14 23:09:56 +03:00
JUMP ?CND16
?CCL26: PRINTC 91
2019-04-14 23:09:16 +03:00
PRINT YOULL-HAVE-TO
PRINTI "be more specific.]"
CRLF
2019-04-14 23:09:56 +03:00
JUMP ?CND16
?CCL18: EQUAL? WINNER,PROTAGONIST \?CCL29
2019-04-14 23:09:16 +03:00
PRINTI "You"
2019-04-14 23:09:56 +03:00
JUMP ?CND27
?CCL29: PRINTI "Looking confused,"
2019-04-14 23:09:16 +03:00
CALL TPRINT,WINNER
PRINTI " says, ""I"
2019-04-14 23:09:56 +03:00
?CND27: PRINTI " can't see"
2019-04-14 23:09:16 +03:00
CALL NAME?,P-XNAM
2019-04-14 23:09:56 +03:00
ZERO? STACK \?CND30
2019-04-14 23:09:16 +03:00
PRINTI " any"
2019-04-14 23:09:56 +03:00
?CND30: CALL NOT-HERE-PRINT,PRSO?
2019-04-14 23:09:16 +03:00
PRINTI " here!"
2019-04-14 23:09:56 +03:00
EQUAL? WINNER,PROTAGONIST /?CND32
2019-04-14 23:09:16 +03:00
PRINTC 34
2019-04-14 23:09:56 +03:00
?CND32: CRLF
?CND16: CALL STOP
2019-04-14 23:09:16 +03:00
RSTACK
.FUNCT PRSO-MOBY-VERB?
EQUAL? PRSA,V?WHAT,V?WHERE,V?WAIT-FOR /TRUE
EQUAL? PRSA,V?WALK-TO,V?CALL,V?SAY /TRUE
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?FIND,V?FOLLOW /TRUE
RFALSE
2019-04-14 23:09:16 +03:00
.FUNCT PRSI-MOBY-VERB?
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?ASK-ABOUT,V?ASK-FOR,V?TELL-ABOUT /TRUE
RFALSE
2019-04-14 23:09:16 +03:00
.FUNCT FIND-NOT-HERE,TBL,PRSO?,M-F,OBJ
CALL MOBY-FIND,TBL >M-F
2019-04-14 23:11:30 +03:00
EQUAL? 1,M-F \?CCL3
ZERO? PRSO? /?CCL6
2019-04-14 23:09:16 +03:00
SET 'PRSO,P-MOBY-FOUND
CALL THIS-IS-IT,PRSO
RFALSE
2019-04-14 23:11:30 +03:00
?CCL6: SET 'PRSI,P-MOBY-FOUND
2019-04-14 23:09:16 +03:00
RFALSE
2019-04-14 23:11:30 +03:00
?CCL3: LESS? 1,M-F \?CCL8
2019-04-14 23:09:16 +03:00
GET TBL,1 >OBJ
GETP OBJ,P?GENERIC
CALL STACK >OBJ
2019-04-14 23:11:30 +03:00
ZERO? OBJ /?CCL8
EQUAL? OBJ,NOT-HERE-OBJECT /TRUE
ZERO? PRSO? /?CCL15
2019-04-14 23:09:16 +03:00
SET 'PRSO,OBJ
CALL THIS-IS-IT,PRSO
RFALSE
2019-04-14 23:11:30 +03:00
?CCL15: SET 'PRSI,OBJ
2019-04-14 23:09:16 +03:00
RFALSE
2019-04-14 23:11:30 +03:00
?CCL8: RETURN NOT-HERE-OBJECT
2019-04-14 23:09:16 +03:00
.FUNCT NOT-HERE-PRINT,PRSO?,?TMP1
2019-04-14 23:09:56 +03:00
ZERO? P-OFLAG /?CCL3
ZERO? P-XADJ /?CND4
2019-04-14 23:09:16 +03:00
PRINTC 32
PRINTB P-XADJN
2019-04-14 23:09:56 +03:00
?CND4: ZERO? P-XNAM /FALSE
2019-04-14 23:09:16 +03:00
PRINTC 32
PRINTB P-XNAM
RTRUE
2019-04-14 23:09:56 +03:00
?CCL3: ZERO? PRSO? /?CCL10
2019-04-14 23:09:16 +03:00
GET P-ITBL,P-NC1 >?TMP1
GET P-ITBL,P-NC1L
CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE
RSTACK
2019-04-14 23:09:56 +03:00
?CCL10: GET P-ITBL,P-NC2 >?TMP1
2019-04-14 23:09:16 +03:00
GET P-ITBL,P-NC2L
CALL BUFFER-PRINT,?TMP1,STACK,FALSE-VALUE
RSTACK
.FUNCT GROUND-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?ENTER,V?CLIMB-ON \?CCL3
2019-04-14 23:11:30 +03:00
ZERO? STUNNED /?CCL6
PRINT LOOK-AROUND
RTRUE
?CCL6: SET 'C-ELAPSED,31
2019-04-14 23:09:56 +03:00
PRINTR "After a brief squat on the floor, you stand again."
2019-04-14 23:11:30 +03:00
?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
2019-04-14 23:09:16 +03:00
CALL IMPOSSIBLES
RSTACK
2019-04-14 23:11:30 +03:00
?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
2019-04-14 23:09:16 +03:00
CALL DO-WALK,P?UP
RSTACK
.FUNCT WALLS-F
EQUAL? PRSA,V?EXAMINE \FALSE
EQUAL? HERE,HOLDING-TANK-LEVEL \FALSE
PRINT BLASTED-OPEN
PRINT PERIOD-CR
RTRUE
.FUNCT CEILING-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?SEARCH,V?EXAMINE \?CCL3
EQUAL? HERE,PET-STORE \?CCL3
2019-04-14 23:11:30 +03:00
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
2019-04-14 23:09:16 +03:00
MOVE PANEL,HERE
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."
2019-04-14 23:11:30 +03:00
?CCL3: EQUAL? PRSA,V?EXAMINE \?CCL12
EQUAL? HERE,DOME \?CCL12
2019-04-14 23:09:16 +03:00
PRINT DOME-DESC
CRLF
RTRUE
2019-04-14 23:11:30 +03:00
?CCL12: EQUAL? PRSA,V?LOOK-UNDER \FALSE
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?LOOK
RTRUE
.FUNCT GLOBAL-ROOM-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?EXAMINE,V?LOOK-INSIDE,V?LOOK \?CCL3
2019-04-14 23:09:16 +03:00
CALL V-LOOK
RSTACK
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?WALK-TO,V?ENTER \?CCL5
2019-04-14 23:09:16 +03:00
CALL V-WALK-AROUND
RSTACK
2019-04-14 23:09:56 +03:00
?CCL5: EQUAL? PRSA,V?DISEMBARK,V?EXIT,V?LEAVE \?CCL7
2019-04-14 23:09:16 +03:00
CALL DO-WALK,P?OUT
RSTACK
2019-04-14 23:09:56 +03:00
?CCL7: EQUAL? PRSA,V?WALK-AROUND \?CCL9
EQUAL? HERE,BARBERSHOP \?CCL9
ZERO? MIRROR-BROKEN \?CCL9
CALL ULTIMATELY-IN?,PLATINUM-DETECTOR
ZERO? STACK /?CCL9
FSET? PLATINUM-DETECTOR,ACTIVEBIT \?CCL9
CALL PERFORM,V?FOLLOW,PLATINUM-DETECTOR
RTRUE
?CCL9: EQUAL? PRSA,V?SEARCH \?CCL16
ZERO? LIT \?CCL19
PRINT TOO-DARK
CRLF
RTRUE
?CCL19: EQUAL? HERE,GREASY-STRAW \?CCL21
2019-04-14 23:11:30 +03:00
FSET? NECTAR,TOUCHBIT /?CCL21
2019-04-14 23:09:16 +03:00
MOVE NECTAR,HERE
CALL THIS-IS-IT,NECTAR
PRINTR "You spot a cup of Ramosian Fire Nectar behind the counter!"
2019-04-14 23:09:56 +03:00
?CCL21: PRINTR "A cursory search of the room reveals nothing new."
?CCL16: EQUAL? PRSA,V?PUT \FALSE
2019-04-14 23:09:16 +03:00
EQUAL? PRSI,GLOBAL-ROOM \FALSE
2019-04-14 23:09:56 +03:00
EQUAL? P-PRSA-WORD,W?THROW \?CCL30
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?THROW,PRSO
RTRUE
2019-04-14 23:09:56 +03:00
?CCL30: CALL PERFORM,V?DROP,PRSO
2019-04-14 23:09:16 +03:00
RTRUE
.FUNCT WINDOW-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?LOOK-INSIDE \?CCL3
EQUAL? HERE,SHADY-DANS \?CCL6
2019-04-14 23:09:16 +03:00
PRINT DANS-LOT-DESC
CRLF
RTRUE
2019-04-14 23:09:56 +03:00
?CCL6: EQUAL? HERE,DOCKING-BAY-2,CARGO-BAY \?CCL8
PRINTI "You see the interior of"
CALL TRPRINT,SPACETRUCK-OBJECT
RSTACK
?CCL8: EQUAL? SPACETRUCK-COUNTER,5 \?CCL10
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CCL10
2019-04-14 23:09:16 +03:00
PRINTR "You see an empty docking bay."
2019-04-14 23:09:56 +03:00
?CCL10: EQUAL? SPACETRUCK-COUNTER,-1 \?CCL14
2019-04-14 23:09:16 +03:00
PRINTR "You see a large cargo bay."
2019-04-14 23:09:56 +03:00
?CCL14: EQUAL? SPACETRUCK-COUNTER,4 \?CCL16
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CCL16
2019-04-14 23:11:30 +03:00
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."
2019-04-14 23:09:56 +03:00
?CCL16: PRINTR "You see nothing but the majestic sweep of the galaxy."
?CCL3: EQUAL? PRSA,V?CLEAN \FALSE
2019-04-14 23:09:16 +03:00
SET 'AWAITING-REPLY,1
ADD C-ELAPSED,2
CALL QUEUE,I-REPLY,STACK
PRINTR "Do you also do floors?"
.FUNCT SIGN-F
2019-04-14 23:09:56 +03:00
EQUAL? HERE,DOME \?CCL3
IN? HOUSING,DOME /?CCL3
CALL CANT-SEE,SIGN
RSTACK
?CCL3: EQUAL? PRSA,V?READ \FALSE
EQUAL? HERE,DOME \?CCL10
CALL PERFORM,V?READ,HOUSING
RTRUE
?CCL10: EQUAL? HERE,GYM \?CCL12
PRINTI """IMPORTANT! The "
PRINTD EXERCISE-MACHINE
PRINTI " has diagnostic frequencies which communicate with each other on frequency 710. Do not bring anything which broadcasts on that frequency within range of the machine!"""
IN? EXERCISE-MACHINE,GYM /?CND13
PRINTI " Strangely, you don't see any "
PRINTD EXERCISE-MACHINE
PRINTR " anywhere in the gym."
?CND13: CRLF
RTRUE
?CCL12: EQUAL? HERE,SHIPPING-ROOM \?CCL16
PRINTR """Always return the forklift to the shipping room when it's not in use! THIS MEANS YOU!"""
?CCL16: EQUAL? HERE,GREASY-STRAW \?CCL18
2019-04-14 23:09:16 +03:00
PRINT RESTAURANT-SIGN-TEXT
CRLF
RTRUE
2019-04-14 23:09:56 +03:00
?CCL18: EQUAL? HERE,TRADING-POST \?CCL20
2019-04-14 23:09:16 +03:00
PRINTR """!!!BEST PRICES IN TOWN!!!
IF YOU DON'T SEE IT ASK FOR IT!
Illegal wares shown by appointment only.
FREZONE (tm) explosive available."""
2019-04-14 23:09:56 +03:00
?CCL20: EQUAL? HERE,PET-STORE \?CCL22
2019-04-14 23:09:16 +03:00
PRINTI """SPECIAL!!! The best pet a lonely spacer could ever hope for!
"
PRINTD BALLOON
PRINTI "s are fascinating critters. Filled with hydrogen, they float freely through the air like small dirigibles.
2019-04-14 23:09:56 +03:00
With their translucent bodies and iridescent skin, they're a beautiful addition to the decor of any living bubble. Docile and friendly, "
PRINTD BALLOON
PRINTI "s are easy to care for, feeding on airborne spores!
2019-04-14 23:09:16 +03:00
Limited supply!! Order yours today!!""
You recall one fact about "
PRINTD BALLOON
PRINTR "s which the sign fails to mention: they propel themselves around by ejecting digestive gasses. This makes them one of the smelliest pets imaginable."
2019-04-14 23:09:56 +03:00
?CCL22: EQUAL? HERE,OPIUM-DEN \?CCL24
2019-04-14 23:09:16 +03:00
PRINTR "The sign is from the government's latest anti-drug crusade. It depicts the president of the Third Galactic Union, her hands crossed across her chest in a defiant pose, with the caption, ""Drugs are a no-no!"" You notice that someone has drawn a mustache on her."
2019-04-14 23:09:56 +03:00
?CCL24: PRINTR """TRADING POST VACUUM STORAGE AREA
2019-04-14 23:09:16 +03:00
Trespassers will be spaced!"""
.FUNCT EQUIPMENT-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?EXAMINE \?CCL3
EQUAL? HERE,ROBOT-POOL \?CCL6
2019-04-14 23:09:16 +03:00
PRINT ROBOT-POOL-EQUIPMENT-DESC
CRLF
RTRUE
2019-04-14 23:09:56 +03:00
?CCL6: PRINTR "Since this equipment has nothing to do with the filling out or filing of multi-part forms, it's far outside your area of expertise."
?CCL3: EQUAL? PRSA,V?USE \?CCL8
EQUAL? HERE,ROBOT-POOL \?CCL8
2019-04-14 23:09:16 +03:00
PRINTR "Put the form in the slot, you dolt!"
2019-04-14 23:09:56 +03:00
?CCL8: EQUAL? PRSA,V?OFF,V?ON \FALSE
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?EXAMINE,EQUIPMENT
RTRUE
.FUNCT FIXTURES-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?USE,V?WALK-TO,V?ENTER \?CCL3
2019-04-14 23:09:16 +03:00
PRINTR "This story doesn't go into that sort of detail."
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?ON,V?TAKE \FALSE
2019-04-14 23:09:16 +03:00
CALL NOUN-USED,W?SHOWER,FIXTURES
ZERO? STACK /FALSE
CALL PERFORM,V?USE,FIXTURES
RTRUE
.FUNCT HOLE-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?DRILL-HOLE \?CCL3
2019-04-14 23:09:16 +03:00
EQUAL? PRSO,HOLE /FALSE
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?DRILL \?CCL7
EQUAL? PRSO,HOLE \?CCL7
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?DRILL-HOLE,HOLE,WALLS
RTRUE
2019-04-14 23:09:56 +03:00
?CCL7: CALL PRSO-MOBY-VERB?
2019-04-14 23:09:16 +03:00
ZERO? STACK \FALSE
CALL PRSI-MOBY-VERB?
ZERO? STACK \FALSE
CALL CANT-SEE,HOLE
RSTACK
.FUNCT LADDER-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?CLIMB-UP \?CCL3
2019-04-14 23:09:16 +03:00
CALL DO-WALK,P?UP
RSTACK
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?CLIMB-DOWN \FALSE
2019-04-14 23:09:16 +03:00
CALL DO-WALK,P?DOWN
RSTACK
.FUNCT HANDS-F,ACTOR
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?APPLAUD \?CCL3
2019-04-14 23:09:16 +03:00
SET 'PRSO,FALSE-VALUE
RFALSE
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?SHAKE \?CCL5
2019-04-14 23:11:30 +03:00
CALL FIND-IN,HERE,ACTORBIT,STR?89 >ACTOR
2019-04-14 23:09:56 +03:00
ZERO? ACTOR /?CCL8
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?SHAKE-WITH,HANDS,ACTOR
RTRUE
2019-04-14 23:09:56 +03:00
?CCL8: PRINTR "Pleased to meet you."
?CCL5: EQUAL? PRSA,V?COUNT \?CCL10
2019-04-14 23:09:16 +03:00
CALL NOUN-USED,W?FINGER,HANDS
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CCL13
2019-04-14 23:09:16 +03:00
PRINTI "Ten"
2019-04-14 23:09:56 +03:00
JUMP ?CND11
?CCL13: PRINTI "Two"
?CND11: PRINTR ", as usual."
?CCL10: EQUAL? PRSA,V?CLEAN \?CCL15
2019-04-14 23:09:16 +03:00
PRINTR "Done."
2019-04-14 23:09:56 +03:00
?CCL15: EQUAL? PRSA,V?SHOOT \?CCL17
2019-04-14 23:11:30 +03:00
CALL JIGS-UP,STR?90
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:11:30 +03:00
?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
2019-04-14 23:09:16 +03:00
EQUAL? PRSI,HANDS \FALSE
CALL PERFORM,V?TAKE,PRSO
RTRUE
.FUNCT TONGUE-F
2019-04-14 23:11:30 +03:00
EQUAL? PRSA,V?RUN-OVER,V?PUT-ON \?CCL3
EQUAL? PRSO,TONGUE \?CCL3
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?TASTE,PRSI
RTRUE
2019-04-14 23:11:30 +03:00
?CCL3: EQUAL? PRSA,V?DRILL \FALSE
CALL HANDS-F
RSTACK
2019-04-14 23:09:16 +03:00
.FUNCT ME-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?TELL \?CCL3
2019-04-14 23:09:16 +03:00
PRINTI "Talking to yourself is a sign of impending mental collapse."
CRLF
CALL STOP
RSTACK
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?DRILL \?CCL5
2019-04-14 23:09:16 +03:00
PRINTR "Why bother? Based on that input, you already have holes in your head!"
2019-04-14 23:09:56 +03:00
?CCL5: EQUAL? PRSA,V?GIVE \?CCL7
EQUAL? PRSI,ME \?CCL7
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?TAKE,PRSO
RTRUE
2019-04-14 23:09:56 +03:00
?CCL7: EQUAL? PRSA,V?SHOW \?CCL11
EQUAL? PRSI,ME \?CCL11
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?EXAMINE,PRSO
RTRUE
2019-04-14 23:09:56 +03:00
?CCL11: EQUAL? PRSA,V?MOVE \?CCL15
2019-04-14 23:09:16 +03:00
CALL V-WALK-AROUND
RSTACK
2019-04-14 23:09:56 +03:00
?CCL15: EQUAL? PRSA,V?SEARCH \?CCL17
2019-04-14 23:09:16 +03:00
CALL V-INVENTORY
RSTACK
2019-04-14 23:09:56 +03:00
?CCL17: EQUAL? PRSA,V?MUNG,V?KILL \?CCL19
EQUAL? PRSO,ME \?CCL19
2019-04-14 23:11:30 +03:00
CALL JIGS-UP,STR?91
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:09:56 +03:00
?CCL19: EQUAL? PRSA,V?SHOOT \?CCL23
2019-04-14 23:11:30 +03:00
CALL JIGS-UP,STR?92
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:09:56 +03:00
?CCL23: EQUAL? PRSA,V?WHERE,V?FIND \?CCL25
2019-04-14 23:09:16 +03:00
PRINTI "You're in"
CALL TRPRINT,HERE
RSTACK
2019-04-14 23:09:56 +03:00
?CCL25: EQUAL? PRSA,V?FOLLOW \?CCL27
2019-04-14 23:09:16 +03:00
PRINTR "It would be hard not to."
2019-04-14 23:09:56 +03:00
?CCL27: EQUAL? PRSA,V?EXAMINE \?CCL29
CALL V-DIAGNOSE
RSTACK
?CCL29: EQUAL? PRSA,V?ALARM \?CCL31
2019-04-14 23:09:16 +03:00
PRINTR "You are!"
2019-04-14 23:09:56 +03:00
?CCL31: EQUAL? PRSA,V?TAKE \FALSE
2019-04-14 23:09:16 +03:00
PRINTR "How romantic!"
.FUNCT GRUE-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?WHAT \?CCL3
2019-04-14 23:09:16 +03:00
PRINTR "Grues are vicious, carnivorous beasts first introduced to Earth by an alien spaceship during the 22nd century. Grues spread throughout the galaxy alongside man. Now extinct on all civilized planets, they still exist in some backwater corners of the galaxy. Their favorite diet is Lieutenants First Class, but their insatiable appetite is tempered by their fear of light."
2019-04-14 23:09:56 +03:00
?CCL3: CALL TOUCHING?,GRUE
ZERO? STACK \?CCL5
EQUAL? PRSA,V?WALK-TO,V?EXAMINE \FALSE
?CCL5: PRINTR "There's no grue in sight, fortunately."
.FUNCT FORM-SLOT-F
EQUAL? PRSA,V?PUT \?CCL3
EQUAL? PRSI,PSEUDO-OBJECT \?CCL3
EQUAL? PRSO,CRUMPLED-FORM \?CCL8
PRINTR "The form's crumpledness prevents it from sliding into the slot."
?CCL8: EQUAL? PRSO,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM \?CCL10
EQUAL? HERE,SPACETRUCK \?CCL10
EQUAL? HERE,SPACETRUCK \?CCL15
2019-04-14 23:09:16 +03:00
CALL BOTH-SEATS-NOT-OCCUPIED
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CCL15
2019-04-14 23:09:16 +03:00
PRINTI "The form is spit back out. "
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?95
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:09:56 +03:00
?CCL15: REMOVE PRSO
FSET PRSO,NDESCBIT
PRINT FORM-ACCEPTED
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?96
2019-04-14 23:09:56 +03:00
RSTACK
?CCL10: EQUAL? PRSO,ROBOT-USE-AUTHORIZATION-FORM \?CCL19
EQUAL? HERE,ROBOT-POOL \?CCL19
REMOVE PRSO
FSET PRSO,NDESCBIT
PRINT FORM-ACCEPTED
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?97
2019-04-14 23:09:56 +03:00
RSTACK
?CCL19: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM \?CCL23
EQUAL? HERE,DECK-TWELVE \?CCL23
PRINT FORM-REJECTED
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?98
2019-04-14 23:09:56 +03:00
RSTACK
?CCL23: EQUAL? PRSO,VILLAGE-FORM \?CCL27
EQUAL? HERE,SOUTH-CONNECTION,EAST-CONNECTION \?CCL27
ZERO? VILLAGE-FORM-VALIDATED \?CCL32
PRINT FORM-REJECTED
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?98
2019-04-14 23:09:56 +03:00
RSTACK
?CCL32: ADD SCORE,6 >SCORE
2019-04-14 23:09:16 +03:00
INC 'ROBOT-EVILNESS
FSET IRIS-HATCH,OPENBIT
2019-04-14 23:09:56 +03:00
REMOVE PRSO
FSET PRSO,NDESCBIT
PRINTR "The hatch begins irising open, then sparks and smokes and grinds to a halt. However, it's about half dilated, wide enough to pass through. Beyond, you can see a small, dingy connecting tube, rather than the clean and brightly-lit Sub-Module connector you might have expected."
?CCL27: EQUAL? PRSO,ASSIGNMENT-COMPLETION-FORM,CLASS-THREE-SPACECRAFT-ACTIVATION-FORM,ROBOT-USE-AUTHORIZATION-FORM /?CTR33
EQUAL? PRSO,VILLAGE-FORM \?CCL34
?CTR33: PRINT FORM-REJECTED
2019-04-14 23:11:30 +03:00
CALL RECORDING,STR?99
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:09:56 +03:00
?CCL34: GETP P?SIZE,PRSO
LESS? STACK,3 \?CCL38
2019-04-14 23:09:16 +03:00
PRINTI "The slot swallows"
CALL TPRINT-PRSO
PRINTR " and then spits it back."
2019-04-14 23:11:30 +03:00
?CCL38: CALL DOESNT-FIT,STR?100
2019-04-14 23:09:16 +03:00
RSTACK
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?LOOK-INSIDE \FALSE
2019-04-14 23:09:16 +03:00
PRINT ONLY-BLACKNESS
RTRUE
2019-04-14 23:09:56 +03:00
.FUNCT BOTH-SEATS-NOT-OCCUPIED
IN? PROTAGONIST,PILOT-SEAT \?CCL3
IN? FLOYD,COPILOT-SEAT /FALSE
?CCL3: IN? PROTAGONIST,COPILOT-SEAT \TRUE
2019-04-14 23:11:30 +03:00
IN? FLOYD,PILOT-SEAT /FALSE
2019-04-14 23:09:56 +03:00
RTRUE
2019-04-14 23:09:16 +03:00
.FUNCT KEYPAD-F
EQUAL? PRSA,V?PUSH \FALSE
RANDOM 10
SUB STACK,1 >P-NUMBER
PRINTI "Randomly, you hit "
PRINTN P-NUMBER
PRINTI ". "
CALL PERFORM,V?TYPE,INTNUM
RTRUE
.FUNCT FURNISHING-F
2019-04-14 23:11:30 +03:00
EQUAL? PRSA,V?SEARCH,V?OPEN,V?ENTER /?CTR2
EQUAL? PRSA,V?EXAMINE,V?LOOK-INSIDE \?CCL3
2019-04-14 23:09:56 +03:00
?CTR2: PRINTR "You merely find a few personal items of little interest."
?CCL3: EQUAL? PRSA,V?PUT-ON,V?PUT \FALSE
2019-04-14 23:09:16 +03:00
PRINTI "The "
PRINTD PRSI
PRINTI " is such a mess that you can't find a good spot to put"
CALL TRPRINT,PRSO
RSTACK
2019-04-14 23:11:30 +03:00
.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
2019-04-14 23:09:16 +03:00
.FUNCT BED-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?WALK-TO \?CCL3
2019-04-14 23:09:16 +03:00
CALL GLOBAL-IN?,BED,HERE
2019-04-14 23:09:56 +03:00
ZERO? STACK \?CCL3
2019-04-14 23:09:16 +03:00
PRINTR "There's no bed here!"
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSA,V?WALK-TO,V?ENTER \?CCL7
2019-04-14 23:11:30 +03:00
ZERO? STUNNED /?CCL10
CALL YOURE-STUNNED
RSTACK
?CCL10: GRTR? SLEEPY-LEVEL,0 \?CCL12
2019-04-14 23:09:16 +03:00
MOVE PROTAGONIST,BED
CALL QUEUE,I-FALL-ASLEEP,22
CALL DEQUEUE,I-SLEEP-WARNINGS
PRINTR "Ahhh...the bed is soft and comfortable. You should be asleep in short order."
2019-04-14 23:11:30 +03:00
?CCL12: MOVE PROTAGONIST,BED
2019-04-14 23:09:16 +03:00
PRINTR "You are now in bed."
2019-04-14 23:11:30 +03:00
?CCL7: EQUAL? PRSA,V?EXIT,V?STAND,V?DISEMBARK /?PRD16
EQUAL? PRSA,V?DROP \?CCL14
?PRD16: CALL QUEUED?,I-FALL-ASLEEP
ZERO? STACK /?CCL14
2019-04-14 23:09:56 +03:00
PRINTR "But you're so tired and this bed is so comfy!"
2019-04-14 23:11:30 +03:00
?CCL14: EQUAL? PRSA,V?DROP,V?EXIT,V?LEAVE \?CCL20
2019-04-14 23:09:16 +03:00
CALL PERFORM,V?DISEMBARK,BED
RTRUE
2019-04-14 23:11:30 +03:00
?CCL20: EQUAL? PRSA,V?PUT-ON,V?PUT \?CCL22
EQUAL? PRSI,BED \?CCL22
2019-04-14 23:09:16 +03:00
MOVE PRSO,HERE
PRINTI "The "
PRINTD PRSO
2019-04-14 23:09:56 +03:00
PRINTI " bounces off the bed"
PRINT LANDS-ON-FLOOR
CRLF
RTRUE
2019-04-14 23:11:30 +03:00
?CCL22: EQUAL? PRSA,V?LOOK-UNDER \?CCL26
IN? PROTAGONIST,BED \?CCL26
2019-04-14 23:09:56 +03:00
PRINTR "You're IN the bed, so unless you have X-ray vision..."
2019-04-14 23:11:30 +03:00
?CCL26: EQUAL? PRSA,V?LOOK-UNDER \?CCL30
EQUAL? HERE,COMMANDERS-QUARTERS \?CCL30
FSET? VALIDATION-STAMP,TOUCHBIT /?CCL30
2019-04-14 23:09:16 +03:00
FSET VALIDATION-STAMP,TOUCHBIT
MOVE VALIDATION-STAMP,HERE
CALL THIS-IS-IT,VALIDATION-STAMP
2019-04-14 23:09:56 +03:00
PRINTI "You discover a "
PRINTD VALIDATION-STAMP
PRINTR "!"
2019-04-14 23:11:30 +03:00
?CCL30: EQUAL? PRSA,V?SHOOT,V?KILL,V?DRILL \FALSE
2019-04-14 23:09:56 +03:00
PRINTR "That would be a clear case of mattresscide!"
2019-04-14 23:09:16 +03:00
.FUNCT SLEEP-F
EQUAL? PRSA,V?TAKE,V?WALK-TO \FALSE
CALL V-SLEEP
RSTACK
.FUNCT I-SLEEP-WARNINGS
2019-04-14 23:09:56 +03:00
IN? WELDER,HERE \?PRD4
GRTR? SLEEPY-LEVEL,3 /?CCL2
2019-04-14 23:11:30 +03:00
?PRD4: ZERO? STUNNED /?CND1
2019-04-14 23:09:56 +03:00
?CCL2: CALL QUEUE,I-HUNGER-WARNINGS,2
2019-04-14 23:09:16 +03:00
RFALSE
?CND1: INC 'SLEEPY-LEVEL
PRINTI " "
2019-04-14 23:11:30 +03:00
IN? PROTAGONIST,BED \?CCL9
2019-04-14 23:09:16 +03:00
CALL DEQUEUE,I-SLEEP-WARNINGS
CALL QUEUE,I-FALL-ASLEEP,16
2019-04-14 23:11:30 +03:00
PRINTI "You suddenly realize how tired you were and how comfortable the bed is. You should be asleep in no time."
CRLF
JUMP ?CND7
?CCL9: EQUAL? SLEEPY-LEVEL,1 \?CCL11
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-SLEEP-WARNINGS,320
2019-04-14 23:11:30 +03:00
PRINTI "You begin to feel weary. It might be time to think about finding a nice safe place to sleep."
CRLF
JUMP ?CND7
?CCL11: EQUAL? SLEEPY-LEVEL,2 \?CCL13
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-SLEEP-WARNINGS,160
2019-04-14 23:11:30 +03:00
PRINTI "You're really tired now. You'd better find a place to sleep real soon."
CRLF
JUMP ?CND7
?CCL13: EQUAL? SLEEPY-LEVEL,3 \?CCL15
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-SLEEP-WARNINGS,80
2019-04-14 23:11:30 +03:00
PRINTI "If you don't get some sleep soon you'll probably drop."
CRLF
JUMP ?CND7
?CCL15: EQUAL? SLEEPY-LEVEL,4 \?CCL17
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-SLEEP-WARNINGS,40
2019-04-14 23:11:30 +03:00
PRINTI "You can barely keep your eyes open."
CRLF
JUMP ?CND7
?CCL17: EQUAL? HERE,BED \?CCL20
2019-04-14 23:09:16 +03:00
PRINTI "You slowly sink into a deep and blissful sleep."
2019-04-14 23:11:30 +03:00
JUMP ?CND18
?CCL20: CALL GLOBAL-IN?,BED,HERE
ZERO? STACK /?CCL22
2019-04-14 23:09:16 +03:00
MOVE PROTAGONIST,BED
PRINTI "You climb into one of the beds and immediately fall asleep."
2019-04-14 23:11:30 +03:00
JUMP ?CND18
?CCL22: PRINT YOU-CANT
2019-04-14 23:09:16 +03:00
PRINTI "stay awake a moment longer. You drop "
2019-04-14 23:11:30 +03:00
IN? PROTAGONIST,HERE \?CND23
FSET? HERE,WEIGHTLESSBIT /?CND23
2019-04-14 23:09:16 +03:00
PRINTI "to the deck and fall "
2019-04-14 23:11:30 +03:00
?CND23: PRINTI "into a deep but fitful sleep."
?CND18: CALL WAKING-UP
?CND7: IN? PROTAGONIST,BED /FALSE
CALL STOP
2019-04-14 23:09:16 +03:00
RSTACK
.FUNCT I-FALL-ASLEEP
IN? WELDER,HERE \?CND1
CALL QUEUE,I-FALL-ASLEEP,2
?CND1: PRINTI " You slowly sink into a deep sleep."
CALL DEQUEUE,I-FALL-ASLEEP
CALL WAKING-UP
RSTACK
.FUNCT WAKING-UP,X,N,?TMP1
CRLF
CRLF
2019-04-14 23:09:56 +03:00
IN? PROTAGONIST,BED /?CND1
MOVE PROTAGONIST,HERE
?CND1: FSET? SPACESUIT,WORNBIT \?CCL5
2019-04-14 23:11:30 +03:00
CALL JIGS-UP,STR?107
2019-04-14 23:09:56 +03:00
JUMP ?CND3
?CCL5: EQUAL? COURSE-PICKED,RIGHT-COURSE /?CCL7
EQUAL? HERE,SPACETRUCK \?CCL7
PRINTI "You wake up gasping for air! The "
PRINTD SPACETRUCK-OBJECT
2019-04-14 23:09:16 +03:00
CALL RUNNING?,I-SPACETRUCK
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CCL12
2019-04-14 23:09:16 +03:00
PRINTI " is dead in uncharted space and it"
2019-04-14 23:09:56 +03:00
JUMP ?CND10
?CCL12: PRINTC 39
?CND10: PRINTI "s oxygen is running out!"
2019-04-14 23:09:16 +03:00
CRLF
CALL I-SUFFOCATE
2019-04-14 23:09:56 +03:00
JUMP ?CND3
?CCL7: EQUAL? SPACETRUCK-COUNTER,-1 \?CCL14
2019-04-14 23:09:16 +03:00
PRINTI "A clanging noise wakes you up, and you slowly become aware that you are in the Duffy's brig, and furthermore, you are wearing the uniform of an Ensign Ninth Class! You trace the clanging noise to a pipe in your cell.
Placing your ear against the pipe, you hear, ""Psst! Grapevine news! Some dumb kripping "
PRINT LFC
2019-04-14 23:09:56 +03:00
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!""
2019-04-14 23:09:16 +03:00
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
2019-04-14 23:11:30 +03:00
CALL JIGS-UP,STR?9
2019-04-14 23:09:56 +03:00
JUMP ?CND3
?CCL14: IN? PROTAGONIST,HERE \?PRD18
FSET? DOCKING-BAY-2,TOUCHBIT \?PRD18
2019-04-14 23:09:16 +03:00
MUL DAY,40 >?TMP1
RANDOM 100
2019-04-14 23:09:56 +03:00
LESS? ?TMP1,STACK \?CTR15
?PRD18: CALL ULTIMATELY-IN?,OSTRICH-NIP
2019-04-14 23:11:30 +03:00
ZERO? STACK /?PRD22
IN? OSTRICH,HERE /?CTR15
?PRD22: IN? EXPLOSIVE,DRILLED-HOLE \?CCL16
?CTR15: CALL JIGS-UP,STR?108
JUMP ?CND3
?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
2019-04-14 23:09:56 +03:00
JUMP ?CND3
2019-04-14 23:11:30 +03:00
?CCL26: RANDOM 100
2019-04-14 23:09:56 +03:00
LESS? 60,STACK /?CND3
2019-04-14 23:09:16 +03:00
PRINTI "..."
CALL PICK-ONE,DREAMS
PRINT STACK
2019-04-14 23:09:56 +03:00
PRINT ELLIPSIS
?CND3: INC 'DAY
2019-04-14 23:09:16 +03:00
INC 'ROBOT-EVILNESS
CALL I-ROBOT-EVILNESS
2019-04-14 23:11:30 +03:00
SET 'TIMER-SETTING,0
CALL DEQUEUE,I-TIMER
2019-04-14 23:09:16 +03:00
SET 'SLEEPY-LEVEL,0
SET 'SUIT-PRESSED,FALSE-VALUE
SET 'FLOYD-ANGUISHED,FALSE-VALUE
RANDOM 80
ADD 1600,STACK >INTERNAL-MOVES
2019-04-14 23:11:30 +03:00
GRTR? DAY,2 \?CCL37
2019-04-14 23:09:16 +03:00
SET 'MOVES,9947
2019-04-14 23:11:30 +03:00
JUMP ?CND35
?CCL37: CALL QUEUE,I-MESSAGE,943
2019-04-14 23:09:56 +03:00
ADD SCORE,3 >SCORE
2019-04-14 23:09:16 +03:00
SET 'MOVES,INTERNAL-MOVES
2019-04-14 23:11:30 +03:00
?CND35: FCLEAR AUTO-DOOR,TOUCHBIT
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-SLEEP-WARNINGS,5900
2019-04-14 23:09:56 +03:00
CALL ULTIMATELY-IN?,EXPLOSIVE,VACUUM-STORAGE
2019-04-14 23:11:30 +03:00
ZERO? STACK \?CND38
2019-04-14 23:09:56 +03:00
MOVE EXPLOSIVE,DECK-TWELVE
CALL REMOVE-CAREFULLY,EXPLOSIVE
2019-04-14 23:09:16 +03:00
CALL DEQUEUE,I-EXPLOSIVE-MELT
2019-04-14 23:11:30 +03:00
?CND38: FSET? HEADLAMP,ONBIT \?CND40
2019-04-14 23:09:16 +03:00
FCLEAR HEADLAMP,ACTIVEBIT
FCLEAR HEADLAMP,ONBIT
SET 'HEADLAMP-COUNTER,0
2019-04-14 23:11:30 +03:00
?CND40: CALL RUNNING?,I-LOG-READER
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
2019-04-14 23:09:56 +03:00
SET 'SOUP-WARMTH,0
2019-04-14 23:11:30 +03:00
JUMP ?CND44
?CCL48: SUB SOUP-WARMTH,30 >SOUP-WARMTH
?CND44: FSET OSTRICH,TOUCHBIT
2019-04-14 23:09:56 +03:00
CALL ROB,PROTAGONIST,HERE
2019-04-14 23:09:16 +03:00
USL
PRINTI "***** NOVEM "
ADD DAY,3
PRINTN STACK
PRINTI ", 11349 *****"
CRLF
CRLF
PRINTI "You awake "
2019-04-14 23:11:30 +03:00
ZERO? LIT \?CCL51
2019-04-14 23:09:56 +03:00
PRINTI "in darkness."
2019-04-14 23:11:30 +03:00
JUMP ?CND49
?CCL51: CALL QUEUED?,I-LIGHTS-OUT
ZERO? STACK /?CCL53
2019-04-14 23:09:16 +03:00
CALL DEQUEUE,I-LIGHTS-OUT
CALL I-LIGHTS-OUT,TRUE-VALUE
PRINTI "slowly, aware that something has changed. Aha! The lights have all gone out while you slept!"
2019-04-14 23:11:30 +03:00
JUMP ?CND49
?CCL53: LOC PROTAGONIST
EQUAL? STACK,BED,PILOT-SEAT,COPILOT-SEAT \?CCL55
2019-04-14 23:09:16 +03:00
PRINTI "feeling refreshed and ready to face anything this new day might care to throw at you."
2019-04-14 23:11:30 +03:00
JUMP ?CND49
?CCL55: PRINTI "and slowly stand up, feeling stiff from your uncomfortable night's sleep."
?CND49: EQUAL? DAY,4 \?CND56
FSET? SAFE,OPENBIT /?CCL60
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-LIGHTS-OUT,177
2019-04-14 23:11:30 +03:00
JUMP ?CND56
?CCL60: CALL QUEUED?,I-ANNOUNCEMENT
ZERO? STACK \?CND56
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-ANNOUNCEMENT,383
2019-04-14 23:11:30 +03:00
?CND56: GRTR? HUNGER-LEVEL,0 \?CCL64
2019-04-14 23:09:16 +03:00
SET 'HUNGER-LEVEL,3
CALL QUEUE,I-HUNGER-WARNINGS,200
PRINTI " You're also incredibly famished. Better get some breakfast!"
2019-04-14 23:11:30 +03:00
JUMP ?CND62
?CCL64: CALL QUEUE,I-HUNGER-WARNINGS,400
?CND62: CRLF
2019-04-14 23:09:16 +03:00
CALL RUNNING?,I-SPACETRUCK
2019-04-14 23:11:30 +03:00
ZERO? STACK /?CND65
EQUAL? COURSE-PICKED,RIGHT-COURSE \?CND65
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-WELDER,-1
CALL DEQUEUE,I-SPACETRUCK
2019-04-14 23:09:56 +03:00
FCLEAR SPACETRUCK,WEIGHTLESSBIT
2019-04-14 23:09:16 +03:00
ADD SCORE,5 >SCORE
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."
CRLF
2019-04-14 23:11:30 +03:00
?CND65: EQUAL? DAY,3 \?CND69
2019-04-14 23:09:16 +03:00
FCLEAR ELEVATOR,WEIGHTLESSBIT
FSET EXERCISE-MACHINE,TOUCHBIT
MOVE EXERCISE-MACHINE,COMPUTER-CONTROL
2019-04-14 23:09:56 +03:00
CALL ROB,EXERCISE-MACHINE,GYM
2019-04-14 23:11:30 +03:00
FSET? CHRONOMETER,WORNBIT \?CND69
2019-04-14 23:09:16 +03:00
PRINTI " "
CALL PERFORM,V?EXAMINE,CHRONOMETER
2019-04-14 23:11:30 +03:00
?CND69: FSET? FLOYD,ACTIVEBIT \?CND73
IN? FLOYD,FACTORY /?CND73
EQUAL? HERE,AIRLOCK /?CND73
2019-04-14 23:09:16 +03:00
SET 'FLOYD-SPOKE,TRUE-VALUE
PRINTI " Floyd "
2019-04-14 23:11:30 +03:00
GRTR? ROBOT-EVILNESS,13 \?CCL80
2019-04-14 23:09:56 +03:00
PRINTI "is rudely kicking you"
2019-04-14 23:11:30 +03:00
IN? PROTAGONIST,BED \?CND81
2019-04-14 23:09:56 +03:00
PRINTI "r mattress"
2019-04-14 23:11:30 +03:00
?CND81: PRINTI ". ""Trot it! Will you kripping wake up already? Floyd getting bored!"""
2019-04-14 23:09:16 +03:00
CRLF
2019-04-14 23:11:30 +03:00
JUMP ?CND78
?CCL80: PRINTI "bounces impatiently at "
IN? PROTAGONIST,BED \?CCL85
2019-04-14 23:09:16 +03:00
PRINTI "the foot of the bed"
2019-04-14 23:11:30 +03:00
JUMP ?CND83
?CCL85: PRINTI "your side"
?CND83: ZERO? PLATO-INTRODUCED /?CND86
ZERO? PLATO-ATTACK-COUNTER \?CND86
2019-04-14 23:09:16 +03:00
MOVE PLATO,HERE
PRINTI ". Plato is nearby, leafing through his book"
2019-04-14 23:11:30 +03:00
?CND86: ZERO? PLATO-INTRODUCED \?CCL92
2019-04-14 23:09:16 +03:00
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
CALL I-PLATO,TRUE-VALUE
2019-04-14 23:11:30 +03:00
JUMP ?CND78
?CCL92: PRINTI ". ""About time you woke up, you lazy "
GRTR? ROBOT-EVILNESS,9 \?CCL95
2019-04-14 23:09:56 +03:00
PRINTI "slob!"" says Floyd. ""It's getting pretty trotting dull around he"
2019-04-14 23:11:30 +03:00
JUMP ?CND93
?CCL95: PRINTI "bones!"" says Floyd. ""Let's explore around some mo"
?CND93: PRINTI "re!"""
2019-04-14 23:09:56 +03:00
CRLF
2019-04-14 23:11:30 +03:00
?CND78: MOVE FLOYD,HERE
?CND73: ZERO? LIT /?CND96
2019-04-14 23:09:16 +03:00
CRLF
CALL V-LOOK
2019-04-14 23:11:30 +03:00
?CND96: CALL STOP
2019-04-14 23:09:16 +03:00
RSTACK
.FUNCT I-HUNGER-WARNINGS
2019-04-14 23:11:30 +03:00
ZERO? STUNNED /?CND1
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-HUNGER-WARNINGS,2
RFALSE
?CND1: INC 'HUNGER-LEVEL
PRINTI " "
2019-04-14 23:11:30 +03:00
EQUAL? HUNGER-LEVEL,1 \?CCL5
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-HUNGER-WARNINGS,450
2019-04-14 23:11:30 +03:00
PRINTI "A growl from your stomach warns that you're getting pretty hungry and thirsty."
CRLF
JUMP ?CND3
?CCL5: EQUAL? HUNGER-LEVEL,2 \?CCL7
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-HUNGER-WARNINGS,300
2019-04-14 23:11:30 +03:00
PRINTI "You're now really ravenous and your lips are quite parched."
CRLF
JUMP ?CND3
?CCL7: EQUAL? HUNGER-LEVEL,3 \?CCL9
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-HUNGER-WARNINGS,150
2019-04-14 23:11:30 +03:00
PRINTI "You're starting to feel faint from lack of food and liquid."
CRLF
JUMP ?CND3
?CCL9: EQUAL? HUNGER-LEVEL,4 \?CCL11
2019-04-14 23:09:16 +03:00
CALL QUEUE,I-HUNGER-WARNINGS,150
2019-04-14 23:11:30 +03:00
PRINTI "If you don't eat or drink something in a few millichrons, you'll probably pass out."
CRLF
JUMP ?CND3
?CCL11: EQUAL? HUNGER-LEVEL,5 \?CND3
CALL JIGS-UP,STR?110
?CND3: CALL STOP
2019-04-14 23:09:16 +03:00
RSTACK
.FUNCT WELDER-F
2019-04-14 23:09:56 +03:00
EQUAL? PRSA,V?EXAMINE \?CCL3
EQUAL? WELDER-COUNTER,1 \?CCL6
2019-04-14 23:09:16 +03:00
PRINTI "This welder, which is marked ""Welder Number "
GET WELDER-TABLE,WELDER-TABLE-POINTER
PRINTN STACK
PRINTR ","" seems to be moving purposefully toward you, its welding extensions quivering with...excitement?"
2019-04-14 23:09:56 +03:00
?CCL6: EQUAL? WELDER-COUNTER,2 \?CCL8
2019-04-14 23:09:16 +03:00
PRINTR "There definitely seems to be something menacing about its behavior."
2019-04-14 23:09:56 +03:00
?CCL8: PRINTR "The welder is now almost upon you!"
?CCL3: EQUAL? PRSA,V?WHAT \?CCL10
PRINTI "A "
PRINTD WELDER
PRINTI " is a very simple machine which repairs any leaks or holes in the hull of any sort of space habitat. Because of the potentially catastrophic effects of a break in the integrity of a hull on the habitat's air supply, "
PRINTD WELDER
PRINTR "s are kept active at all times, roaming around with their sensing devices alert for the tiniest leak."
?CCL10: EQUAL? PRSA,V?SHOOT \?CCL12
2019-04-14 23:09:16 +03:00
REMOVE WELDER
2019-04-14 23:09:56 +03:00
GET WELDER-TABLE,NUMBER-OF-WELDERS
PUT WELDER-TABLE,WELDER-TABLE-POINTER,STACK
2019-04-14 23:09:16 +03:00
DEC 'NUMBER-OF-WELDERS
SET 'WELDER-COUNTER,0
2019-04-14 23:09:56 +03:00
ZERO? NUMBER-OF-WELDERS \?CND13
2019-04-14 23:09:16 +03:00
CALL DEQUEUE,I-WELDER
2019-04-14 23:09:56 +03:00
?CND13: PRINTI "The welder is enveloped by red-hot plasma rays. It glows ever brighter in the heat of the rays, seems to shimmer like a mirage, and then suddenly vanishes! A wave of hot vapor pushes you backwards."
CALL VISIBLE?,EXPLOSIVE
ZERO? STACK /?CND15
PRINTI " As the heat wave hits the explosive, it "
PRINT SUBLIMES-INTO-FREZONE
2019-04-14 23:11:30 +03:00
CALL DEQUEUE,I-EXPLOSIVE-MELT
2019-04-14 23:09:56 +03:00
CALL REMOVE-CAREFULLY,EXPLOSIVE
?CND15: IN? OSTRICH,HERE \?CCL19
FSET? OSTRICH,TOUCHBIT \?CCL19
2019-04-14 23:09:16 +03:00
PRINTC 32
CALL PERFORM,V?SCARE,OSTRICH
RSTACK
2019-04-14 23:09:56 +03:00
?CCL19: CRLF
2019-04-14 23:09:16 +03:00
RTRUE
2019-04-14 23:09:56 +03:00
?CCL12: EQUAL? PRSA,V?OFF \?CCL23
2019-04-14 23:09:16 +03:00
PRINTR "There's no apparent on-off switch."
2019-04-14 23:09:56 +03:00
?CCL23: EQUAL? PRSA,V?ON \?CCL25
2019-04-14 23:09:16 +03:00
PRINTR "It is!"
2019-04-14 23:09:56 +03:00
?CCL25: EQUAL? PRSA,V?MUNG,V?KILL \FALSE
2019-04-14 23:09:16 +03:00
PRINTR "It's doubtful that you could even make a dent in the welder."
.FUNCT TOUCHING?,THING
2019-04-14 23:09:56 +03:00
EQUAL? PRSO,THING \?CCL3
2019-04-14 23:09:16 +03:00
EQUAL? PRSA,V?TAKE,V?TOUCH,V?SHAKE /TRUE
EQUAL? PRSA,V?CLEAN,V?KISS,V?ENTER /TRUE
EQUAL? PRSA,V?PUSH,V?CLOSE,V?LOOK-UNDER /TRUE
EQUAL? PRSA,V?MOVE,V?OPEN,V?KNOCK /TRUE
EQUAL? PRSA,V?SET,V?SHAKE,V?RAISE /TRUE
EQUAL? PRSA,V?UNLOCK,V?LOCK,V?HUG /TRUE
EQUAL? PRSA,V?CLIMB-UP,V?CLIMB-DOWN,V?CLIMB-ON /TRUE
EQUAL? PRSA,V?ON,V?OFF,V?THROW /TRUE
EQUAL? PRSA,V?TASTE,V?BITE,V?TICKLE /TRUE
EQUAL? PRSA,V?LOOK-INSIDE,V?STAND-ON,V?TIE /TRUE
EQUAL? PRSA,V?MUNG,V?KICK,V?KILL /TRUE
EQUAL? PRSA,V?KNOCK,V?CUT,V?PUSH /TRUE
EQUAL? PRSA,V?SEARCH /TRUE
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSI,THING \FALSE
EQUAL? PRSA,V?PUT-ON,V?PUT,V?GIVE /TRUE
RFALSE
2019-04-14 23:09:16 +03:00
2019-04-14 23:09:56 +03:00
.FUNCT CANT-SEE,OBJ
2019-04-14 23:09:16 +03:00
SET 'P-WON,FALSE-VALUE
PRINT YOU-CANT
PRINTI "see"
2019-04-14 23:11:30 +03:00
EQUAL? PRSO,OBJ \?CCL5
GET P-NAMW,0
JUMP ?CND3
?CCL5: GET P-NAMW,1
?CND3: CALL NAME?,STACK
2019-04-14 23:09:16 +03:00
ZERO? STACK \?CND1
2019-04-14 23:09:56 +03:00
PRINTI " any"
2019-04-14 23:11:30 +03:00
?CND1: EQUAL? OBJ,PRSI \?CCL8
2019-04-14 23:09:16 +03:00
CALL PRSI-PRINT
2019-04-14 23:11:30 +03:00
JUMP ?CND6
?CCL8: CALL PRSO-PRINT
?CND6: PRINTI " here."
2019-04-14 23:09:16 +03:00
CRLF
CALL STOP
RSTACK
.FUNCT CANT-VERB-A-PRSO,STRING
PRINT YOU-CANT
PRINT STRING
CALL APRINT,PRSO
PRINTR "!"
.FUNCT TELL-HIT-HEAD
PRINTI "You hit your head against"
CALL TPRINT-PRSO
PRINTR " as you attempt this."
.FUNCT REMOVE-CAREFULLY,OBJ,ALSO=0
2019-04-14 23:09:56 +03:00
ZERO? TIMER-CONNECTED /?CCL3
EQUAL? OBJ,TIMER,DETONATOR \?CCL3
2019-04-14 23:09:16 +03:00
SET 'TIMER-CONNECTED,FALSE-VALUE
SET 'ALSO,TRUE-VALUE
2019-04-14 23:11:30 +03:00
CALL VISIBLE?,TIMER
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CND1
PRINTI " (The timer is"
PRINT NO-LONGER-ATTACHED
2019-04-14 23:09:16 +03:00
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL3: ZERO? EXPLOSIVE-CONNECTED /?CND1
2019-04-14 23:09:16 +03:00
EQUAL? OBJ,EXPLOSIVE,DETONATOR \?CND1
SET 'EXPLOSIVE-CONNECTED,FALSE-VALUE
2019-04-14 23:11:30 +03:00
CALL VISIBLE?,EXPLOSIVE
2019-04-14 23:09:56 +03:00
ZERO? STACK /?CND1
PRINTI " (The explosive is"
ZERO? ALSO /?CND13
PRINTI " also"
?CND13: PRINT NO-LONGER-ATTACHED
2019-04-14 23:11:30 +03:00
?CND1: IN? EXPLOSIVE,THERMOS \?CND15
FSET? THERMOS,OPENBIT /?CND15
SET 'THERMOS-FILLED-WITH-GAS,TRUE-VALUE
?CND15: FSET OBJ,TOUCHBIT
2019-04-14 23:09:16 +03:00
FCLEAR OBJ,TRYTAKEBIT
REMOVE OBJ
RTRUE
.FUNCT NOUN-USED,TEST-NOUN,OBJ
2019-04-14 23:09:56 +03:00
EQUAL? PRSO,OBJ \?CCL3
2019-04-14 23:09:16 +03:00
GET P-NAMW,0
EQUAL? STACK,TEST-NOUN /TRUE
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSI,OBJ \FALSE
2019-04-14 23:09:16 +03:00
GET P-NAMW,1
2019-04-14 23:09:56 +03:00
EQUAL? STACK,TEST-NOUN /TRUE
RFALSE
2019-04-14 23:09:16 +03:00
.FUNCT ADJ-USED,TEST-ADJ,OBJ
2019-04-14 23:09:56 +03:00
EQUAL? PRSO,OBJ \?CCL3
2019-04-14 23:09:16 +03:00
GET P-ADJW,0
EQUAL? TEST-ADJ,STACK /TRUE
2019-04-14 23:09:56 +03:00
?CCL3: EQUAL? PRSI,OBJ \FALSE
2019-04-14 23:09:16 +03:00
GET P-ADJW,1
2019-04-14 23:09:56 +03:00
EQUAL? TEST-ADJ,STACK /TRUE
RFALSE
2019-04-14 23:09:16 +03:00
.FUNCT OPEN-CLOSED,OBJ
2019-04-14 23:09:56 +03:00
FSET? OBJ,OPENBIT \?CCL3
2019-04-14 23:09:16 +03:00
PRINTI "open"
RTRUE
2019-04-14 23:09:56 +03:00
?CCL3: PRINTI "closed"
2019-04-14 23:09:16 +03:00
RTRUE
.FUNCT WEE
SET 'AWAITING-REPLY,1
ADD C-ELAPSED,2
CALL QUEUE,I-REPLY,STACK
PRINTR "Wasn't that fun?"
.FUNCT CANT-REACH,OBJ
PRINT YOU-CANT
PRINTI "reach"
CALL TPRINT,OBJ
2019-04-14 23:09:56 +03:00
ZERO? HANGING-IN-AIR /?CCL3
2019-04-14 23:09:16 +03:00
PRINTI " while you're hanging way up here"
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL3: IN? PROTAGONIST,HERE /?CCL5
2019-04-14 23:09:16 +03:00
PRINTI " from"
LOC PROTAGONIST
CALL TPRINT,STACK
2019-04-14 23:09:56 +03:00
JUMP ?CND1
?CCL5: EQUAL? PRSO,HELEN,REX,FLOYD \?CND1
EQUAL? PRSO,ROBOT-PICKED /?CND1
PRINTI " from outside the bin"
2019-04-14 23:09:16 +03:00
?CND1: PRINT PERIOD-CR
2019-04-14 23:11:30 +03:00
ZERO? P-MULT \TRUE
2019-04-14 23:09:16 +03:00
CALL STOP
RSTACK
.FUNCT DO-FIRST,STRING,OBJ=0
PRINT YOULL-HAVE-TO
PRINT STRING
ZERO? OBJ /?CND1
CALL TPRINT,OBJ
?CND1: PRINTI " first."
CRLF
2019-04-14 23:11:30 +03:00
ZERO? P-MULT \TRUE
RETURN 8
2019-04-14 23:09:16 +03:00
.FUNCT DOESNT-FIT,STRING
PRINTI "Unsurprisingly,"
CALL TPRINT-PRSO
PRINTI " doesn't fit the "
PRINT STRING
PRINT PERIOD-CR
RTRUE
.FUNCT NOT-IN
PRINTI "But"
CALL TPRINT-PRSO
PRINTI " isn't "
2019-04-14 23:09:56 +03:00
FSET? PRSI,ACTORBIT \?CCL3
2019-04-14 23:09:16 +03:00
PRINTI "being held by"
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL3: FSET? PRSI,SURFACEBIT \?CCL5
2019-04-14 23:09:16 +03:00
PRINTI "on"
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL5: PRINTI "in"
2019-04-14 23:09:16 +03:00
?CND1: CALL TRPRINT,PRSI
RSTACK
.FUNCT CANT-USE-THAT-WAY,STRING
PRINTC 91
PRINT YOU-CANT
PRINTI "use "
PRINT STRING
PRINTR " that way.]"
.FUNCT RECOGNIZE
SET 'P-WON,FALSE-VALUE
PRINTR "[That sentence isn't one I recognize.]"
.FUNCT PRONOUN
2019-04-14 23:09:56 +03:00
EQUAL? PRSO,ME \?CCL3
2019-04-14 23:09:16 +03:00
PRINTI "You"
RTRUE
2019-04-14 23:09:56 +03:00
?CCL3: FSET? PRSO,PLURALBIT \?CCL5
2019-04-14 23:09:16 +03:00
PRINTI "They"
RTRUE
2019-04-14 23:09:56 +03:00
?CCL5: FSET? PRSO,ACTORBIT \?CCL7
2019-04-14 23:09:16 +03:00
PRINTI "He"
RTRUE
2019-04-14 23:09:56 +03:00
?CCL7: PRINTI "It"
2019-04-14 23:09:16 +03:00
RTRUE
.FUNCT REFERRING,HIM-HER=0
PRINTI "I don't see wh"
2019-04-14 23:09:56 +03:00
ZERO? HIM-HER /?CCL3
2019-04-14 23:09:16 +03:00
PRINTC 111
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL3: PRINTI "at"
2019-04-14 23:09:16 +03:00
?CND1: PRINTR " you're referring to."
.FUNCT ANTI-LITTER,OBJ
REMOVE OBJ
PRINTI ". The "
2019-04-14 23:09:56 +03:00
EQUAL? OBJ,LEASH \?CCL3
PRINTI "leash"
2019-04-14 23:09:16 +03:00
JUMP ?CND1
2019-04-14 23:09:56 +03:00
?CCL3: PRINTI "cup"
?CND1: PRINTI " instantly vaporizes, part of the galactic anti-litter program."
EQUAL? OBJ,LEASH /TRUE
CRLF
RTRUE
2019-04-14 23:09:16 +03:00
2019-04-14 23:11:30 +03:00
.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
2019-04-14 23:09:16 +03:00
.ENDI