the-infocom-files/trinity

MULTIDOOR? should probably prevent you from entering both doors at once

Opened this issue · 0 comments

On the Front Deck, there are two doors. Their action routines use the MULTIDOOR? routine to allow some commands to work on both doors at once. For instance:

>OPEN DOORS
The right door: You open the right door.

The left door: You open the left door.

>EXAMINE DOORS
The right door: The words PLEASE WIPE FEET are scrawled across the top of the
open right door.

The left door: It looks as if the left door is open.

The routine does block certain commands:

<ROUTINE MULTIDOOR? ("AUX" X)
	 <COND (<NOT <NOUN-USED? ,W?DOORS ,W?DOORWAYS>>
		<RFALSE>)
	       (<INTBL? ,PRSA ,PUTVERBS ,NUMPUTS>
		<ONE-AT-A-TIME "door">
		<RFATAL>)>

But I think it would also make sense to check what <ENTERING?> returns, and block those commands too, because "ENTER DOORS" make little sense to me:

The right door: Assembly Room

Whoever used this room was paranoid about dirt. The floor is swept spotless, and
the edges of both windows are carefully sealed with tape. An open front door
leads east, and there's an open closet door in the north wall. Other exits lead
south and west.

A workbench covered with loose sheets of brown paper runs along the north wall.
You see bits of wire and other debris scattered across the paper.

The left door: There's no exit that way.

The roadrunner prances into view.