this code:
(intro)
"Test"
(try [look])
#player
(current player *)
(* is #in #room_b)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#room_b
(name *) room b
(proper *)
(room *)
(look *) This is Room B, there is a door to the north and Room A is to the south.
(from * go #south to #room_a)
(from * go #north through #door to #room_c)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#door
(name *) wooden test door
(door *)
(openable *)
(* is closed)
(descr *) It's an ordinary wooden door.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#room_c
(name *) room c
(proper *)
(room *)
(look *) This is Room C, there is a door to the south.
(from * go #south through #door to #room_b)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%#room_a
%%(name *) room a
%%(proper *)
%%(room *)
%%(look *) This is Room A, Room B is to the north
%%(from * go #north to #room_b)
will not work. the parser knows there is a door to the north (first trying to open the door to the north) but then it reports that the door isn’t there.
if you comment OUT the link from room b to room a it works fine. this seems to be confusing the compiler somehow.
is this a bug or am i misunderstanding something? manually adding an (attracts #door) for each room fixes the problem but aren’t doors supposed to be automatically ‘attracted’ to the rooms on each side of them? here, that seems to be working incorrectly.