If one declares an enterable object to be a container then when the player
is in it the message "(in the object)" is given beside the location's short
name. If it's a supporter then you get "(on the object)"... but how can you
make Inform give you an "(at the object)" message.
If you are wondering what on earth one might want "at the object" for
consider the example of being "at the table" while eating dinner.
Technically it's basically a container object like a chair. You want to be
able to leave the table, exit the table, get up, stand up, etc etc...
however the description of being "in" the table is no good <G>.
I thought, at first, the way to do this would be to manually create a
Short_Name routine the room which checks if the player is "in" the object,
and then print out the appropriate short name message with parenthesis...
but this is not the solution. Inform still tacks on it's own parenthesis at
the end so I get something like:
Dining Room (at the table) (in the table)
Also it would be good to avoid the "Dining Room Table (which is empty)"
message that might occur (not sure).
The only thing I can find (so far) in the designer manual that seems
remotely relavant to this problem is the "invent" routine showing how to
change the short_name of a match to "lit match" or "unlit" match depending
on it's state. This is not an inventory however.... is it?
Maybe it is in some way? Maybe I'll give that a try just in case... gee,
nice talking to you people... (-:
--- .....with love and squalor. <as544@torfree.net>