Final Revision
This commit is contained in:
147
global.zap
Normal file
147
global.zap
Normal file
@@ -0,0 +1,147 @@
|
||||
|
||||
|
||||
.FUNCT RT-GLOBAL-HERE:ANY:0:1,CONTEXT,P
|
||||
ZERO? HERE /FALSE
|
||||
GETP HERE,P?ACTION >P
|
||||
ZERO? P /FALSE
|
||||
CALL P,CONTEXT
|
||||
RSTACK
|
||||
|
||||
|
||||
.FUNCT RT-YOU:ANY:0:1,CONTEXT
|
||||
ZERO? CONTEXT \FALSE
|
||||
ZERO? NOW-PRSI /?CCL5
|
||||
CALL PERFORM,PRSA,PRSO,WINNER
|
||||
RSTACK
|
||||
?CCL5: CALL PERFORM,PRSA,WINNER,PRSI
|
||||
RSTACK
|
||||
|
||||
|
||||
.FUNCT RT-TH-HUMAN-BODY:ANY:0:1,CONTEXT,TMP,PERSON
|
||||
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
||||
PRINTI "their body"
|
||||
RTRUE
|
||||
?CCL3: ZERO? CONTEXT \FALSE
|
||||
CALL1 GET-NP
|
||||
GET STACK,1 >TMP
|
||||
ZERO? TMP /?CND6
|
||||
GET TMP,2 >PERSON
|
||||
?CND6: ZERO? PERSON /?CCL10
|
||||
CALL2 VISIBLE?,PERSON
|
||||
ZERO? STACK \?CCL10
|
||||
ICALL1 NP-CANT-SEE
|
||||
RETURN 2
|
||||
?CCL10: PRINT K-NO-REFER-MSG
|
||||
PRINTI "any"
|
||||
PRINTI " part of"
|
||||
ZERO? PERSON /?CCL16
|
||||
ICALL RT-PRINT-OBJ,PERSON,K-ART-THE
|
||||
PRINTC 39
|
||||
FSET? PERSON,FL-PLURAL \?CCL18
|
||||
FSET? PERSON,FL-COLLECTIVE \?CND14
|
||||
?CCL18: PRINTC 115
|
||||
JUMP ?CND14
|
||||
?CCL16: PRINTI " their"
|
||||
?CND14: PRINTI " body.]"
|
||||
CRLF
|
||||
RETURN 2
|
||||
|
||||
|
||||
.FUNCT RT-GN-BODY:ANY:2:2,TBL,FINDER,PART,PTR,N
|
||||
ADD TBL,8 >PTR
|
||||
GET TBL,1 >N
|
||||
?PRG1: DLESS? 'N,0 /FALSE
|
||||
GET PTR,0 >PART
|
||||
ZERO? PART /?CND3
|
||||
FSET? PART,FL-YOUR /?REP2
|
||||
EQUAL? PART,TH-PLAYER-BODY /?REP2
|
||||
EQUAL? PART,TH-HUMAN-BODY /?CND3
|
||||
RETURN PART
|
||||
?CND3: ADD PTR,2 >PTR
|
||||
JUMP ?PRG1
|
||||
?REP2: RETURN PART
|
||||
|
||||
|
||||
.FUNCT RT-TH-PLAYER-BODY:ANY:0:1,CONTEXT
|
||||
ZERO? CONTEXT \FALSE
|
||||
PRINT K-NO-REFER-MSG
|
||||
PRINTI "that part of your body.]"
|
||||
CRLF
|
||||
RETURN 2
|
||||
|
||||
|
||||
.FUNCT RT-TH-GROUND:ANY:0:3,CONTEXT,ART,CAP?
|
||||
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
||||
ZERO? ART /?CND4
|
||||
ICALL RT-PRINT-ARTICLE,TH-GROUND,ART,CAP?
|
||||
?CND4: EQUAL? ART,FALSE-VALUE,K-ART-THE,K-ART-A /?CCL8
|
||||
EQUAL? ART,K-ART-ANY \FALSE
|
||||
?CCL8: ZERO? ART /?CND11
|
||||
PRINTC 32
|
||||
?CND11: FSET? HERE,FL-INDOORS \?CCL15
|
||||
PRINTI "floor"
|
||||
RTRUE
|
||||
?CCL15: PRINTI "ground"
|
||||
RTRUE
|
||||
?CCL3: ZERO? CONTEXT \FALSE
|
||||
EQUAL? PRSA,V?LOOK-ON,V?EXAMINE \FALSE
|
||||
CALL2 RT-SEE-ANYTHING-IN?,HERE
|
||||
ZERO? STACK /FALSE
|
||||
PRINTI "You see"
|
||||
ICALL2 RT-PRINT-CONTENTS,HERE
|
||||
PRINTI " on"
|
||||
ICALL RT-PRINT-OBJ,TH-GROUND,K-ART-THE
|
||||
PRINTC 46
|
||||
CRLF
|
||||
RTRUE
|
||||
|
||||
|
||||
.FUNCT RT-TH-SKY:ANY:0:3,CONTEXT,ART,CAP?,RM
|
||||
EQUAL? CONTEXT,M-OBJDESC \?CCL3
|
||||
ZERO? ART /?CND4
|
||||
ICALL RT-PRINT-ARTICLE,TH-SKY,ART,CAP?
|
||||
?CND4: EQUAL? ART,FALSE-VALUE,K-ART-THE,K-ART-A /?CCL8
|
||||
EQUAL? ART,K-ART-ANY \FALSE
|
||||
?CCL8: ZERO? ART /?CND11
|
||||
PRINTC 32
|
||||
?CND11: FSET? HERE,FL-INDOORS \?CCL15
|
||||
PRINTI "ceiling"
|
||||
RTRUE
|
||||
?CCL15: PRINTI "sky"
|
||||
RTRUE
|
||||
?CCL3: ZERO? CONTEXT \FALSE
|
||||
ZERO? NOW-PRSI /?CCL22
|
||||
PUSH 2
|
||||
JUMP ?CND20
|
||||
?CCL22: PUSH 1
|
||||
?CND20: CALL2 EVERYWHERE-VERB?,STACK
|
||||
ZERO? STACK \FALSE
|
||||
FSET? HERE,FL-INDOORS \?CCL25
|
||||
CALL NOUN-USED?,TH-SKY,W?SKY
|
||||
ZERO? STACK /FALSE
|
||||
CALL1 NP-CANT-SEE
|
||||
RSTACK
|
||||
?CCL25: CALL NOUN-USED?,TH-SKY,W?CEILING
|
||||
ZERO? STACK /FALSE
|
||||
CALL1 NP-CANT-SEE
|
||||
RSTACK
|
||||
|
||||
|
||||
.FUNCT RT-LG-DEEPCORE:ANY:0:1,CONTEXT
|
||||
ZERO? CONTEXT \FALSE
|
||||
EQUAL? PRSA,V?EXAMINE \FALSE
|
||||
PRINTR "It looks like Deepcore."
|
||||
|
||||
|
||||
.FUNCT RT-LG-TROUGH:ANY:0:1,CONTEXT
|
||||
ZERO? CONTEXT \FALSE
|
||||
EQUAL? PRSA,V?EXAMINE \FALSE
|
||||
PRINTR "It looks like the Cayman trough."
|
||||
|
||||
|
||||
.FUNCT RT-LG-MONTANA:ANY:0:1,CONTEXT
|
||||
ZERO? CONTEXT \FALSE
|
||||
EQUAL? PRSA,V?EXAMINE \FALSE
|
||||
PRINTR "It looks like the Montana."
|
||||
|
||||
.ENDI
|
||||
Reference in New Issue
Block a user