| 16.15. Understanding things by their properties |
Items are ordinarily understood only by their original given names. For instance, if we have:
In the Herb Garden is a china pot.
then the player could refer to this as "pot", "china pot" or "china". We can embellish this by adding extra forms:
Understand "chinese pot" or "chinese vase" as the china pot.
But suppose the pot changes its nature in the course of play? If we have:
The china pot can be unbroken or broken. The china pot is unbroken.
After dropping the china pot:
say "Crack!";
now the china pot is broken;
now the printed name of the pot is "broken pot".
So now the player would reasonably expect to call it "broken pot", a wording which would have been rejected before. We can achieve this by writing:
Understand the unbroken property as describing the pot.
which allows "unbroken" or "broken" to describe the pot, depending on its state. And, since the player might well use a different adjective but with the same idea in mind, we can even add:
Understand "shattered" or "cracked" or "smashed" as broken. Understand "pristine" as unbroken.
This is something of a toy example, but the feature looks rather more useful when there are more pots than just one:
"Terracotta"
A flowerpot is a kind of thing. A flowerpot can be unbroken or broken. Understand the broken property as describing a flowerpot.
After dropping an unbroken flowerpot:
say "Crack!";
now the noun is broken;
now the printed name of the noun is "broken flowerpot";
now the printed plural name of the noun is "broken flowerpots".
The Herb Garden is a room. In the Herb Garden are ten unbroken flowerpots.
We then have the dialogue:
Herb Garden
You can see ten flowerpots here.
>get two flowerpots
flowerpot: Taken.
flowerpot: Taken.
>drop all
flowerpot: Crack!
flowerpot: Crack!
>look
Herb Garden
You can see two broken flowerpots and eight flowerpots here.
>get an unbroken flowerpot
Taken.
and so on and so forth.
There are in fact two slightly different forms of this kind of sentence:
Understand the broken property as describing a flowerpot.
Understand the broken property as referring to a flowerpot.
The only difference is that in the "describing" case, the property's name alone can mean the thing in question - so "take unbroken" will work; whereas, in the "referring to", the property's name can only be used as an adjective preceding the name of thing itself - so "take unbroken flowerpot" will work but "take unbroken" will not.
| Example Hymenaeus Understanding "flaming torch" and "extinguished torch" to refer to torches when lit and unlit. | |
| Example Aspect Understanding aspect ratios (a unit) in the names of televisions. | |
|  Example Peers The peers of the English realm come in six flavours - Baron, Viscount, Earl, Marquess, Duke and Prince - and must always be addressed properly. While a peerage is for life, it may at the royal pleasure be promoted. | |
|  Example Terracottissima The flowerpots once again, but this time arranged so that after the first breakage all undamaged pots are said to be "unbroken", to distinguish them from the others. | |
Our previous implementation of televisions ("Channel 1") doesn't allow the player to type things like
TUNE FIFTIES TELEVISION TO CHANNEL 4
nor does it deal with player input like
TUNE TO CHANNEL 4 ON FIFTIES TELEVISION
or
TUNE TO CHANNEL 4
where no television is specified. When we are designing commands which involve two elements (here, a television and a channel number), it's usually a good idea to allow the player to specify those elements in either order, as we saw demonstrated briefly in "New commands for old grammar".
We might, therefore, want to add a few refinements: first by defining a "[channel]" token that will accept input of the forms "[number]" and "channel [number]", and second by creating some additional "Understand" lines that will accept variant versions of the player's input.
"Channel 2"
Section 1 - Televisions in General
A television is a kind of device.
A television has a number called the channel. Understand the channel property as referring to a television. Understand "channel" as a television.
Changing the channel of it to is an action applying to one thing and one number.
Understand "tune [television] to [channel]" or "change channel of [television] to [channel]" as changing the channel of it to.
Understand "tune [something] to [channel]" or "change channel of [something] to [channel]" as changing the channel of it to.
Understand "tune to [channel] on [television]" or "change to [channel] on [television]" as changing the channel of it to (with nouns reversed).
Understand "tune to [channel] on [something]" or "change to [channel] on [something]" as changing the channel of it to (with nouns reversed).
Understand "[number]" or "channel [number]" as "[channel]".
Check changing the channel of something to:
if the noun is not a television, say "[The noun] cannot be tuned to a channel." instead.
Carry out changing the channel of something to:
now the channel of the noun is the number understood.
Report changing the channel of something to:
say "You tune [the noun] to channel [number understood]."
Instead of examining a television:
if the noun is switched off, say "[The noun] is currently turned off." instead;
let the chosen channel be the channel of the noun;
if the chosen channel is a current channel listed in the Table of Television Channels:
choose row with current channel of the chosen channel in the Table of Television Channels;
say "[output entry][paragraph break]";
otherwise:
say "Snow fills the screen of [the noun]."
Table of Television Channels
current channel | output |
0 | "The screen of [the noun] is completely black." |
Section 2 - The Scenario
The Office is a room.
The widescreen TV is a television in the Office. The fifties TV is a television in the Office.
And we add the scenario-specific content to our Table of Television Channels; in the case of channel 13, we provide for a changing sequence of events using text variations.
Table of Television Channels (continued)
current channel | output |
4 | "A gloomy female news anchor describes the latest car bomb in Baghdad: 104 dead today, and no sign of change." |
5 | "A couple of contestants in spangled scarlet outfits are performing an energetic paso doble." |
13 | "[one of]On-screen, Ichiro is up to bat with one man on second and no outs.[or]Ichiro has singled to first and the other man is on third.[or]The next batter is in the middle of flying out.[or]Everything looks rosy until the men in black pull off a double-play and retire the side.[or]The channel has cut to a commercial.[stopping]" |
Test me with "test one / test two".
Test one with "change channel of fifties tv to 4 / x channel 4 / switch on fifties / x channel 4 / switch on widescreen / tune fifties tv to channel 5 / x channel 5 / x fifties tv / x channel 4".
Test two with "tune to channel 13 / widescreen / tune channel 13 to channel 5 / tune channel 5 to channel 3 / widescreen / x channel 3".
|