Inform 7 Home Page / Documentation
§18.16. Printing room description details of something
1. When it happens. When an item is listed in the miscellaneous collection of items present in a room (the ones which do not deserve their own paragraphs): this is normally the last paragraph of a room description.
2. The default behaviour. A bracketed piece of extra information is added for certain items such as containers:
You can also see Po and a cage (empty) here.
The " (empty)" (note initial space) was added by this activity. (Note that this activity is not responsible for describing further items visible because of the item in question: that is, it does not print the text such as "(in which is a notepad)" which would appear if there were contents. If we want to remove such text, we should use "omit contents in listing": see the activity "for printing the name of something".)
3. Examples. (a) To get rid of such addenda entirely, try:
Rule for printing room description details: stop.
(b) To add a new form of addendum:
Rule for printing room description details of a person:
say " (at last, someone to talk to)" instead.
If both examples (a) and (b) are in place at once, we might now read:
You can also see Po (at last, someone to talk to) and a cage here.
|
ExampleRules of Attraction
A magnet which picks up nearby metal objects, and describes itself appropriately in room descriptions and inventory listings, but otherwise goes by its ordinary name.
|
|
Often we have some salient features of an object that we want to make sure the player notices whenever looking at the item in a room or in inventory. At other times, we may prefer to allow the name of the item to be printed bare. So for instance:
"Rules of Attraction"
A metal form is a kind of thing. A magnet is a kind of metal form.
Every turn:
repeat with item running through nonmagnetic metal forms which are not part of something:
if item is in a container which contains a magnet (called attractor):
say "[The item] sticks to [the attractor].";
now the item is part of the attractor.
The horseshoe magnet is a magnet carried by the player. The nail is a metal form carried by the player. The Barn is a room. In the Barn is a bucket. In the bucket is a metal form called the iron hook.
Definition: a thing is nonmagnetic if it is not a magnet.
Rule for printing room description details of a magnet (called attractor): if something is part of the attractor, say " (stuck to which [is-are the list of things which are part of the attractor])".
After printing the name of a magnet (called attractor) while taking inventory:
if something is part of the attractor, say " (stuck to which [is-are the list of things which are part of the attractor])".
Before taking a touchable thing which is part of a magnet (called attractor):
move the noun to the holder of the attractor.
Test me with "i / put horseshoe in bucket / look / get horseshoe / i / drop horseshoe / i / look / get all / put all in bucket / i / x magnet / get nail / i".