Chapter 17: Activities
17.22. Writing a paragraph about

1. When it happens. Just before writing a paragraph about some item in a room description.

2. The default behaviour. Is to do nothing. However, if a rule is supplied which prints something up, then this replaces the paragraph which would otherwise have been printed. Moreover, any items whose names are said in the course of this rule - for instance, by being listed - are then excluded from the remainder of the room description, because they are considered as having been described sufficiently already.

Warning: because we often want a "for" rule for this activity to make some calculation and then possibly choose to do nothing (see the example "Otranto"), Inform suppresses the usual paragraph not when a "for" rule took effect but when it detected a paragraph having been printed. This can get confused if a text substitution affecting paragraph breaks, say "[line break]", is within the final "say" of a "for writing a paragraph about" rule.

3. Examples. (a) This is a neat way to wrap several things together into the same paragraph:

Rule for writing a paragraph about Mr Wickham:
    say "Mr Wickham looks speculatively at [list of women in the location]."

because now "Mr Wickham looks speculatively at Velma and Daphne" will now prevent the appearance of the subsequent text "You can also see Velma and Daphne."

Inform keeps track of which objects have already been named with an either/or property called "mentioned", which it assigns whenever the name of an object has been automatically printed. So in this case, Velma and Daphne are now mentioned. Note "automatically printed", though: if the text printed had just been "Mr Wickham looks speculatively at Velma and Daphne", rather than the text-substitution list used above, then Inform would not know that Velma and Daphne have been described.

If we ever need to override this - say, we want to list all the women but make sure that Velma gets another paragraph anyway - we could change Velma to unmentioned again after the listing.


338
* Example  Reflections
Emphasizing the reflective quality of shiny objects whenever they are described in the presence of the torch.

RB
339
** Example  Emma
Social dynamics in which groups of people form and circulate during a party.

RB
340
**** Example  Air Conditioning is Standard
Uses "writing a paragraph about" to make person and object descriptions that vary considerably depending on what else is going on in the room, including some randomized NPC interactions with objects or with each other.

RB

"Air Conditioning is Standard"

Section 1 - The Garage

A person has some text called current occupation. The current occupation of a person is usually "None".

Mood is a kind of value. The moods are bemused, bored, attentive, rapt, and blushing. A person has a mood. A person is usually attentive.

Instead of examining a person:
    now every thing is unmentioned;
    carry out the writing a paragraph about activity with the noun.

Rule for writing a paragraph about a person (called X):
    let the subsequent mention be "Name";
    if the current occupation of X is not "None":
        say "[current occupation of X]. ";
        let the subsequent mention be "He";
        if X is female, let the subsequent mention be "She";
    if X wears something unmentioned:
        if the subsequent mention is "Name", say "[The X] ";
        otherwise say "[subsequent mention] ";
        say "is wearing [a list of unmentioned things worn by X]";
        if X carries something unmentioned, say " and carrying [a list of unmentioned things carried by X]";
        say ".";
    otherwise:
        if X carries something unmentioned:
            if the subsequent mention is "Name", say "[The X] ";
            otherwise say "[subsequent mention] ";
            say " is carrying [a list of unmentioned things carried by X]."

The Garage is a room. "Above the street door is a spectacular art nouveau fanlight, wherein a stained-glass Spirit of Progress bestows the gift of Transportation on mankind.

The sun, gleaming through the hair of Progress, throws amber curls on the macadam floor."

The fanlight is scenery in the Garage. The description is "A semi-circle of stained glass as wide as the garage door, designed by Louis Comfort Tiffany himself. No expense has been spared."

The gift of Transportation is part of the fanlight. The description is "The gift of Transportation is envisioned as a cornucopia disgorging a steam locomotive. And that blue bit of glass might be the Montgolfier balloon."

The Spirit of Progress is part of the fanlight. The description is "It is part of her character to have bare shoulders like that."

The machinist is a bored man. He is in the Garage. He is wearing a grimy pair of overalls. He carries a wrench and a screwdriver. The current occupation of the machinist is "[The machinist] is making some adjustments to [the random thing which is part of the Victorian Car] with his [random thing carried by the machinist]"

The Victorian Car is a device in the Garage. A cast-iron steering wheel, a leather bucket seat, a horn, and a combustion engine are part of the Victorian Car. The seat is an enterable supporter.

Rule for writing a paragraph about a device (called X):
    let the subsequent mention be "Name";
    if the X is unmentioned:
        say "[The X] is here. ";
        let the subsequent mention be "It";
    if something is part of X:
        if the subsequent mention is "Name", say "[The X] ";
        otherwise say "[subsequent mention] ";
        say "[if a mentioned thing is part of X]also [end if]features[if a mentioned thing is part of X], in addition to [the list of mentioned things which are part of X],[end if] [a list of unmentioned things which are part of X]";
        say ".".

