the-infocom-files/trinity

"PUT object ON CRYPT" inconsistency

Opened this issue · 0 comments

CRYPT-F is written to treat the crypt as the lid when it's closed, but it doesn't always work:

>PUT COIN IN CRYPT
You put the small coin on the lid.

>TAKE COIN FROM CRYPT
You take the small coin off the lid.

>PUT COIN ON CRYPT
You put the small coin on the crypt.

>TAKE COIN FROM CRYPT
The small coin isn't on the lid.

That's seems to be because CRYPT-F handles the PUT action, but not the PUT-ON action:

	       (<THIS-PRSI?>
		<COND (<AND <VERB? PUT>
		     	    <NOT <IS? ,PRSI ,OPENED>>>
		       <PERFORM ,PRSA ,PRSO ,LID>
		       <RTRUE>)
	       	      (<AND <VERB? TAKE>
		     	    <NOT <IS? ,PRSI ,OPENED>>>
		       <PERFORM ,V?TAKE ,PRSO ,LID>
		       <RTRUE>)>
		<RFALSE>)

And it should probably handle EMPTY-INTO as well?