-
Notifications
You must be signed in to change notification settings - Fork 23
/
Copy pathobjects.zil
1667 lines (1543 loc) · 60.2 KB
/
objects.zil
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
"OBJECTS for
SUSPENDED
(c) Copyright 1982 Infocom, Inc. All Rights Reserved.
"
;"OBJECTS & ASSOCIATED ACTIONS FOR SUSPENDED"
<OBJECT HOME
(IN CPU-ROOM)
(FLAGS CONTBIT TOUCHBIT NDESCBIT)
(DESC "HOME")
(OBJDESCS <PLTABLE
1 1 1 1 1 1 "tall column""hollow column""electrical column""noiseless column""sweet home""CPU" 0 0 0 0 0 0>)
(SYNONYM COLUMN HOME CPU DOOR)
(CLC-TXT <PLTABLE "The column houses our supervisor and over-seeing control unit: YOU." "Keep the door to the column closed. Life-support wires run from the inner door surface directly to your body." "See the information on Franklin in your manual.">)
(ADJECTIVE TALL HOLLOW ELECTR HIGH SWEET)
(ACTION OOPS-FCN)>
<GLOBAL OOPS-QUIPS
<PLTABLE "Okay, I've opened it. OH MY GOD!!!"
"Grasping mechanisms have accomplished the task. Sonar detects -- BLECH!"
"Sensory mechanisms indicate the door has been opened.|
WARNING! Biochemical electrical activity dropping!"
"I hear the door opening and the heavy sigh of a human."
"Okey Dokey. Man, you look like death warmed over!"
"CLC indicates extreme danger to you, though the door has been opened.">>
<ROUTINE OOPS-FCN ()
<COND (<VERB? OPEN>
<ROBOT-TELL <GET ,OOPS-QUIPS ,ROFF>>
<TELL
"As the door swings open you are blinded by intense light and incredible
pain. Just before everything overloads and you fade from existence, you can
make out a shape outside, holding onto the door of the cylinder, and then
everything goes dark." CR>
<CRLF>
<QUIT>)>>
<OBJECT PANEL
(IN IRIS)
(FLAGS CONTBIT NDESCBIT)
(CAPACITY 16)
(SYNONYM BARRIER PANEL MP1 DOOR)
(ADJECTIVE MAINTE ACCESS SMOOTH METAL TRANSM)
(DESC "panel")
(ACTION PANEL-FCN)
(CLC-TXT <PLTABLE "It is merely an openable panel." "Open the panel with care." 0>)
(OBJDESCS <PLTABLE
"My eyestalks can't swivel that far."
"A maintenance panel can be detected beneath my extensions."
"Iris's central core is near exposure, the area from which all data is
transmitted." 0
"Exposure to the elemental realities, baring one's essence, is what Iris
is currently concerned with."
"CLC tagged object MP1 is now exposed."
"maintenance panel" "smooth metal panel" "transmission barrier"
"muted mechanism" "door" "MP1"
"My maintenance panel has openings which fit a robot extension. Beneath it is my delicate visual circuitry."
"My extensions detect places which I can grasp to open it."
"The barrier itself emits no specific vibrations. It is inert."
"The object makes no sound, though muted noises come from beneath it."
"The door into Iris is like the window to our souls."
"MP1 is an internal plate, CLC tagged.">)>
<ROUTINE PANEL-FCN ("AUX" STR)
<COND (<VERB? LOOK EXAMINE>
<COND (<AND <FSET? ,PANEL ,OPENBIT>
<NOT
<EQUAL? <SET STR <GET <GETP ,PANEL ,P?OBJDESCS>
<+ ,RTOFF ,ROFF>>> 0>>>
<ROBOT-TELL .STR>
<TELL "The " D ,PANEL " is open." CR>
<RTRUE>)>)
(<VERB? OPEN>
<COND (<NOT <WALDO?>>
<ROBOT-TELL "I'm not equipped to do that to the "<>>
<TELL D ,PANEL "." CR>
<RTRUE>)
(<NOT <FSET? ,SURGERY-HAND ,WEARBIT>>
<ROBOT-TELL
"It's too delicate for my normal extensions.">)
(,IRIS-FIXED
<ROBOT-TELL "Opened.">
<FSET ,PANEL ,OPENBIT>
<TELL CR <GET ,INTER-TBL 1>
" Hey! Who turned the lights out?" CR>
<SETG IRIS-FIXED <>>)>)
(<AND <VERB? CLOSE>
<NOT <WALDO?>>>
<ROBOT-TELL "I'm not equipped to do that to the "<>>
<TELL D ,PANEL "." CR>
<RTRUE>)
(<VERB? CLOSE>
<ROBOT-TELL "Closed.">
<FCLEAR ,PANEL ,OPENBIT>
<COND (<AND <IN? ,NEWCHIP1 ,PANEL>
<IN? ,CHIP2 ,PANEL>
<IN? ,CHIPS0 ,PANEL>>
<COND (<NOT ,IRIS-FIXED>
<SETG IRIS-FIXED T>
<TELL CR <GET ,INTER-TBL 1>
" You never looked so good." CR>)>)
(T
<COND (,IRIS-FIXED
<SETG IRIS-FIXED <>>
<TELL CR <GET ,INTER-TBL 1>
" Where'd everybody go?" CR>)>)>
<RTRUE>)>>
<OBJECT CHIPS0
(IN PANEL)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM CHIPS CHIP DEVICE ZERO)
(ADJECTIVE QUIET ZERO RED SMOOTH POLARI CX0 BRAIN)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "red chip""smooth device""polarized device""quiet device""brain zero""CX0 chip" 0 0 0 0 0 0 >)
(DESC "chip")
(CLC-TXT <PLTABLE "This chip is a polarization processor (CX0)." 0 0>)
(ACTION CHIPFILTER-FCN)>
<OBJECT CHIP1
(IN PANEL)
(SYNONYM CHIP CHIPS DEVICE UNO)
(ADJECTIVE SCANNI BRAIN ROUGH BLUE SMALL DELICATE CX1)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "blue chip" "rough device" "scanning device" "silent device" "brain uno" "CX1 chip" 0 0 "This device has been electrically fried." 0 0 0 "Electrons can no longer find flow paths through this brain." >)
(FLAGS TAKEBIT TOUCHBIT)
(DESC "obj")
(CLC-TXT <PLTABLE "This chip is a scanning processor (CX1)." 0 0>)
(ACTION CHIPFILTER-FCN)>
<OBJECT CHIP2
(IN PANEL)
(SYNONYM CHIP CHIPS DEVICE DOS)
(ADJECTIVE NOISEL BRAIN BUMPY SMALL FILTERING YELLOW CX2)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "small yellow chip""bumpy device"
"filtering device" "noiseless device""brain dos""CX2 chip"0 0 0 0 0 0 >)
(FLAGS TAKEBIT TOUCHBIT)
(DESC "obj")
(CLC-TXT <PLTABLE "This chip is a filtering processor (CX2)." 0 0>)
(ACTION CHIPFILTER-FCN)>
<OBJECT BASKET
(IN SUPPLIES-MID)
(FLAGS OPENBIT CONTBIT TAKEBIT SEARCHBIT)
(SYNONYM CONTAI BASKET BA1)
(ADJECTIVE HOLLOW SMALL OPEN)
(DESC "BASKET")
(CAPACITY 26)
(OBJDESCS <PLTABLE
"Among the rubble I can see a little basket, sitting on the floor."
"I just bumped into a small object which has an open top."
"I perceive a small container which holds several small devices." 0
"Contained spirits, like thoughts, fly from reach."
"CLC tagged object BA1." "little wire basket" "hollow container" "small container" "soundless container" "basket of goodies for Grandma""BA1"
"It is a small, wire basket, designed for robot gripping extensions."
"It is made of woven wire and has a small handle which fits my extensions."
"The unique frame is suggested by the way it reflects electrons."
"Listening to it is boring."
"A tisket, a tasket, what's that in your basket?"
"CLC tagged object is a basket.">)
(ACTION BASKET-FCN)>
<ROUTINE BASKET-FCN ()
<COND (<VERB? CLIMB-ON STAND-ON STEP-ON>
<ROBOT-TELL "It won't support my weight.">
<RTRUE>)>>
<OBJECT FIRST-FRIED
(IN SOCKET1)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM CHIPS CHIP DEVICE TRES)
(ADJECTIVE SLEEPY TRES BURNED DISFIG RUINED CX3 BRAIN)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "burned chip""disfigured device""ruined device""sleepy device""brain tres""CX3 chip" 0 0 0 0 0 0 >)
(DESC "chip")
(CLC-TXT <PLTABLE "This chip is a switching processor (CX3)." 0 0>)
(ACTION CHIPFILTER-FCN)>
<OBJECT NEXT-FRIED
(IN SOCKET2)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM CHIPS CHIP DEVICE QUART)
(ADJECTIVE SNOOZY QUART FRIED BUBBLY SEIZED CX4 BRAIN)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "fried chip""bubbly device""seized device""snoozy device""brain quart""CX4 chip" 0 0 0 0 0 0 >)
(DESC "chip")
(CLC-TXT <PLTABLE "This chip is a replacement switching processor (CX4)." 0 0>)
(ACTION CHIPFILTER-FCN)>
<OBJECT NEWCHIP1
(IN BASKET)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM IC OBJECT PLAIN)
(ADJECTIVE RX1 BLUE ROUGH BRAIN SILENT SCANNI)
(DESC "IC")
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "blue IC""rough object""scanning object""silent object""brain plain""RX1 IC"0 0 0 0 0 0 >)
(ACTION CHIPFILTER-FCN)
(CLC-TXT <PLTABLE "This chip is a replacement scanning processor (RX1)." 0 0>)>
<OBJECT NEWCHIP0
(IN BASKET)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM IC OBJECT ZIP)
(ADJECTIVE RX0 RED SMOOTH QUIET BRAIN POLARI)
(DESC "IC")
(CLC-TXT <PLTABLE "This chip is a replacement polarization processor (RX0)." 0 0>)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "red IC""smooth object""polarized object""quiet object""brain zip""RX0 IC" 0 0 0 0 0 0 >)
(ACTION CHIPFILTER-FCN)>
<OBJECT NEWCHIP2
(IN BASKET)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM IC OBJECT TWO)
(ADJECTIVE RX2 BRAIN BUMPY NOISEL YELLOW FILTERING)
(DESC "IC")
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "yellow IC""bumpy object""filtering object""noiseless object""brain two""RX2 IC" 0 0 0 0 0 0 >)
(ACTION CHIPFILTER-FCN)
(CLC-TXT <PLTABLE "This chip is a replacement filtering processor (RX2)." 0 0>)>
<OBJECT NEWCHIP3
(IN BASKET)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM IC OBJECT TRIO)
(ADJECTIVE RX3 GREEN WAVY NONVERBAL BRAIN MAXIMI)
(DESC "IC")
(CLC-TXT <PLTABLE "This chip is a replacement maximizing processor (RX3)." 0 0>)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "green IC""wavy object""maximized object""nonverbal object""brain trio""RX3 IC" 0 0 0 0 0 0 >)
(ACTION CHIPFILTER-FCN)>
<OBJECT NEWCHIP4
(IN BASKET)
(FLAGS TAKEBIT TOUCHBIT)
(SYNONYM IC OBJECT QUARTE)
(ADJECTIVE RX4 PLAID PEBBLE SHHHHH BRAIN BUSS)
(DESC "IC")
(CLC-TXT <PLTABLE "This chip is a replacement buss processor (RX4)." 0 0>)
(OBJDESCS <PLTABLE 1 1 1 0 1 1 "plaid IC""pebbled object""buss object""shhhhh object""brain quartet""RX4 IC" 0 0 0 0 0 0 >)
(ACTION CHIPFILTER-FCN)>
<ROUTINE CHIPFILTER-FCN ()
<COND (<AND <VERB? TAKE>
<IN? ,PRSO ,PANEL>
<NOT <FSET? ,PANEL ,OPENBIT>>>
<CANT-DETECT ,PRSO>
<RFATAL>)
(<VERB? PUT>
<COND (<EQUAL? ,PRSI ,SOCKET1 ,SOCKET2>
<COND (<FIRST? ,PRSI>
<ROBOT-TELL "The " <>>
<TELL D ,PRSI " is already full." CR>
<RTRUE>)>
<MOVE ,PRSO ,PRSI>
<ROBOT-TELL "Done.">
<COND (<EQUAL? ,PRSO ,NEWCHIP1 ,NEWCHIP2>
<COND (<SENSA?>
<TELL "Surges of electricity flow." CR>)
(<POET?>
<TELL
"I can't place the tune, but I recognize the humming." CR>)
(<WHIZ?>
<TELL "Device now warming up." CR>)>)>
<RTRUE>)
(<EQUAL? ,PRSI ,IRIS>
<PERFORM ,PRSA ,PRSO ,PANEL>
<RTRUE>)>)>>
<OBJECT WIRECUTTER
(IN TOPSHELF)
(OBJDESCS <PLTABLE
"Sitting on the top shelf is a pair of wire cutters."
"Sonar detects a small tool which could be used for cutting, sitting on the top
shelf."
"Vibrational output from the top shelf shows a small metal object there."
0
"Among the various things in life I've learned, it's to examine all shelving.
This one has a slicer on it."
"CLC tagged object CU1 sits on top of the shelf."
"pair of cutters"
"cutting tool"
"metal tool"
"noiseless object"
"life slicer"
"CU1"
0 0 0 0 0 0>)
(SYNONYM CU1 TOOL CUTTERS SLICER)
(CLC-TXT <PLTABLE "This is a standard cutting instrument." "It can prove useful for salvaging wires and cables." 0>)
(ADJECTIVE LIFE WIRE LITTLE CUTTING NOISEL METAL)
(FLAGS TAKEBIT TOOLBIT)>
<OBJECT TOPSHELF
(IN TOOL-AREA)
(DESC "top shelf")
(FLAGS OPENBIT CONTBIT TOUCHBIT SURFACEBIT)
(OBJDESCS <PLTABLE 0 1 1 0 1 1
0 "high extending holder" "stable holder" 0 "furthest holder" "TS"
0 "It appears to be a solid, long extension from the wall."
"It is inert, transmitting and receiving no vibrations." 0
"Perhaps the most useful adjunct to the modern, everyday living situation is
the proper use of space."
"TS appears to be little more than a piece of furniture.">)
(SYNONYM TS HOLDER SHELF)
(ACTION TOPSHELF-FCN)
(ADJECTIVE HIGH EXTENDING TOP FURTHEST FARTHEST STABLE)
(CAPACITY 50)>
<ROUTINE TOPSHELF-FCN ("AUX" TBL)
<COND (<AND <VERB? LOOK-INSIDE>
<NOT ,ON-WEDGE>>
<ROBOT-TELL "It's too high up there.">)
(<VERB? CLOSE>
<ROBOT-YUKS>
<RTRUE>)>>
<OBJECT WEDGE
(IN SUPPLIES-SOUTH)
(SYNONYM WEDGE OBJECT RAMP W1)
(ADJECTIVE NOISEL SOLID RISING FALLIN SLANTING DENSE)
(FLAGS CLIMBBIT TAKEBIT SURFACEBIT FURNITURE)
(OBJDESCS <PLTABLE
"A steep, wedge-shaped ramp sits under some rubble near the wall."
"A slanting object seems distinct from the surrounding jumble of
debris."
"Nothing within this environment emits singular vibrations, but an
object does send out a CLC identifier."
0
"To rise and fall, and climb new heights, to descend the pit of robot
despair."
"CLC object W1 transmitting identifier wave from this location."
"ramp"
"solid wedge"
"dense wedge"
"noiseless wedge"
"slanting wedge"
"W1"
"It looks like a useful wedge, an incline which could be used for
getting up and down areas where steps might stop us."
"It feels solid and sturdy. It is large enough for me to use as a ramp."
"The object is totally inert, emitting nothing but an identifier signal
on the CLC channel."
0
"Much like see-saws of our lives, this provides the opportunity to
descend and rise above our normal stations, oh slanter."
"CLC data indicate this wedge is normally used for descent and climbing
from level to level.">)
(ACTION WEDGE2-FCN)
(CLC-TXT <PLTABLE 0 "This 'wedge' can be used as a step or small platform." 0>)
(SIZE 15)>
<ROUTINE WEDGE2-FCN ("AUX" OFFSET)
<SET OFFSET <GETP ,WINNER ,P?ROBOT>>
<COND (<VERB? CLIMB-ON>
<COND (<IN? ,WEDGE ,WINNER-HERE>
<COND (<NOT ,ON-WEDGE>
<SETG ON-WEDGE .OFFSET>
<ROBOT-TELL "Okay. I'm standing on the " <>>
<TELL D ,WEDGE " now." CR>
<RTRUE>)
(ELSE
<COND (<EQUAL? .OFFSET ,ON-WEDGE>
<ROBOT-TELL "I'm already on it.">)
(ELSE
<ROBOT-TELL "Not while another robot is already on it.">)>
<RTRUE>)>)
(ELSE
<COND (<IN? ,WEDGE ,WINNER>
<ROBOT-TELL "Not while I'm grasping it.">)
(ELSE
<CANT-DETECT ,WEDGE>
<RTRUE>)>)>)
(<AND <VERB? TAKE>
,ON-WEDGE>
<COND (<EQUAL? .OFFSET ,ON-WEDGE>
<TELL "(getting off " D ,WEDGE ")" CR>
<SETG ON-WEDGE <>>
<RFALSE>)
(ELSE
<ROBOT-TELL "Not while another robot is on it.">
<RTRUE>)>)
(<VERB? TAKE-OFF>
<PERFORM ,V?GET-OFF ,PRSO>
<RTRUE>)>>
;<OBJECT EMPTYSHELF
(IN SUPPLIES-SOUTH)
(DESC "EMPTY SHELF")
(FLAGS OPENBIT CONTBIT TOUCHBIT SURFACEBIT NDESCBIT)
(OBJDESCS <PLTABLE
1 1 1 0 1 1
"shelf" "wall extension" "inert surface" 0 "surface" "S-3"
0 0 0 0 0 0>)
(SYNONYM SHELF SURFAC S-3)
(ADJECTIVE WALL EXTENS INERT)>
<OBJECT SURGERY-HAND
(IN SUPPLIES-MID)
(FLAGS TOOLBIT TAKEBIT WEARABLEBIT)
(SYNONYM MH1 EXTENS GRASPER OBJECT)
(ADJECTIVE ARM-SHAPED MICROSURGERY SMALL USABLE MICRO TINGIN)
(OBJDESCS <PLTABLE
"Sitting on the floor, beneath the broken shelves, sits an extension device,
a microsurgery hand."
"Sonar detects an arm-shaped extension lying nearby."
"A small object emits a weak signal, specifically oriented toward
Waldo."
"I can hear a small 'tinging' from an object on the floor."
"It is something we can all grasp, something to embrace, whose presence I
detect."
"CLC tagged object MH1 emitting identifier signal."
"microsurgery extension"
"usable extension"
"micro extension"
"tinging object"
"grasper"
"MH1"
"It looks like a delicate extension to me."
"I feel the extension and recognize it as belonging to me. I can utilize
it for microsurgery repairs."
"It emits electrical impulses which are attuned to Waldo, and only
Waldo."
"The pinging or tinging sound it emits is on the wavelength attuned to
Waldo."
"A problem to grapple with, a handy solution, and an extension of Waldo
in his incarnation."
"CLC tagged object offers no further data unless CLC accessed directly." > )
(CLC-TXT <PLTABLE 0 "It looks like a simple waldo for Waldo, in a sense. It has small extensions on it which could probably be used for micro-surgery or something like that." 0>)
(ACTION WALDO-ONLY-FCN)>
<ROUTINE WALDO-ONLY-FCN ()
<COND (<AND <NOT <WALDO?>>
<VERB? WEAR>>
<ROBOT-TELL "I'm not equipped to do that.">
<RTRUE>)>>
<OBJECT CABINET
(IN REPAIR3)
(FLAGS CONTBIT)
(DESC "cabinet")
(SYNONYM CAGE CB3 CABINE OBJECT)
(ADJECTIVE LARGE HOLLOW EMITTING CIRCUI)
(ACTION CABINET-FCN)
(CAPACITY 100)
(OBJDESCS <PLTABLE 0
"A large object sits before me. Sonar indicates it is hollow, but not
empty."
"A large object emits strange flows, its surface a tracery of filament-like
circuitry. The circuitry is concentrated near the center of one side."
0
"A cage to hold our ancestry sits on the floor, meek and timid, yet unwilling
to openly share."
"CLC tagged object CB3 located within this environment."
0 "hollow object" "large object" 0 "cage" "CB3"
0 0
"Concentrated on the front surface of the large object is a flowswitch." 0
"Further information regarding the cage can be gained if I touch it." 0
"Data bits flow within the surface of the cage, concentrated in a circle.">)
(CLC-TXT <PLTABLE "This container has a special locking mechanism." "Poet and Sensa can both perceive special characteristics of it." 0>)>
<ROUTINE CABINET-FCN ()
<COND (<VERB? OPEN>
<ROBOT-TELL "I don't detect any easy way to do that.">
<RTRUE>)
(<AND <OR <POET?> <SENSA?>>
<VERB? TOUCH EXAMINE>>
<FCLEAR ,FLOWSWITCH ,INVISIBLE>
<RFALSE>)
(<AND <VERB? CLOSE>
<FSET? ,CABINET ,OPENBIT>>
<SETG FLOWSWITCH-TURNED <>>
<RFALSE>)>>
<OBJECT FLOWSWITCH
(IN REPAIR3)
(FLAGS INVISIBLE NDESCBIT TURNBIT)
(DESC "flowswitch")
(SYNONYM PLATES FLOWSWITCH SWITCH CIRCLE)
(ADJECTIVE FLOW ROUND)
(OBJDESCS <PLTABLE
0 0 "flowswitch" 0 "lock" 0
"flowswitch" "flowswitch" "flowswitch" "flowswitch" "lock" "flowswitch"
0 0
"The flowswitch is a series of plates which must be properly lined up to allow
proper electron flow." 0
"This is actually a flowswitch which must be turned, allowing proper
electron flow." 0
"Sensa has the ability to turn the plates and detect when they are properly
aligned.">)
(ACTION FLOWSWITCH-FCN)
(CLC-TXT <PLTABLE "The flowswitch is actually electrical 'plates' of polarity which can be properly aligned." 0 0>)>
<GLOBAL FLOWSWITCH-TURNED <>>
<ROUTINE FLOWSWITCH-FCN ()
<COND (<VERB? TURN>
<COND (<NOT <SENSA?>>
<ROBOT-TELL "I can't seem to make it work.">)
(T
<COND (,FLOWSWITCH-TURNED
<ROBOT-TELL "It's already been turned.">)
(ELSE
<SETG FLOWSWITCH-TURNED T>
<FSET ,CABINET ,OPENBIT>
<ROBOT-TELL "The flow of electrons aligns and the panel opens.">
<FSET ,CABINET ,TOUCHBIT>
<TELL <GET <GETP ,DEADBOT ,P?OBJDESCS> ,ROFF> CR>
<RTRUE>)>)>)
(<AND <VERB? EXAMINE>
<SENSA?>>
<ROBOT-TELL
"I feel the vibrations running through this flowswitch. The outer plate and
the inner plates must be aligned properly for it to work.">)>>
<OBJECT DEADBOT
(IN CABINET)
(SYNONYM MECHAN CONSTRUCT DEVICE FRED)
(ADJECTIVE BROKEN UNTAGG)
(FLAGS TAKEBIT)
(SIZE 200)
(ACTION DEADBOT-FCN)
(OBJDESCS <PLTABLE 0
"An open mechanism with similar parts to myself sits here, totally immobile."
"Miles of circuitry rest within the device sitting here, though it no longer
seems operational."
"A broken construct sits here, totally immobile."
"There once was a robot named Fred,|
Who never conceived being dead.|
But late in the night,|
A terrible fright|
Left him clearly without his own head."
"There is a device here which the CLC cannot identify."
0
"broken mechanism"
"broken device"
"broken construct"
"FRED"
"device the CLC cannot identify"
0 0 0 0 0 0>)
(CLC-TXT <PLTABLE "This robot is a dead and departed robot who is totally beyond repair." "There may be some salvageable parts inside it." "This robot was an all-purpose, multi-function robot which proved inadequate for maintenance purposes.">)>
<ROUTINE DEADBOT-FCN ()
<COND (<VERB? TAKE PUT-ON>
<ROBOT-TELL "I can't manage it. The " <>>
<TELL D ,DEADBOT " is too heavy." CR>
<RTRUE>)
(<VERB? MOVE>
<ROBOT-TELL "I tried, but I failed.">
<RTRUE>)
(<VERB? EXAMINE>
<COND (<AND <NOT <FSET? ,REDWIRE ,TOUCHBIT>>
<IN? ,DEADBOT ,REPAIR3>>
<ROBOT-TELL "There's a " <>>
<TELL D ,REDWIRE " here that might prove useful." CR>
<RTRUE>)
(T <RFALSE>)>)>>
<OBJECT REDWIRE
(IN REPAIR3)
(FLAGS CUTABLEBIT INVISIBLE TAKEBIT)
(DESC "wire")
(OBJDESCS <PLTABLE
1
"I can feel a bunch of smooth wire coming out of the mechanism."
"A group of conductors extend from the once-electronic mechanism."
"The broken device seems beyond repairing."
"The currents of life are easily visible now."
"A CR streams out of the untagged device."
"twelve-inch red cable"
"twelve-inch cable"
"twelve-inch cable"
"twelve-inch cable"
"twelve-inch cable"
"twelve-inch cable"
0 0 0 0 0 0>)
(ADJECTIVE SMOOTH BUNCH CURRENT GROUP TWELVE)
(SYNONYM WIRE LIFE CONDUC CABLE)
(ACTION REDWIRE-FCN)>
<ROUTINE REDWIRE-FCN ()
<COND (<AND <VERB? TAKE REMOVE REPLACE>
<NOT <FSET? ,REDWIRE ,CUTBIT>>>
<ROBOT-TELL "The " <>>
<TELL D ,REDWIRE " is firmly attached to the " D ,DEADBOT
". I'll need a tool to remove it." CR>
<RTRUE>)
(<AND <VERB? CUT>
<EQUAL? ,PRSI ,SURGERY-HAND>>
<ROBOT-TELL "The " <>>
<TELL D ,REDWIRE " is too thick and would ruin the "
D ,SURGERY-HAND "." CR>)
(<AND <VERB? PUT PUT-ON>
<IN? ,WINNER ,TUBE2>
<EQUAL? ,PRSI ,GROOVE2>
<NOT <IN? ,REDCABLE ,GROOVE2>>>
<SETG REDSET ,REDWIRE>
<RFALSE>)>>
<OBJECT CAR
(IN HALL-END)
(FLAGS VEHBIT)
(DESC "vehicle")
(OBJDESCS <PLTABLE 0
"Sonar also detects a large hollow container sitting at the head of the long
tunnel."
"Sensors detect an egg-shaped object, large enough for me to enter, sitting at
the head of the long tunnel."
"The crackling ozone is muffled by a large object sitting before it."
"Before me sits a carriage of ancient splendor."
"Mobile CLC tagged object CAR is at the head of the tunnel."
0 "container" "egg-shaped object" "large object" "carriage" "CAR"
0 0 0 0 0 0 "The carriage is a complex mechanism capable of transporting one robot at a time over large distances and is in good working order." >)
(ACTION CAR-FCN)
(SYNONYM CONTAI OBJECT CARRIAGE CAR)
(ADJECTIVE HOLLOW LARGE MOBILE EGG-SHAPED)
(CLC-TXT <PLTABLE "Operating this vehicle is as simple as entering it." "Use this to get to the Biological Area and back." "This device was introduced after maintaining the Biological Area became necessary.">)>
<ROUTINE CAR-FCN ("OPTIONAL" (RARG ,M-OBJECT))
<COND (<EQUAL? .RARG ,M-LOOK>
<TELL "Through the " D ,CAR " I can detect the following:" CR>
<TELL <GET <GETP <LOC ,CAR> ,P?ROOMDESCS> ,ROFF> CR> <RTRUE>)
(<EQUAL? .RARG ,M-BEG>
<COND (<AND <VERB? TAKE>
<IN? ,PRSO ,WINNER-HERE>>
<ROBOT-TELL "I can't reach it from here."> <RTRUE>)
(<AND <VERB? DROP>
<IN? ,PRSO ,WINNER>>
<ROBOT-TELL
"There's no convenient place to put anything down.">
<RTRUE>)
(<VERB? THROW>
<COND (<IN? ,PRSO ,WINNER>
<ROBOT-TELL "Thrown.">
<MOVE ,PRSO <LOC ,CAR>>
<RTRUE>)
(ELSE
<CANT-DETECT ,PRSO>
<RTRUE>)>)
(<VERB? WALK WALK-TO FOLLOW MOVE-ROBOT-TO-LOC>
<ROBOT-TELL
"An unlikely request, considering where I am.">)>)
(<EQUAL? .RARG ,M-OBJECT>
<COND (<VERB? LOOK-INSIDE>
<COND (<NOT <EQUAL? ,CAR-FULL 0>>
<ROBOT-TELL "I can detect " <>>
<TELL D ,CAR-FULL>
<TELL " inside the " D ,CAR "." CR>)
(ELSE
<ROBOT-TELL
"I can detect nothing inside of it.">)>
<RTRUE>)>)>>
<OBJECT WDIAL1
(IN WEATHER)
(FLAGS TOUCHBIT NDESCBIT TURNBIT)
(DESC "first dial")
(OBJDESCS <PLTABLE
0 1 1 0 1 1
0 "first dial" "first dial" "first dial" "first dial" "first dial"
0 "I can feel gradations etched into the dial which go from 0 to 100." "The dial is a variable potentiometer which has 100 settings." 0 "The dial can be set from 0 to 100 and is in proper working order."0"The dial is in working order.">)
(SYNONYM DIAL)
(ADJECTIVE FIRST)
(DIAL 1)
(CLC-TXT <PLTABLE "It is a simple dial with numbers etched into its surface." "Turn these dials to override the FCs and set the pressure manually." 0>)>
<OBJECT WDIAL3
(IN WEATHER)
(FLAGS NDESCBIT TOUCHBIT TURNBIT)
(DESC "third dial")
(OBJDESCS <PLTABLE
0 1 1 0 1 1
"third dial" "third dial" "third dial" "third dial" "third dial" "third dial"
0 "I can feel gradations etched into the dial which go from 0 to 100." "The dial is a variable potentiometer which has 100 settings." 0 "The dial can be set from 0 to 100 and is in proper working order." 0 "The dial is in working order.">)
(SYNONYM DIAL)
(ADJECTIVE THIRD)
(DIAL 3)
(CLC-TXT <PLTABLE "It is a simple dial with numbers etched into its surface." "Turn these dials to override the FCs and set the pressure manually." 0>)>
<OBJECT WDIAL2
(IN WEATHER)
(FLAGS TOUCHBIT NDESCBIT TURNBIT)
(DESC "second dial")
(OBJDESCS <PLTABLE
0 1 1 0 1 1
0 "second dial" "second dial" "second dial" "second dial" "second dial"
0 "I can feel gradations etched into the dial which go from 0 to 100." "The dial is a variable potentiometer which has 100 settings." 0 "The dial can be set from 0 to 100 and is in proper working order." 0 "The dial is in working order.">)
(SYNONYM DIAL)
(ADJECTIVE SECOND)
(DIAL 2)
(CLC-TXT <PLTABLE "It is a simple dial with numbers etched into its surface." "Turn these dials to override the FCs and set the pressure manually." 0>)>
<OBJECT CLONESWITCH
(IN CRYOUNITS)
(FLAGS NDESCBIT TURNBIT)
(DESC "switch")
(SYNONYM ROD SWITCH)
(ADJECTIVE ELECTR LARGE STRAIG)
(OBJDESCS <PLTABLE
0 1 1 0 1 1
0 "switch""switch""switch""switch""switch"
0 0 0 0 0 0>)
(ACTION CLONESWITCH-FCN)>
<ROUTINE CLONESWITCH-FCN ()
<COND (<AND <VERB? THROW>
<EQUAL? ,PRSI ,WHEEL ,CLONESWITCH>>
<RFALSE>)
(<VERB? TOUCH TURN THROW PUSH SET MOVE TAKE>
<COND (,ON-WEDGE
<ROBOT-TELL
"It's still out of my reach. Perhaps a creature of larger proportions would be able to help turn this thing.">)
(T
<ROBOT-TELL "It's too far out of reach.">)>
<RTRUE>)>>
<OBJECT WHEEL
(IN FCMAINT)
(FLAGS TURNBIT)
(DESC "WHEEL")
(SYNONYM WHEEL WH OBJECT DEVICE)
(ADJECTIVE CIRCUL HISSIN MECHAN)
(OBJDESCS <PLTABLE 0
"I can detect a wheel, high overhead, with tubular structures running out of it, much like pipes."
"I can detect the pressure backup regulating mechanism high overhead here as it regulates and monitors hydraulic pressures."
"I can hear the gurgling of liquid overhead as it rushes through pipes and a regulatory wheel high overhead."
"You press the first valve down, the acid goes round and round, oh oh oh oh, oh oh and it comes out here."
"CLC tagged regulatory device WH detected overhead." "wheel""wheel""wheel""wheel""wheel""WH" 0 0 0 0 0 0>)
(ACTION CLONESWITCH-FCN)
(CLC-TXT <PLTABLE "This wheel controls the cooling acids which circulate through the Filtering Computers." 0 0>)>
<OBJECT TV
(IN BIO-LAB)
(FLAGS TAKEBIT CONTBIT)
(DESC "camera")
(OBJDESCS <PLTABLE
1
"Sitting on the floor is a small sphere which has a jack trailing from it."
"I can detect a small device which is capable of transmitting signals on the RF band."
0
"A device useful for getting me to become a star is located nearby."
"CLC tagged device TV1 sits on the floor by a table."
"television camera" "small sphere" "transmitter" "television camera" "sender" "TV1"
0
"There are small grasping areas on it which correspond to my graspers."
"The device needs to be plugged in in order for it to be operational."
"It makes no sounds."
"Hey, baby, hang around Schwab's long enough and ... who knows?"
"This device seems linked with Iris.">)
(SYNONYM TRANSM SENDER DEVICE SPHERE)
(CLC-TXT <PLTABLE "This is a complex television camera which links directly to Iris." "It can be activated by plugging it in at the correct location." 0>)
(ADJECTIVE PROJECTION TV1 SMALL CAMERA JACK TV TELEVI)
(ACTION TV-FCN)>
<GLOBAL TV-QUIPS
<PLTABLE
0
"I detect a vibration from it as it comes on."
"Electricity flows and RF transmissions begin."
"I hear it click on."
"We're on location, all systems go."
"CLC indicates object now functioning.">>
<ROUTINE TV-FCN ()
<COND (<VERB? CLIMB-ON STAND-ON STEP-ON>
<ROBOT-TELL "It won't support my weight.">
<RTRUE>)
(<AND <VERB? PLUGIN>
<NOT <EQUAL? <LOC ,WINNER> ,TUBE1 ,TUBE2>>>
<ROBOT-TELL "The jack doesn't fit anything in this area.">
<RTRUE>)
(<VERB? PLUGIN>
<COND (<AND ,PRSI
<NOT <EQUAL? ,PRSI ,TVHOLE>>>
<ROBOT-TELL "I can't plug it into that.">
<RTRUE>)
(<NOT <IN? ,TV ,WINNER>>
<ROBOT-TELL "I can't. I'm not holding it.">
<RTRUE>)
(,TV-ON
<ROBOT-TELL "It's already plugged in.">)
(T
<ROBOT-TELL "I've plugged it in. " <>>
<TELL <GET ,TV-QUIPS ,ROFF> CR>
<COND (<AND <NOT <FSET? ,IRIS ,CUTBIT>>
,IRIS-FIXED>
<CRLF>
<TELL <GET ,INTER-TBL 1>
" Receiving transmissions." CR>)>)>
<SETG TV-ON T>)
(<VERB? OPEN>
<ROBOT-TELL "It's not a jack-in-the-box, you know.">)
(<VERB? UNPLUG>
<ROBOT-TELL "The " <>>
<TELL D ,TV " has been unplugged." CR>
<SETG TV-ON <>>)
(<AND <VERB? TAKE>
<NOT <FSET? ,TV ,TOUCHBIT>>>
<GENERATE-CODES>
<RFALSE>)>>
<OBJECT REDCABLE
(IN GROOVE2)
(DESC "red cable")
(SYNONYM CABLE)
(ADJECTIVE FOUR-INCH)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION REDCABLE-FCN)
(OBJDESCS <PLTABLE
1 1 1 1 1 1
"red four-inch cable""four-inch cable""four-inch cable""four-inch cable""four-inch cable""four-inch cable"
0 0
"The electrical flow within this cable seems irregular." 0
"The data transmissions within this cable are irregular. Immediate replacement
recommended." 0>)>
<OBJECT YELLOWCABLE
(IN GROOVE2)
(DESC "yellow cable")
(SYNONYM CABLE)
(ADJECTIVE EIGHTEEN)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"eighteen-inch yellow cable""eighteen-inch cable""eighteen-inch cable""eighteen-inch cable""eighteen-inch cable""eighteen-inch cable"
0 0 0 0 0 0>)>
<OBJECT GREENCABLE
(IN GROOVE2)
(DESC "green cable")
(SYNONYM CABLE)
(ADJECTIVE TEN-INCH)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"ten-inch green cable""ten-inch cable""ten-inch cable"
"ten-inch cable""ten-inch cable""ten-inch cable"
0 0 0 0 0 0>)>
<OBJECT PINKCABLE
(IN GROOVE2)
(DESC "pink cable")
(SYNONYM CABLE)
(ADJECTIVE SIX-INCH)
(FLAGS TOUCHBIT TAKEBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
1 1 1 1 1 1
"pink six-inch cable""six-inch cable""six-inch cable"
"six-inch cable""six-inch cable""six-inch cable"
0 0 0 0 0 0>)>
<OBJECT WHITECABLE
(IN GROOVE1)
(DESC "white cable")
(SYNONYM CABLE)
(ADJECTIVE FIVE-I)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"white five-inch cable""five-inch cable""five-inch cable"
"five-inch cable""five-inch cable""five-inch cable"
0 0 0 0 0 0>)>
<OBJECT BLUECABLE
(IN GROOVE1)
(DESC "blue cable")
(SYNONYM CABLE)
(ADJECTIVE TWENTY)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"twenty-inch blue cable""twenty-inch cable""twenty-inch cable""twenty-inch cable"
"twenty-inch cable""twenty-inch cable"
0 0 0 0 0 0>)>
<OBJECT BLACKCABLE
(IN GROOVE1)
(DESC "black cable")
(SYNONYM CABLE)
(ADJECTIVE NINETEEN)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION KILL-CABLE-FCN)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"black nineteen-inch cable""nineteen-inch cable""nineteen-inch cable""nineteen-inch cable""nineteen-inch cable""nineteen-inch cable"
0 0 0 0 0 0>)>
<OBJECT ORANGECABLE
(IN GROOVE1)
(DESC "orange cable")
(SYNONYM CABLE)
(ADJECTIVE NINE-INCH)
(FLAGS TAKEBIT TOUCHBIT)
(ACTION ORANGECABLE-FCN)
(OBJDESCS <PLTABLE
1 1 1 1 1 1
"nine-inch orange cable""nine-inch cable""nine-inch cable"
"nine-inch cable""nine-inch cable""nine-inch cable"
0 0
"This cable is not transmitting energy properly." 0 0 0
"Data transmissions are highly irregular through this cable.">)>
<ROUTINE KILL-CABLE-FCN ()
<COND (<VERB? REPLACE TAKE>
<JIGS-UP "Oh oh. Maybe I shouldn't have done that . . ."
,WINNER>)>>
<ROUTINE REDCABLE-FCN ()
<COND (<VERB? TAKE REPLACE>
<FCLEAR ,REDCABLE ,NDESCBIT>
<RFALSE>)>>
<ROUTINE ORANGECABLE-FCN ()
<COND (<VERB? TAKE REPLACE>
<FCLEAR ,ORANGECABLE ,NDESCBIT>
<RFALSE>)>>
<OBJECT GROOVE1
(IN TUBE1)
(FLAGS SURFACEBIT NDESCBIT CONTBIT OPENBIT SEARCHBIT)
(CAPACITY 21)
(DESC "groove")
(CLC-TXT <PLTABLE "The groove contains four wires and has an exposed section which allows for easy replacement of cables." "Make sure you know which cables are live." "The grooves were placed in the channels for making easy replacing and diagnosing of cables.">)
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"groove""groove""groove""groove""groove""groove"
0 0 0 0 0 0>)
(ACTION GROOVE-FCN)
(CONTFCN GROOVE-CONT)
(SYNONYM GROOVE TRACK)>
<OBJECT GROOVE2
(IN TUBE2)
(FLAGS SURFACEBIT NDESCBIT CONTBIT OPENBIT)
(CAPACITY 21)
(DESC "groove")
(OBJDESCS <PLTABLE
0 1 1 1 1 1
"groove""groove""groove""groove""groove""groove"
0 0 0 0 0 0>)
(ACTION GROOVE-FCN)
(CONTFCN GROOVE-CONT)
(SYNONYM GROOVE TRACK)
(CLC-TXT <PLTABLE "The groove contains four wires and has an exposed section which allows for easy replacement of cables." "Make sure you know which cables are live." "The grooves were placed in the channels for making easy replacing and diagnosing of cables.">)>
<ROUTINE GROOVE-FCN ()
<COND (<VERB? LOOK EXAMINE>
<ROBOT-TELL "There are "<>>
<TELL N <CABLECOUNT ,PRSO> " " D ,CABLES " in the grooves. ">
<TELL <GET ,CABLE-TBL ,ROFF> CR>
<RTRUE>)>>
<GLOBAL CABLE-TBL
<PLTABLE
"The cables are actually exposed sections of larger cables. They each
terminate at a connector. The connector itself poses no problem and, from what
I can see, easy replacement should be possible."
"I can feel that the cables are actually snap-in modules which can easily be
replaced."
"Sensory mechanisms indicate that the cables are modular in construction and
can be snapped in and out for easy replacement."
"I can hear slight buzzing at a junction for each of the cables."
"Ah, what an age we live in when replacement parts are the way of things."
"CLC data indicates the cables are modular, exposed at this juncture for easy
replacement. CLC also warns that contact with inappropriate cable sections can
be fatal.">>
<ROUTINE GROOVE-CONT ()
<COND (<VERB? REPLACE TAKE>
<COND (<OR <EQUAL? ,PRSO ,PINKCABLE ,YELLOWCABLE ,GREENCABLE>
<EQUAL? ,PRSO ,WHITECABLE ,BLACKCABLE ,BLUECABLE>>
<TELL "Sizzzzzzzzzle..." CR>
<JIGS-UP
"Oh oh. Maybe I shouldn't have done that . . ."
,WINNER>)
;(<AND <VERB? REPLACE>
<OR <EQUAL? ,PRSI ,REDWIRE ,ORANGE-WIRE ,REDCABLE>
<EQUAL? ,PRSI ,ORANGECABLE>>>
<COND (<EQUAL? ,WINNER-HERE ,TUBE2>
<SETG REDSET ,PRSI>)
(T
<SETG ORANGESET ,PRSI>)>
<RFALSE>)
;(<AND <VERB? TAKE>
<OR <EQUAL? ,PRSO ,REDWIRE ,ORANGE-WIRE ,REDCABLE>
<EQUAL? ,PRSO ,ORANGECABLE>>>
<COND (<EQUAL? ,WINNER-HERE ,TUBE2>
<SETG REDSET ,PRSI>)
(T
<SETG ORANGESET ,PRSI>)>
<RFALSE>)
;(T
<ROBOT-YUKS>)>)>>
<OBJECT PEOPLE-CABINET
(IN TOOL-AREA)
(FLAGS CONTBIT TOUCHBIT)
(DESC "storage cabinet")
(SYNONYM CABINE CONTAI OBJECT BROTHE)
(ADJECTIVE BIG SQUARE C9 SOUNDL STRANG)
(OBJDESCS <PLTABLE 0 1 1 0 1 1