Rule for printing the name of the steering wheel while writing a paragraph about a person:
    say "steering wheel".

A supporter has some text called position. The position of a supporter is usually "None".

The Office is west of the Garage. The Office contains a desk. The desk has the position "A [desk] with several dozen drawers stands in the center of the room". On the desk are some papers.

After printing the name of a supporter (called X) which supports an unmentioned thing:
    now X is unmentioned.

Rule for writing a paragraph about a supporter (called X):
    let the subsequent mention be "Name";
    if the position of X is not "None":
        say "[position of X]. ";
        let the subsequent mention be "It";
    if a mentioned thing is on X:
        say "Besides [the list of mentioned things which are on X], ";
        let the subsequent mention be "it";
    if the subsequent mention is "Name", say "[The X] ";
    otherwise say "[subsequent mention] ";
    say "holds [a list of unmentioned things which are on X]."

Section 2 - Schedule

The time of day is 4:38 PM.

At 4:42 PM:
    move the machinist to the Office;
    say "The machinist wanders into the Office to get some paperwork.";
    now every thing carried by the machinist is on the desk;
    now the current occupation of the machinist is "[The machinist] rifles through [the papers] on [the desk]".

At 4:43 PM:
    move the young lady to the Garage;
    if the young lady can be seen by the player,
        say "An attractive young lady walks in from the street, and glances around as though she has never been here before."

At 4:45 PM:
    if the young lady can be seen by the player,
        say "With a not-quite-convincing air of innocence, [the young lady] happens to lean upon [the horn], which bleats loudly.";
    otherwise say "There is a honk from the Garage[if the machinist can be seen by the player]. The machinist looks up with a frown[end if].";
    now the horn is mentioned.

At 4:46 PM:
    move the machinist to the Garage;
    say "The machinist strolls from the Office into the Garage to find out what is going on.";
    now the current occupation of the machinist is "[The machinist] is chatting with [the young lady]. He seems to be demonstrating the various features of [the car], including [the random thing which is part of the car]";
    now the current occupation of the young lady is "[The young lady] is asking [the machinist] a number of questions about [the car]".

At 4:49 PM:
    if the young lady can be seen by the player, say "[The machinist] gives [the young lady] his arm to climb into [the seat].";
    move the young lady to the seat;
    now the young lady is rapt;
    now the current occupation of the young lady is "[The young lady] is turning [the steering wheel] from side to side";
    now the current occupation of the machinist is "[The machinist] is leaning on the door of [the car], pointing out features to [the young lady]";
    move the besotted expression to the machinist;
    now the machinist is wearing the besotted expression.

At 4:52 PM:
    now the sober grey gown is unbuttoned at the neck;
    if the young lady can be seen by the player, say "[The young lady] murmurs something about the wilting heat, and undoes a button or two of her gown. The machinist's expression is comical, or would be, if you weren't annoyed."

Every turn when the player is in the Garage and young lady is on the seat:
    say "You are beginning to feel a little unnecessary in this scene."

Every turn when the player is in the Office and the young lady is on the seat:
    say "There's no sound at all from the other room, not even conversation."

Before going to the Garage when the young lady is on the seat:
    now the sober grey gown is tellingly dishevelled;
    move the young lady to the Garage;
    now the young lady is blushing;
    say "There is a flurry of movement as you enter the room.";
    now the current occupation of the young lady is "[The young lady] stands near the door, tapping her foot nervously";
    remove the besotted expression from play;
    now the current occupation of the machinist is "[The machinist] is leaning against [the car], looking smug".

Section 3 - Initially Out of Play

The besotted expression is a wearable thing. The description is "It looks foolish, doesn't it?"

The young lady is a bemused woman. She is wearing a sober grey gown and a pair of black boots. The current occupation of the young lady is "[The young lady] is running a gloved finger along the chassis of [the victorian car]"

Before printing the name of the young lady while writing a paragraph about a person:
    say "[mood of the young lady] "

The description of the grey gown is "Something about the perfect row of tiny buttons has the wrong effect -- at any rate, it is natural to wonder how long they take to undo." The gown can be buttoned almost to the chin, unbuttoned at the neck, or tellingly dishevelled.

Rule for printing the name of the gown when writing a paragraph about a person:
    say "sober grey gown ([sober grey gown condition])"

Test me with "z / look / look / z / look / west / east / z / look / z / look / z / look / west / east".


PreviousContentsNext