location DrawingRoom name 'Drawing Room' description "$tThis room is furnished with sofas and chairs that must have been fine antiques once, but now the wood is dry and cracked and the upholstery threadbare." if piano at DrawingRoom then "The one exception is a baby grand piano in the centre of the room, which seems to be in reasonably good condition." end if. if steel_key in corner_table then "$iA small table in one corner seems to have something on it." end if. "$iThere are two doors, leading north to the dining room, and east to the hallway. $p" --exit north to DiningRoom. --exit east to Hallway. end location. object DrawingRoom_north_door name north door name north at DrawingRoom description verb examine does only describe interior_door. end verb. verb 'use' does only locate hero at DiningRoom. end verb. end object. object DrawingRoom_east_door name east door name east at DrawingRoom description verb examine does only describe interior_door. end verb. verb 'use' does only locate hero at Hallway. end verb. end object. object corner_table name small corner table at DrawingRoom container header "Sitting on the corner table is" else "There is nothing on the corner table." description verb examine does only list corner_table. end verb. end object. object piano name baby grand piano at DrawingRoom is not seen. is possessed. description make piano seen. if piano not at DrawingRoom then "$pThere is a piano here." if location is seen_without_piano then "Strange, it didn't seem to be here the last time you were in the room." make location not seen_without_piano. else "It looks strangely similar to the one you saw in the drawing room." end if. end if. verb examine does only "It still has most of its varnish and is only slightly scratched. The keyboard cover lies invitingly open, displaying a shiny set of black and white keys." end verb. verb 'use' does only if piano is possessed then "As you reach for the keys, the cover suddenly snaps shut! You pull your hand away just in time to avoid getting your fingers bitten off." else "The piano seems quite inert now, and you're able to pick out a rough tune on the keyboard." end if. end verb. end object. location attributes not seen_without_piano. when hero here and piano not here => make location seen_without_piano. when piano is seen and piano at DrawingRoom and (hero at Hallway or hero at HallwayNorth) => locate piano at DiningRoom. schedule piano_movement_sound at hero after 0. event piano_movement if hero nearby then schedule piano_movement_sound at hero after 0. end if. end event. event piano_movement_sound "$pYou hear what sounds like the squeaking of small wheels somewhere nearby." end event. event exorcise_piano "You thrust the crucifix out in front of you with both hands. The piano edges away, letting out frightened little arpeggios that rise higher and louder and culminate in an agonised, discordant crescendo. Then it falls silent." make piano not possessed. end event.