1
0
Fork 0
mirror of https://github.com/ganelson/inform.git synced 2024-07-07 17:44:22 +03:00
inform7/resources/Documentation/Examples/RulesOfAttraction.txt
2023-07-24 11:56:58 +01:00

33 lines
1.9 KiB
Plaintext

Example: * Rules of Attraction
Location: Printing room description details of something
RecipeLocation: Electricity and Magnetism
Index: Magnet which picks up nearby metal objects
Description: 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.
For: Z-Machine
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".